Installation

Default installation with manifests

To obtain a default installation without Prometheus alerting interlock or Slack notifications:

latest=$(curl -s https://api.github.com/repos/kubereboot/kured/releases | jq -r '.[0].tag_name')
kubectl apply -f "https://github.com/kubereboot/kured/releases/download/$latest/kured-$latest-dockerhub.yaml"

If you want to customise the installation, download the manifest and edit it in accordance with the following section before application.

Using the Helm-Chart

Kured also provides its own helm-chart. Detailed instructions and documentation can be found here.

Kubernetes & OS Compatibility

The daemon image contains versions of k8s.io/client-go and k8s.io/kubectl (the binary of kubectl in older releases) for the purposes of maintaining the lock and draining worker nodes. Kubernetes aims to provide forwards and backwards compatibility of one minor version between client and server:

kured{k8s.io/,}kubectlk8s.io/client-gok8s.io/apimachineryexpected kubernetes compatibility
1.16.20.29.9v0.29.9v0.29.91.28.x, 1.29.x, 1.30.x
1.15.10.28.8v0.28.8v0.28.81.27.x, 1.28.x, 1.29.x
1.14.20.27.6v0.27.6v0.27.61.26.x, 1.27.x, 1.28.x
1.13.20.26.7v0.26.7v0.26.71.25.x, 1.26.x, 1.27.x
1.12.20.25.5v0.25.5v0.25.51.24.x, 1.25.x, 1.26.x
1.11.00.24.7v0.24.7v0.24.71.23.x, 1.24.x, 1.25.x
1.10.20.23.6v0.23.6v0.23.61.22.x, 1.23.x, 1.24.x
1.9.20.22.4v0.22.4v0.22.41.21.x, 1.22.x, 1.23.x
1.8.10.21.4v0.21.4v0.21.41.20.x, 1.21.x, 1.22.x
1.7.00.20.5v0.20.5v0.20.51.19.x, 1.20.x, 1.21.x
1.6.10.19.4v0.19.4v0.19.41.18.x, 1.19.x, 1.20.x
1.5.10.18.8v0.18.8v0.18.81.17.x, 1.18.x, 1.19.x
1.4.41.17.7v0.17.0v0.17.01.16.x, 1.17.x, 1.18.x
1.3.01.15.10v12.0.0release-1.151.15.x, 1.16.x, 1.17.x
1.2.01.13.6v10.0.0release-1.131.12.x, 1.13.x, 1.14.x
1.1.01.12.1v9.0.0release-1.121.11.x, 1.12.x, 1.13.x
1.0.01.7.6v4.0.0release-1.71.6.x, 1.7.x, 1.8.x

See the release notes for specific version compatibility information, including which combination have been formally tested.

Versions >=1.1.0 enter the host mount namespace to invoke systemctl reboot, so should work on any systemd distribution.