updated talos config for iscsi

This commit is contained in:
2026-06-18 23:01:40 -05:00
parent 99958979d6
commit a4a68eeb5a
2 changed files with 98 additions and 0 deletions

View File

@@ -81,6 +81,12 @@ patches:
# ─── Control plane patches ─────────────────────────────────────────────────── # ─── Control plane patches ───────────────────────────────────────────────────
controlPlane: controlPlane:
schematic:
customization:
systemExtensions:
officialExtensions:
- siderolabs/qemu-guest-agent
patches: patches:
- |- - |-
cluster: cluster:
@@ -105,6 +111,67 @@ controlPlane:
vip: vip:
ip: 10.1.71.65 ip: 10.1.71.65
# ─── Worker patches ──────────────────────────────────────────────────────────
worker:
schematic:
customization:
systemExtensions:
officialExtensions:
- siderolabs/qemu-guest-agent
- siderolabs/util-linux-tools
- siderolabs/iscsi-tools
patches:
- |-
machine:
kernel:
modules:
- name: iscsi_tcp
- name: dm_multipath
kubelet:
extraMounts:
# iSCSI initiator data directory
- destination: /etc/iscsi
type: bind
source: /etc/iscsi
options:
- bind
- rshared
- destination: /var/lib/iscsi
type: bind
source: /var/lib/iscsi
options:
- bind
- rshared
sysctls:
net.ipv4.conf.all.arp_announce: "2"
net.ipv4.conf.all.arp_ignore: "1"
# files:
# - content: |
# defaults {
# polling_interval 10
# }
# devices {
# device {
# vendor "PURE"
# product "FlashArray"
# path_selector "queue-length 0"
# path_grouping_policy group_by_prio
# prio alua
# path_checker tur
# fast_io_fail_tmo 10
# user_friendly_names no
# no_path_retry 0
# hardware_handler "1 alua"
# dev_loss_tmo 600
# failback immediate
# }
# }
# path: /etc/multipath.conf
# op: create
# ─── Nodes ─────────────────────────────────────────────────────────────────── # ─── Nodes ───────────────────────────────────────────────────────────────────
nodes: nodes:
# ── Control plane ────────────────────────────────────────────────────────── # ── Control plane ──────────────────────────────────────────────────────────
@@ -166,6 +233,10 @@ nodes:
- network: 0.0.0.0/0 - network: 0.0.0.0/0
gateway: 10.1.71.1 gateway: 10.1.71.1
dhcp: false dhcp: false
- interface: ens19 # iSCSI storage network
addresses:
- 10.1.75.69/24
dhcp: false
- hostname: haunted-mansion - hostname: haunted-mansion
ipAddress: 10.1.71.70 ipAddress: 10.1.71.70
@@ -179,6 +250,10 @@ nodes:
- network: 0.0.0.0/0 - network: 0.0.0.0/0
gateway: 10.1.71.1 gateway: 10.1.71.1
dhcp: false dhcp: false
- interface: ens19 # iSCSI storage network
addresses:
- 10.1.75.70/24
dhcp: false
- hostname: peter-pans-flight - hostname: peter-pans-flight
ipAddress: 10.1.71.71 ipAddress: 10.1.71.71
@@ -192,3 +267,7 @@ nodes:
- network: 0.0.0.0/0 - network: 0.0.0.0/0
gateway: 10.1.71.1 gateway: 10.1.71.1
dhcp: false dhcp: false
- interface: ens19 # iSCSI storage network
addresses:
- 10.1.75.71/24
dhcp: false

View File

@@ -0,0 +1,19 @@
#!/bin/bash
declare -A WORKERS=(
["jungle-cruise"]="10.1.71.69"
)
for worker in "${!WORKERS[@]}"; do
ip="${WORKERS[$worker]}"
echo "Applying config to $worker ($ip)..."
talosctl apply-config --nodes ${ip} \
--file clusterconfig/fastpass-${worker}.yaml --mode=reboot
echo "Waiting for $worker to be Ready..."
kubectl wait --for=condition=Ready node/${worker} --timeout=10m
echo "$worker is back up. Sleeping 30s before next node..."
sleep 30
done
echo "All workers updated!"