Changes

Jump to navigation Jump to search
m
Add "Kubernetes operator for managing container checkpoints"
Line 178: Line 178:  
* Mentors: Radostin Stoyanov <rstoyanov@fedoraproject.org>, Pavel Tikhomirov <ptikhomirov@virtuozzo.com>, Prajwal S N <prajwalnadig21@gmail.com>
 
* Mentors: Radostin Stoyanov <rstoyanov@fedoraproject.org>, Pavel Tikhomirov <ptikhomirov@virtuozzo.com>, Prajwal S N <prajwalnadig21@gmail.com>
 
* Suggested by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
 
* Suggested by: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
 +
 +
=== Kubernetes operator for managing container checkpoints ===
 +
 +
'''Summary:''' Develop a Kubernetes that automates the management of checkpoints
 +
 +
Container checkpointing has recently been introduced as an alpha feature in Kubernetes.
 +
To enable this feature, the kubelet API was extended with an endpoint that enables the
 +
creation of checkpoints for individual containers. By default, all container checkpoints
 +
are stored as tar archives in <code>/var/lib/kubelet/checkpoints</code> using the following
 +
file name format: <code>checkpoint-<pod-name>_<namespace-name>-<container-name>-<timestamp>.tar</code>.
 +
However, the current implementation does not provide a mechanism for limiting the number
 +
of checkpoints, which may lead to filling up all existing disk space. This project aims to
 +
develop a Kubernetes operator that automates the management of checkpoints and provides
 +
a garbage collection mechanism to discard obsolete checkpoints.
 +
 +
'''Links:'''
 +
* https://kubernetes.io/docs/concepts/extend-kubernetes/operator/
 +
* https://kubernetes.io/docs/reference/node/kubelet-checkpoint-api/
 +
* https://kubernetes.io/blog/2022/12/05/forensic-container-checkpointing-alpha/
 +
* https://kubernetes.io/blog/2023/03/10/forensic-container-analysis/
 +
* https://github.com/kubernetes/kubernetes/pull/115888
 +
* https://github.com/kubernetes/enhancements/issues/2008
 +
 +
'''Details:'''
 +
* Skill level: intermediate
 +
* Language: Go
 +
* Expected size: 350 hours
 +
* Mentors: Adrian Reber <areber@redhat.com>, Radostin Stoyanov <rstoyanov@fedoraproject.org>
 +
* Suggested by: Adrian Reber
    
== Suspended project ideas ==
 
== Suspended project ideas ==
277

edits

Navigation menu