-
Notifications
You must be signed in to change notification settings - Fork 612
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Container Checkpointing with CRIU in Kubernetes #2563
Comments
With Kubernetes 1.28 the feature is still marked as Alpha and needs to be explicitly enabled. Starting with Kubernetes 1.30 it defaults to on. You need to activate it. |
drop_infra_ctr = false |
You need to also enable it in Kubernetes. |
kube-apiserver.yaml: - --feature-gates=ContainerCheckpoint=true |
You need to activate it also for the kubelet. |
How can I activate it? Can you guide me? The kubelet will request a checkpoint from the underlying CRI implementation. In the checkpoint request, the kubelet will specify the name of the checkpoint archive as checkpoint---.tar and also request to store the checkpoint archive in the checkpoints directory below its root directory (as defined by --root-dir). This defaults to /var/lib/kubelet/checkpoints. The checkpoint archive is in tar format and can be listed using an implementation of tar. The contents of the archive depends on the underlying CRI implementation (the container runtime on that node). HTTP Request |
Container Checkpointing with CRIU in Kubernetes:
Kubernetes version: 1.28
Cloud being used: (put bare-metal if not on a public cloud)
Installation method: Container Checkpointing with CRIU in Kubernetes
Host OS: ubuntu 22.04
CRI and version: CRI-O
criu : 4.0
enable_criu_support field in the CRI-O configuration file to true.
curl -sk -X POST “https://localhost:10250/checkpoint/default/nginx/nginx”
–key /etc/kubernetes/pki/apiserver-kubelet-client.key
–cacert /etc/kubernetes/pki/ca.crt
–cert /etc/kubernetes/pki/apiserver-kubelet-client.crt
error
ls -l /var/lib/kubelet/checkpoints/
ls: cannot access ‘/var/lib/kubelet/checkpoints/’: No such file or directory
Why doesn’t the checkpoint file appear in the directory? What configuration is needed to make it appear in the directory? Please help
The text was updated successfully, but these errors were encountered: