Note
You can download this article as a PDF
Kubernetes Plugin
Containers provide a lightweight system-level virtualization solution with minimal overhead, as applications within virtual partitions utilize the operating system’s standard system call interface without requiring emulation or running in a separate virtual machine. Kubernetes manages a set of containers to create a flexible execution environment for various applications and services
The Bacula Enterprise Kubernetes Plugin is designed to securely store all critical Kubernetes objects and meta-data that are essential for the functioning of the application or service. This includes the following name-spaced objects:
Config Map
Daemon Set
Deployment
Endpoint
Ingress (From Bacula Enterprise version 16.0.14)
Limit Range
Pod
Persistent Volume Claim
Pod Template
Replica Set
Replication Controller
Resource Quota
Secret
Service
Service Account
Stateful Set
PVC Data Archive
Note
The PVC Data does not precisely correspond to a Kubernetes Object, but rather serves as a repository of actual data that exists on the chosen PVC.
and non name-spaced objects:
Namespace
Persistent Volume
Storage Class
All name-spaced objects which belong to a particular namespace are grouped together for easy backup data browsing and recovery.
Proper authorization is necessary for users and service accounts to access the server API. This involves going through authentication, authorization, and admission control. In order to effectively back up Kubernetes objects, it is essential to have a user or service account with the appropriate permissions and rights to be authenticated and authorized to access the API server and the objects that need to be backed up.
To ensure successful object configuration backups, it is essential for the user or service account to have the capability to read and list the objects. Additionally, for PVC Data backup, the user or service account must also possess the ability to create and delete pods. This is necessary as the plugin will need to create and delete the Bacula Backup Proxy Pod during the backup process.
See the Kubernetes documentation for more details.
Read more in the sub-chapters: