From 6361a7805218b718f7ca63dcd10a30e92e7a354c Mon Sep 17 00:00:00 2001 From: V Date: Sun, 14 Dec 2025 21:46:01 +0000 Subject: [PATCH] added missing dep --- .gitea/workflows/publish.yaml | 4 +++ vlads-notes/0003-k8s-ops.md | 51 +++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/.gitea/workflows/publish.yaml b/.gitea/workflows/publish.yaml index 0eeeebc..07278a9 100644 --- a/.gitea/workflows/publish.yaml +++ b/.gitea/workflows/publish.yaml @@ -8,6 +8,10 @@ jobs: container: image: oven/bun:latest steps: + - name: Install Git + run: | + apt-get update + apt-get install -y git - name: Grab local files uses: actions/checkout@v4 - name: Clone Quartz diff --git a/vlads-notes/0003-k8s-ops.md b/vlads-notes/0003-k8s-ops.md index b3e11b6..06b8d7d 100644 --- a/vlads-notes/0003-k8s-ops.md +++ b/vlads-notes/0003-k8s-ops.md @@ -7,6 +7,57 @@ tags: draft: false date: 2025-12-14 --- +### Enabling Talos system extensions + +I wanted to deploy Longhorn on a Talos cluster and I didn't realise that at the time I didn't include the required extensions: + +- siderolabs/iscsi-tools +- siderolabs/util-linux-tools + +After a bit of struggling, I found the fix on Reddit lol... create a patch file: + +``` +# patch.yaml + +customization: + systemExtensions: + officialExtensions: + - siderolabs/iscsi-tools + - siderolabs/util-linux-tools +``` + +Use this patch file in a POST request to the Talos image builder to get the schematic ID for an image with these extensions: + +``` +curl -X POST --data-binary @patch.yaml https://factory.talos.dev/schematics + +# OUTPUT: +{"id":"613e1592b2da41ae5e265e8789429f22e121aab91cb4deb6bc3c0b6262961245"} + +``` + +Then upgrade the Talos cluster using this new schematic (make sure to match the version of Talos software that is currently running - in my case it was 1.11.5): + +``` +talosctl upgrade --preserve --image factory.talos.dev/installer/613e1592b2da41ae5e265e8789429f22e121aab91cb4deb6bc3c0b6262961245:v1.11.5 --nodes=192.168.0.5,192.168.0.6,192.168.0.7,192.168.0.8 + +# OUTPUT: +watching nodes: [192.168.0.5 192.168.0.6 192.168.0.7 192.168.0.8] + * 192.168.0.5: post check passed + * 192.168.0.6: post check passed + * 192.168.0.7: post check passed + * 192.168.0.8: post check passed + +talosctl get extensions -n 192.168.0.5 + +# OUTPUT: +NODE NAMESPACE TYPE ID VERSION NAME VERSION +192.168.0.5 runtime ExtensionStatus 0 1 iscsi-tools v0.2.0 +192.168.0.5 runtime ExtensionStatus 1 1 util-linux-tools 2.41.1 +192.168.0.5 runtime ExtensionStatus 2 1 schematic 613e1592b2da41ae5e265e8789429f22e121aab91cb4deb6bc3c0b6262961245 + + +``` ### Migrating data between PVCs