Michael Nelson contributed to this blog post.
Kubeapps is one of the open source projects that the Bitnami team at VMware contributes to, and it is among the 250+ pre-packaged open source images present in Bitnami Application Catalog and Tanzu Application Catalog (the enterprise edition of Bitnami Application Catalog). This blog presents an overview of Kubeapps and how you can use it to simplify your Kubernetes application deployments.
What is Kubeapps and why is it relevant?
Kubeapps is an in-cluster, web-based application that provides an easy path for deployment, management, and upgrading of third-party applications on a Kubernetes cluster through an intuitive graphical user interface (GUI). Kubeapps can help Kubernetes platform administrators and operators who want to simplify the deployment and management of multiple third-party applications from public or private registries on Kubernetes clusters.
Using Kubeapps, Kubernetes administrators and operators can enable a simple GUI with a catalog of applications from public or private registries, configured and ready to deploy across their Kubernetes clusters.
Key features of Kubeapps
Some of the key features of Kubeapps are listed below.
Package format-agnostic
Initially, when Helm was the predominantly used format within the community, Helm was the only format supported by Kubeapps. However, there has been a significant growth in the number of packaging formats over recent years. So, to accommodate the other formats that have emerged, Kubeapps now has a pluggable system that allows the integration of multiple package formats within the same user interface. You can see a demonstration of how Kubeapps integrated with VMware's Carvel packaging format in this video.
Single instance for multiple clusters
Kubeapps supports deploying applications across multiple clusters. As long as the logged-in user has the required permissions on each cluster, they will be able to deploy an application from a public catalog on one cluster to a different cluster of their choice. The clusters available for use within Kubeapps are configured by the cluster operator and, once configured, they will be available as the target of a deployment. See our multicluster documentation for more information.
Integration with cluster authentication and role-based access control
Kubeapps supports a variety of authentication systems used by the community. Kubeapps does not implement its own authentication layer but takes the safer route of utilizing the existing Kubernetes authentication and role-based access control (RBAC) primitives. When you log in to Kubeapps, you are redirected to your trusted corporate identity provider to authenticate and be issued with a token that is trusted by your Kubernetes cluster. Kubeapps does not see your personal credentials, let alone store them. Once logged in, you can use the Kubeapps UI to install, update, and delete applications across your configured clusters with the permissions and roles you have been assigned in the cluster by your administrator.
How can I start using Kubeapps?
To get started with Kubeapps today, follow our Getting Started guide.
How can I get enterprise support for Kubeapps?
Tanzu Application Catalog is the only place where you can get enterprise support for Kubeapps. Tanzu Application Catalog provides a customizable selection of trusted, pre-packaged open source application components that are continuously maintained and verifiably tested for use in production environments. Learn more about Tanzu Application Catalog.
Learn more
If you want to learn more about Kubeapps, join this webinar on December 5, during which we will provide a detailed presentation, conduct a live demo, and answer all your questions.