Secure Kubernetes with canisters – Canisterisation

Kubernetes has established itself as the leading platform for containerised applications. However, its operation, especially in the area of data management and backup, brings with it special challenges that differ from those in virtual machines. This is where the open source tool Kanister, which was developed by Kasten and is now part of Veeam, comes in. In this article, we explain the basics of the tool and use examples to show how it can be used for backups in Kubernetes.

Veeam has set itself a number of goals for its data management tool Kanister [1]. The focus is on application-centric backup. In concrete terms, this means that the focus is primarily on the users of specialised applications and not just system-related infrastructure administrators. Furthermore, a programming approach based on APIs was important to the developers – all addressable tasks are abstracted by a well-defined API, which is also very easy to extend.

ActionSets and blueprints

As with many other Kubernetes products, Kanister’s implementation is based on the operator principle. This allows Veeam to easily package, deploy and manage Kanister, providing a range of Kubernetes resource definitions. In total, Kanister consists of three main components: a controller and two custom resources – namely ActionSets and Blueprints. The workflow is as follows:

1. the first step is to create an ActionSet. Like most manifests, this is also declarative. An ActionSet describes a set of actions that are to be executed on Kubernetes resources at runtime. Each action is linked to a Kubernetes object and references a blueprint with the necessary information.

You can access the full article online in the IT-Administrator portal or read it in the December 2024 issue of the IT-Administrator magazine.

Author

Dr. Guido Söldner

Managing Director

Guido Söldner is Managing Director and Principal Consultant at Söldner Consult. His areas of expertise include cloud infrastructure, automation and DevOps, Kubernetes, machine learning and enterprise programming with Spring.