109 lines
3.2 KiB
YAML
109 lines
3.2 KiB
YAML
# infrastructure/core/node-maintenance.yaml
|
|
# Block new placement until offline, power and runtime-storage checks pass.
|
|
# Existing workloads and storage DaemonSets are not drained by these resources.
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-04
|
|
labels:
|
|
hardware: rpi5
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Fresh undervoltage events; verify power delivery under load before accepting new workloads."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-05
|
|
labels:
|
|
hardware: rpi5
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Offline; verify identity, power, storage and loaded operation before accepting new workloads."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-06
|
|
labels:
|
|
hardware: rpi5
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Offline; verify identity, power, storage and loaded operation before accepting new workloads."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-08
|
|
labels:
|
|
hardware: rpi5
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Runtime USB disk reaches sustained saturation during image builds; repair media and verify loaded I/O before uncordoning."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-14
|
|
labels:
|
|
hardware: rpi4
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
# Keep the runtime's other node fields; quarantine only owns placement.
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Runtime USB flash saturation; replace or repair media and verify I/O before uncordoning."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-11
|
|
labels:
|
|
hardware: rpi5
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Repeated fresh undervoltage events; verify power delivery under load before accepting new workloads."
|
|
spec:
|
|
unschedulable: true
|
|
---
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: titan-18
|
|
labels:
|
|
hardware: rpi4
|
|
node-role.kubernetes.io/worker: "true"
|
|
longhorn-host: "true"
|
|
annotations:
|
|
kustomize.toolkit.fluxcd.io/ssa: Merge
|
|
kustomize.toolkit.fluxcd.io/prune: disabled
|
|
atlas.bstein.dev/maintenance-reason: "Sustained runtime I/O stalls prevent Longhorn engine startup; reduce load and verify storage before uncordoning."
|
|
spec:
|
|
unschedulable: true
|