summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper Ras <jras@hostnet.nl>2025-04-15 19:44:48 +0200
committerJasper Ras <jras@hostnet.nl>2025-04-15 19:44:48 +0200
commitc8c774ad7c0d98def2e83647d4f635ee275b66de (patch)
tree99e16d1cb376d00bcf449f140fb8845463feee7c
parenteae6b57f17f5065a2bd3f130668043693f579cb4 (diff)
vault backup: 2025-04-15 19:44:48
-rw-r--r--.obsidian/workspace.json65
-rw-r--r--Examples of proper JQ usage.md11
-rw-r--r--How to properly do options in a bash script with getopt!.md31
-rw-r--r--Using Libvirt to manage QEMU image bitmaps.md10
-rw-r--r--We don't support filesystem discard syscalls on our openstack platform.md7
-rw-r--r--daily/14-Apr-2025.md22
-rw-r--r--daily/15-Apr-2025.md28
7 files changed, 163 insertions, 11 deletions
diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json
index 9818d14..d57c196 100644
--- a/.obsidian/workspace.json
+++ b/.obsidian/workspace.json
@@ -36,9 +36,54 @@
"icon": "lucide-file",
"title": "Device mapper"
}
+ },
+ {
+ "id": "30f6cf07a77bd478",
+ "type": "leaf",
+ "state": {
+ "type": "markdown",
+ "state": {
+ "file": "Examples of proper JQ usage.md",
+ "mode": "source",
+ "backlinks": true,
+ "source": false
+ },
+ "icon": "lucide-file",
+ "title": "Examples of proper JQ usage"
+ }
+ },
+ {
+ "id": "c550cd183351059f",
+ "type": "leaf",
+ "state": {
+ "type": "markdown",
+ "state": {
+ "file": "Using Libvirt to manage QEMU image bitmaps.md",
+ "mode": "source",
+ "backlinks": true,
+ "source": false
+ },
+ "icon": "lucide-file",
+ "title": "Using Libvirt to manage QEMU image bitmaps"
+ }
+ },
+ {
+ "id": "5b6958c83833df4a",
+ "type": "leaf",
+ "state": {
+ "type": "markdown",
+ "state": {
+ "file": "daily/15-Apr-2025.md",
+ "mode": "source",
+ "backlinks": true,
+ "source": false
+ },
+ "icon": "lucide-file",
+ "title": "15-Apr-2025"
+ }
}
],
- "currentTab": 1
+ "currentTab": 4
}
],
"direction": "vertical"
@@ -69,7 +114,7 @@
"state": {
"type": "search",
"state": {
- "query": "rbd",
+ "query": "qemu bitm",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
@@ -189,10 +234,16 @@
"obsidian-excalidraw-plugin:New drawing": false
}
},
- "active": "a06a83491e7620e5",
+ "active": "5b6958c83833df4a",
"lastOpenFiles": [
- "daily/11-Apr-2025.md",
+ "How to properly do options in a bash script with getopt!.md",
+ "daily/15-Apr-2025.md",
+ "Using Libvirt to manage QEMU image bitmaps.md",
+ "daily/14-Apr-2025.md",
+ "We don't support filesystem discard syscalls on our openstack platform.md",
+ "Examples of proper JQ usage.md",
"Device mapper.md",
+ "daily/11-Apr-2025.md",
"daily/10-Apr-2025.md",
"List of tags I use in this Vault and their purpose.md",
"Managing Ceph on Devstack & OpenStack.md",
@@ -212,12 +263,6 @@
"Installing Ceph on devstack.md",
"Overview of Ceph.md",
"Gobs Ceph Client Key Access.md",
- "Detroit-style TDD.md",
- "Blank Page Syndrom is when you start with infinite choice and cannot make a choice.md",
- "London-style TDD.md",
- "Discovery Testing.md",
- "YAGNI.md",
- "Network outage on single hypervisor causes Freenet to shutdown EVERYTHING.md",
"ESP",
"Excalidraw"
]
diff --git a/Examples of proper JQ usage.md b/Examples of proper JQ usage.md
new file mode 100644
index 0000000..b63ee4e
--- /dev/null
+++ b/Examples of proper JQ usage.md
@@ -0,0 +1,11 @@
+---
+tags:
+ - linux
+ - jq
+ - howto
+---
+Double escapes are important!
+
+```
+jq -r '.fixed_ips[] | select(.ip_address | test("\\.")) | .ip_address'
+``` \ No newline at end of file
diff --git a/How to properly do options in a bash script with getopt!.md b/How to properly do options in a bash script with getopt!.md
new file mode 100644
index 0000000..7d417c5
--- /dev/null
+++ b/How to properly do options in a bash script with getopt!.md
@@ -0,0 +1,31 @@
+---
+tags:
+ - bash
+---
+```
+#!/bin/bash
+
+while getopts "ab:c" opt; do
+ case "$opt" in
+ a)
+ echo "Option -a was specified."
+ ;;
+ b)
+ echo "Option -b was specified with argument: $OPTARG"
+ ;;
+ c)
+ echo "Option -c was specified."
+ ;;
+ \?)
+ echo "Invalid option: -$OPTARG" >&2
+ exit 1
+ ;;
+ esac
+done
+
+shift $((OPTIND - 1))
+
+echo "Remaining arguments: $@"
+```
+
+man bash // getopt \ No newline at end of file
diff --git a/Using Libvirt to manage QEMU image bitmaps.md b/Using Libvirt to manage QEMU image bitmaps.md
index 92eef5f..72942b3 100644
--- a/Using Libvirt to manage QEMU image bitmaps.md
+++ b/Using Libvirt to manage QEMU image bitmaps.md
@@ -18,4 +18,12 @@ There are six primary bitmap-management API commands:
And one related query command:
- `query-block`
-The `node` argument to bitmap cmds can be found as `node-name` in `query-block` results. \ No newline at end of file
+The `node` argument to bitmap cmds can be found as `node-name` in `query-block` results.
+
+
+#### Removing a dirty bitmap
+Cannot be removed if it is busy.
+Arguments: node, nameg
+
+---
+https://qemu-project.gitlab.io/qemu/interop/bitmaps.html \ No newline at end of file
diff --git a/We don't support filesystem discard syscalls on our openstack platform.md b/We don't support filesystem discard syscalls on our openstack platform.md
new file mode 100644
index 0000000..a8bb498
--- /dev/null
+++ b/We don't support filesystem discard syscalls on our openstack platform.md
@@ -0,0 +1,7 @@
+---
+tags:
+ - openstack
+ - work
+ - groupvps
+---
+This is due to the NetAPP driver implementing discard as sending NUL-bytes, which increases load significantly. \ No newline at end of file
diff --git a/daily/14-Apr-2025.md b/daily/14-Apr-2025.md
new file mode 100644
index 0000000..94bc485
--- /dev/null
+++ b/daily/14-Apr-2025.md
@@ -0,0 +1,22 @@
+Monday!
+
+# Standup
+OnFailure handlers installeren voor rename script ZFS datasets op backup nodes.
+Survey invullen
+Puppetrun failed nalopen
+Uitzoeken waarom de F QEMU GA sporadisch faalt
+- Dit had geloof ik iets te maken met QEMU crash ? Ff dubbel checken, heb er ergens een note van denk ik.
+# QA with Webglobe team
+Q: Virtual buses, volumes, suggested virtio. Can we do iSCSI instead of VirtIO because we do discards?
+A: We don't support discard. NetAPP implements by sending nul bytes. -> increase IO
+^ i wouldn't know this
+
+Q: Can we install from CD?
+R: yes, possible. create image, props, iso boot, boot vm rescue from image.
+J: documented?
+R: Will find dgoc for onehome
+
+Q: IP addresses, do we really need to let OS handle the allocation?
+A: OpenStack does this out of the box; used as single source of truth.
+J: Finds reason acceptable; will rewrite.
+
diff --git a/daily/15-Apr-2025.md b/daily/15-Apr-2025.md
new file mode 100644
index 0000000..06ab31a
--- /dev/null
+++ b/daily/15-Apr-2025.md
@@ -0,0 +1,28 @@
+**Interview Ali**
+
+Q:
+Waarom ga je weg bij Leaseplan?
+Over openstack deployment: hoe geautomatiseerd; welke tools?
+
+> Implemented virtual staging clusters mirroring the production architecture using KVM, libvirt, Linux bridge/virtual interfaces, and iptables, reducing setup time by 90% while significantly optimizing costs.
+
+Did you directly integrate to KVM/Libvirt, can you tell a bit about that?
+
+A:
+php/wordpress dev
+exp with cpanel and such
+then switch devops
+
+
++1 kolla ansible / openstack
++1 cpanel/hosting
+-1 geen puppet ervaring
++1 ovn ervaring; meest voorname probleem is met ovs/ovn
+
+beetje rare sidetrack config mgmt ansible vs puppet; maakt punt over consistency
+
+Q: regular day
+Q: expectations
+
+In amsterdam
+Avail: 1 june \ No newline at end of file