This section describes how to install and configure packages in Tanzu Kubernetes Grid.

Packages

A package is a collection of related software that supports or extends the core functionality of the Kubernetes cluster in which the package is installed. Packages are grouped into package repositories in the Tanzu Command Line Interface (CLI). For more information about how packages and package repositories are implemented in Tanzu Kubernetes Grid, see Carvel API Resources below.

Tanzu Kubernetes Grid includes two types of packages:

  • Core packages are automatically installed and managed by Tanzu Kubernetes Grid. These packages are located in the tanzu-core package repository.
  • User-managed packages are installed and managed by you. These packages are located in the tanzu-standard package repository.

Both the tanzu-core and the tanzu-standard package repositories are automatically enabled in every cluster.

Core Packages

Core packages are typically installed during cluster creation. These packages support the core functionality of Kubernetes clusters created by Tanzu Kubernetes Grid. Tanzu Kubernetes Grid manages the lifecycle of its core packages and of the tanzu-core package repository. You can manually update the configuration of some of the core packages after you create the cluster. For more information, see Core Packages.

User-Managed Packages

User-managed packages are installed after cluster creation. These packages extend the core functionality of Kubernetes clusters created by Tanzu Kubernetes Grid. For example, you can install the Contour package to implement ingress control, the Harbor package to configure a private container registry, or the Fluent Bit, Grafana, and Prometheus packages to collect logs and metrics from your clusters.

Using the Tanzu CLI, you can install user-managed packages from the tanzu-standard package repository or from package repositories that you add to your target cluster. Tanzu Kubernetes Grid manages the lifecycle of the tanzu-standard package repository. For more information about the standard packages, see User-Managed Packages. For information about how to create your own packages and package repositories, see Tutorial: Create and Install a Package in the Carvel documentation.

Carvel API Resources

To make core and user-managed packages available in Kubernetes clusters, Tanzu Kubernetes Grid uses kapp-controller, a package manager, and the following API resources. These API resources are created in your target cluster.

  • PackageRepository, or pkgr: This resource, which represents a single package repository, points kapp-controller to the package repository that is defined in the resource. A package repository contains Package and PackageMetadata resources. After a PackageRepository is created in your target cluster, kapp-controller can install any of the packages that the package repository contains.
  • Package, or pkg: This resource contains version-specific information about a given package and defines how to install the package. kapp-controller uses the Package resource when installing the package.
  • PackageMetadata, or pkgm: This resource contains version-agnostic information about a given package.
  • PackageInstall, or pkgi: This resource represents an installed package in your target cluster. It also references the Package resource that was used to install the package.

You can list and view these resources by using the kubectl api-resources and kubectl get commands. For more information about the Carvel API resources, see Packaging in the Carvel documentation.

vSphere 7 Does Not Support Packages

Tanzu Kubernetes Grid package functionality and tanzu package commands are not supported for vSphere 7 clusters.

Retain or implement add-on functionality for vSphere 7 clusters depending on their history, as described in the table below:

vSphere 7 clusters with extensions that predate Tanzu Kubernetes Grid v1.4 upgrade Do not upgrade extensions to packages; continue running clusters with existing extensions.
vSphere 7 supervisor cluster added to Tanzu CLI since v1.4 upgrade Follow Deploy TKG Extensions v1.3.1 to Tanzu Kubernetes Clusters in the vSphere 7.0 Documentation
vSphere 7 workload cluster deployed by supervisor cluster since v1.4 upgrade

vSphere 7 supervisor clusters can be added to the Tanzu CLI with tanzu login as described in Add a vSphere7 Supervisor Cluster as a Management Cluster.

check-circle-line exclamation-circle-line close-line
Scroll to top icon