titan-iac/services/maintenance/k3s-agent-restart-daemonset.yaml

50 lines
1.4 KiB
YAML
Raw Normal View History

# services/maintenance/k3s-agent-restart-daemonset.yaml
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: k3s-agent-restart
namespace: maintenance
spec:
selector:
matchLabels:
app: k3s-agent-restart
updateStrategy:
type: RollingUpdate
template:
metadata:
labels:
app: k3s-agent-restart
spec:
serviceAccountName: node-nofile
hostPID: true
hostNetwork: true
nodeSelector:
kubernetes.io/arch: arm64
node-role.kubernetes.io/worker: "true"
tolerations:
- key: node-role.kubernetes.io/control-plane
operator: Exists
effect: NoSchedule
- key: node-role.kubernetes.io/master
operator: Exists
effect: NoSchedule
containers:
- name: restart
image: bitnami/kubectl@sha256:554ab88b1858e8424c55de37ad417b16f2a0e65d1607aa0f3fe3ce9b9f10b131
command:
- /bin/sh
- -c
args:
- |
set -euo pipefail
if nsenter -t 1 -m -u -i -n -p -- /usr/bin/systemctl restart k3s-agent; then
echo "k3s-agent restarted"
else
nsenter -t 1 -m -u -i -n -p -- /bin/systemctl restart k3s-agent
echo "k3s-agent restarted via /bin/systemctl"
fi
sleep infinity
securityContext:
privileged: true
runAsUser: 0