Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/scripts/setup-talosctl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ set -euo pipefail
# inspects a single node, which reads as a fleet-wide fault rather than a stale
# pin.
# renovate: datasource=github-releases depName=siderolabs/talos extractVersion=^v(?<version>.+)$
TALOS_VERSION="1.13.8"
TALOS_VERSION="1.13.9"
# SHA-256 of talosctl-linux-amd64 for the TALOS_VERSION above, from that
# release's sha256sum.txt. UPDATE BOTH TOGETHER.
TALOSCTL_SHA256="406b56f9e4ff03b1557cc941b1f163aec8a6ebb36e28f0bbbe6d083589529261"
TALOSCTL_SHA256="7e1d4b7d5846964bdcf63a794e3c8161bb6ef2983d5ace58ea5322f3bf32a27e"

asset_name="talosctl-linux-amd64"
release_base="https://github.com/siderolabs/talos/releases/download/v${TALOS_VERSION}"
Expand Down
26 changes: 25 additions & 1 deletion ksail.prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -157,10 +157,34 @@ spec:
talos:
# Pin Talos to match the ISO so 'ksail cluster update' doesn't attempt
# an unwanted in-place upgrade to ksail's default version.
version: v1.13.8
version: v1.13.9
# Hetzner Talos ISO (x86_64). The v1.11.2 ISO (122630) was deprecated
# and removed from Hetzner on 2026-03-18. Use v1.12.4 (125127).
iso: 125127
# Per-node pod-eviction budget for the rolling drain during 'ksail
# cluster update'; KSail defaults to 10m. The static workers are the
# cluster's only Longhorn storage nodes, and Longhorn pins a
# per-instance-manager PodDisruptionBudget at zero allowed disruptions
# while that instance-manager still runs engines for attached volumes.
# Draining a worker therefore has to evict its workloads, let those
# volumes detach, and wait for Longhorn to release the PDB before the
# instance-manager itself can go — a sequence that exceeds 10m on a
# worker carrying several attached volumes, and an over-budget drain
# aborts the whole update.
#
# 30m is ~3x the 10m default. That default was reached on a worker
# carrying several attached volumes, so this leaves room for the
# evict/detach/PDB-release sequence above without being unbounded.
#
# This is an independent per-node drain limit. It is NOT bounded by
# connection.timeout, which governs the `workload reconcile` wait on the
# Flux Kustomization chain and is not consumed as this update's outer
# deadline.
#
# --force-drain is NOT the alternative here: it deletes pods bypassing
# PodDisruptionBudgets, which on Longhorn risks removing the
# instance-manager still serving a volume's last healthy replica.
drainTimeout: 30m
# Talos Image Factory extensions baked into the node image. KSail
# computes the schematic ID from this list and uses it both for
# machine.install.image (derived during config generation — there is no
Expand Down
Loading