Consume VMware Tanzu Application Catalog for Tanzu Advanced using Kubeapps

This section explains how to configure Kubeapps to use container images and Helm charts from the VMware Tanzu Application Catalog (Tanzu Application Catalog) for Tanzu Advanced.

Kubeapps is a web-based dashboard to deploy, manage, and upgrade applications on a Kubernetes cluster. It uses the cluster’s existing role-based access rules to control access and can be configured to use both public and private application repositories as its source of container images and Helm charts.

In particular, Kubeapps can be easily configured to automatically replicate artifacts from the VMware Tanzu Application Catalog Documentation VMware, Inc 108 Application Catalog for Tanzu Advanced. This enables Tanzu Advanced users to access up-to-date, “known good” Tanzu Application Catalog container images and Helm charts through an intuitive, browser-based user interface.

You can configure the Tanzu Application Catalog for Tanzu Advanced as an application repository in Kubeapps, and deploy a MySQL Helm chart from that catalog from the Kubeapps interface.

The steps below use MySQL as an example, but you can use similar steps to work with other artifacts from the Tanzu Application Catalog for Tanzu Advanced using Kubeapps.

What to do first

Ensure:

  • You have administrator access to a pre-existing installation of Kubeapps, configured in line with existing enterprise requirements. If you don’t already have Kubeapps, see Kubeapps installation instructions. For more information, see Kubeapps.
  • You have credentials (consisting of a username and token) for the Tanzu Application Catalog for Tanzu Advanced registry.

To configure Kubeapps to use container images and Helm charts from the Tanzu Application Catalog for Tanzu Advanced, follow these steps as explained in the sections below:

  1. Add the Tanzu Application Catalog for Tanzu Advanced to Kubeapps

  2. Deploy MySQL using Kubeapps

Add the Tanzu Application Catalog for Tanzu Advanced to Kubeapps

The first step is to create an application repository in Kubeapps for the Tanzu Application Catalog for Tanzu Advanced. Follow these instructions:

  1. Log in to Kubeapps.

  2. Select the namespace by clicking on the context selector dropdown on the top right. Select the namespace you want, for instance, “my-namespace” or “default”, and click on “Change Context”.

    Context change

  3. In the “Administration” menu on the right panel, select the “Package Repositories” option.

    Package repositories

  4. Click on the “Add Package Repository” button and a form will be displayed.

    Add repository, collapsed form

    1. Inside the “Basic Information” tab:

      1. Enter a descriptive “Name”, for instance, vac-for-tanzu-advanced.

      2. Type the following repository “URL”: https://registry.pivotal.io/tac-for-tanzu-advanced/charts/

      3. Select Helm Charts as the “Packaging Format”.

      4. Select Namespaced as the “Scope”, so that the repository becomes available just in the selected namespace.

      5. Select OCI Registry as the “Package Storage Type”.

      Add repository, basic information tab

    2. Inside the “Authentication” tab:

      1. Select Basic Auth for the “Repository Authorization”.

      2. In the “Username” and “Password” fields, enter the generated credentials for the application repository in the Tanzu Application Catalog for Tanzu Advanced. If unsure, contact your VMware representative.

      3. Use None (Public) for the “Container Registry Credentials”.

      4. Click on the “Install Repository” button.

      Add repository, authentication tab

  5. The new repository is now created and being synchronized. This process may take a few minutes. It is normal to see an empty catalog while all the packages are being synced.

    Repository successfully added in Kubeapps

    To check the progress of the synchronization task, execute:

    # Replace "vac-for-tanzu-advanced" with the repository name you chose, and "my-namespace" with the namespace you used
    
    kubectl logs -n my-namespace -l apprepositories.kubeapps.com/repo-name=vac-for-tanzu-advanced
    
  6. In the Catalog tab, you can find your packages ready to be used.

    Catalog displayed in Kubeapps

Deploy MySQL using Kubeapps

Once the application repository is synced, you can start deploying artifacts from the Tanzu Application Catalog for Tanzu Advanced chart repository. Follow these steps:

  1. From the Kubeapps dashboard, click the “Catalog” menu option in the top navigation bar.

  2. In the “Filters” list on the right side, select the checkbox for the vac-for-tanzu-advanced application repository. This displays a list of available charts from the Tanzu Application Catalog for Tanzu Advanced chart repository.

  3. Select the MySQL package.

    Search repository

  4. On the chart detail page, click “Deploy”.

    Deploy chart

  5. Add a “Name” for this installation.

  6. You are now presented with a visual form as well as a YAML configuration file for the chart.

    This allows you to change common parameters, such as the username or password. You can also define other deployment options, such as whether to make the MySQL service available using a load balancer, define a custom MySQL configuration file, enable a custom domain, and define resource usage.

    Configure chart

  7. Click “Deploy” to proceed.

    Kubeapps will deploy the package and display a status screen as the chart is installed. Wait until Kubeapps reports that the deployment is “ready”.

    If you have not already set a password, get the credentials for MySQL from the “Application Secrets” section of the deployment page or by executing the commands shown in the “Installation Notes” section of the deployment output.

    Check status

  8. To remove the deployment, click “Delete” on the deployment page.

Useful links

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