Managing Applications in Kubernetes with the Carvel Kapp Controller
Any typical enterprise-grade application deployed on Kubernetes comprises several API resources that need to be deployed together. For example, the WordPress application, which is one of the example applications available on the Kubernetes GitHub repository, includes:
- a
wordpress
frontend pod - a
wp-pv-claim
persistent volume claim mounted to the frontend pod - a
wordpress-mysql
MySQL database pod - a
mysql-pv-claim
persistent volume claim mounted to the MySQL database pod - two persistent volumes:
wordpress-pv-1
andwordpress-pv-2
to serve the persistent volume claims - services for the database and frontend pods
Application (or app) is not a native construct in Kubernetes. However, managing applications is the primary concern of the developers and operations. Application delivery on Kubernetes involves upgrading, downgrading, and customizing the individual API resources. Kubernetes allows you to restrict the spread of your application resources through namespaces
such that you can deploy an entire app in a namespace that can be deleted or created. However, a complex application might consist of resources spread across namespaces, and in such cases answering the following questions might be a challenge:
- How many apps are running in a namespace?
- Was the upgrade of all the resources of the app successful?
- Which types of resources are associated with my app?
The kapp Tool
The kapp (Kubernetes App) tool is one of the tools available in the Carvel toolkit. kapp enables users to group a set of resources (resources with the same label) as an application. Furthermore, kapp manages the individual resources of the application so that the users only have to operate at the level of applications through the kapp CLI.
Helm (specifically Helm3) is an alternative to the kapp tool. Just like Helm, kapp can perform a stateful upgrade of the application. However, Kapp does not have templating capabilities like Helm, a capability that is fulfilled by the YTT tool in the Carvel toolkit. By combining kapp with the kapp-controller, you can build neat GitOps workflows, which takes it far beyond the capabilities of Helm.
3 thoughts on “Managing Applications in Kubernetes with the Carvel Kapp Controller”
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quis ipsum suspendisse ultrices gravida. Risus commodo viverra maecenas accumsan lacus vel facilisis.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quis ipsum suspendisse ultrices gravida. Risus commodo viverra maecenas accumsan lacus vel facilisis.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quis ipsum suspendisse ultrices gravida. Risus commodo viverra maecenas accumsan lacus vel facilisis.
гѓ—гѓ¬гѓ‰гѓ‹гѓі её‚иІ© гЃЉгЃ™гЃ™г‚Ѓ – г‚ўг‚ュテインは薬局で買える? イソトレチノイン処方
Your comment is awaiting moderation.