This document describes how to install Tanzu Application Platform packages from the Tanzu Application Platform package repository.
Before you install the packages, ensure that you have completed the prerequisites, configured and verified the cluster, accepted the EULA, and installed the Tanzu CLI with any required plugins. For information, see Installing Part I: Prerequisites, EULA, and CLI.
To add the Tanzu Application Platform package repository:
-
Create a namespace called
tap-install
for deploying the packages of the components by running:kubectl create ns tap-install
This namespace is to keep the objects grouped together logically.
-
Create a registry secret:
tanzu secret registry add tap-registry \ --username "TANZU-NET-USER" --password "TANZU-NET-PASSWORD" \ --server registry.tanzu.vmware.com \ --export-to-all-namespaces --yes --namespace tap-install
Where
TANZU-NET-USER
andTANZU-NET-PASSWORD
are your credentials for Tanzu Network. -
Add Tanzu Application Platform package repository to the cluster by running:
tanzu package repository add tanzu-tap-repository \ --url registry.tanzu.vmware.com/tanzu-application-platform/tap-packages:0.3.0-build.5 \ --namespace tap-install
For example:
$ tanzu package repository add tanzu-tap-repository \ --url registry.tanzu.vmware.com/tanzu-application-platform/tap-packages:0.3.0-build.5 \ --namespace tap-install \ Adding package repository 'tanzu-tap-repository'... Added package repository 'tanzu-tap-repository'
-
Get the status of the Tanzu Application Platform package repository, and ensure the status updates to
Reconcile succeeded
by running:tanzu package repository get tanzu-tap-repository --namespace tap-install
For example:
$ tanzu package repository get tanzu-tap-repository --namespace tap-install - Retrieving repository tap... NAME: tanzu-tap-repository VERSION: 48756 REPOSITORY: registry.tanzu.vmware.com/tanzu-application-platform/tap-packages:0.3.0-build.5 STATUS: Reconcile succeeded REASON:
-
List the available packages by running:
tanzu package available list --namespace tap-install
For example:
$ tanzu package available list --namespace tap-install / Retrieving available packages... accelerator.apps.tanzu.vmware.com Application Accelerator for VMware Tanzu Used to create new projects and configurations. api-portal.tanzu.vmware.com API portal A unified user interface to enable search, discovery and try-out of API endpoints at ease. appliveview.tanzu.vmware.com Application Live View for VMware Tanzu App for monitoring and troubleshooting running apps buildservice.tanzu.vmware.com Tanzu Build Service Tanzu Build Service enables the building and automation of containerized software workflows securely and at scale. cartographer.tanzu.vmware.com Cartographer Kubernetes native Supply Chain Choreographer. cnrs.tanzu.vmware.com Cloud Native Runtimes Cloud Native Runtimes is a serverless runtime based on Knative controller.conventions.apps.tanzu.vmware.com Convention Service for VMware Tanzu Convention Service enables app operators to consistently apply desired runtime configurations to fleets of workloads. controller.source.apps.tanzu.vmware.com Tanzu Source Controller Tanzu Source Controller enables workload create/update from source code. developer-conventions.tanzu.vmware.com Tanzu App Platform Developer Conventions Developer Conventions grype.scanning.apps.tanzu.vmware.com Grype Scanner for Supply Chain Security Tools for VMware Tanzu - Scan Default scan templates using Anchore Grype image-policy-webhook.signing.run.tanzu.vmware.com Image Policy Webhook The Image Policy Webhook allows platform operators to define a policy that will use cosign to verify signatures of container images ootb-supply-chain-basic.tanzu.vmware.com Tanzu App Platform Out of the Box Supply Chain Basic Out of the Box Supply Chain Basic ootb-supply-chain-testing.tanzu.vmware.com Tanzu App Platform Out of the Box Supply Chain with Testing Out of the Box Supply Chain with Testing ootb-supply-chain-testing-scanning.tanzu.vmware.com Tanzu App Platform Out of the Box Supply Chain with Testing and Scanning Out of the Box Supply Chain with Testing and Scanning ootb-templates.tanzu.vmware.com Tanzu App Platform Out of the Box Templates Out of the Box Templates scanning.apps.tanzu.vmware.com Supply Chain Security Tools for VMware Tanzu - Scan Scan for vulnerabilities and enforce policies directly within Kubernetes native Supply Chains. scst-store.tanzu.vmware.com Tanzu Supply Chain Security Tools - Store The Metadata Store enables saving and querying image, package, and vulnerability data. service-bindings.labs.vmware.com Service Bindings for Kubernetes Service Bindings for Kubernetes implements the Service Binding Specification. services-toolkit.tanzu.vmware.com Services Toolkit The Services Toolkit enables the management, lifecycle, discoverability and connectivity of Service Resources (databases, message queues, DNS records, etc.). tap-gui.tanzu.vmware.com Tanzu Application Platform GUI web app graphical user interface for Tanzu Application Platform tap.tanzu.vmware.com Tanzu Application Platform Package to install a set of Tanzu Application Platform components to get you started based on your use case.
Tanzu Application Platform can be installed through pre-defined profiles or through individual packages. This section explains how you can install a profile.
There are four profiles:
- Full (
full
) - Developer Light (
dev-light
) - Shared Tools (
shared-tools
) - Operator Light (
operator-light
)
This table lists the packages that are contained in each profile:
Product Name | Full | Developer Light | Shared Tools | Operator Light |
API Portal | ✓ | ✓ | ||
Application Accelerator | ✓ | ✓ | ||
App Live View | ✓ | ✓ | ||
Cartographer | ✓ | ✓ | ✓ | |
Cloud Native Runtime | ✓ | ✓ | ✓ | |
Convention Controller | ✓ | ✓ | ✓ | |
Out of the Box Supply Chain - Basic | ✓ | ✓ | ✓ | |
Out of the Box Supply Chain - Testing | ✓ | |||
Out of the Box Supply Chain - Testing and Scanning | ✓ | |||
Out of the Box Templates | ✓ | |||
Developer Conventions | ✓ | ✓ | ||
Flux Source Controller | ✓ | ✓ | ✓ | ✓ |
Image Policy Webhook | ✓ | ✓ | ✓ | |
Learning Center | ✓ | ✓ | ||
Services Toolkit | ✓ | ✓ | ✓ | |
Service Bindings | ✓ | ✓ | ✓ | |
Source Controller | ✓ | ✓ | ✓ | |
Spring Boot Convention | ✓ | ✓ | ✓ | |
Tanzu Build Service | ✓ | ✓ | ✓ | |
Tanzu Application Platform GUI | ✓ | ✓ | ✓ | |
Tekton | ✓ | ✓ | ✓ | ✓ |
Installation of a profile happens via the tap.tanzu.vmware.com
package. The tap.tanzu.vmware.com
package installs predefined sets of packages based on the chosen profile setting.
To install a profile:
-
List version information for the package by running:
tanzu package available list tap.tanzu.vmware.com --namespace tap-install
-
Create a
tap-values.yml
using the following sample as a guide. Select a profile to install by changing theprofile
value.# e.g. full, dev-light, shared-tools, operator-light profile: full buildservice: tanzunet_username: "<TANZUNET-USERNAME>" tanzunet_password: "<TANZUNET-PASSWORD>" rw_app_registry: # e.g. index.docker.io/some-user/apps # e.g. us-east4-docker.pkg.dev/some-project-id/test-private-repo/apps server_repo: "<SERVER-REPO>" username: "<USERNAME>" password: "<PASSWORD>" ootb_supply_chain_basic: service_account: service-account learning_center: ingressDomain: "<DOMAIN-NAME>" # e.g. educates.example.com tap_gui: service_type: LoadBalancer
To view possible configuration settings, run:
tanzu package available get tap.tanzu.vmware.com/0.3.0-build.5 --values-schema --namespace tap-install
Note that currently
tap.tanzu.vmware.com
package does not show all configuration settings for packages it plans to install. To find them out, look at individual package configuration settings via sametanzu package available get
command (e.g. for CNRs usetanzu package available get -n tap-install cnrs.tanzu.vmware.com/1.0.3 --values-schema
). Replace dashes with underscores. For example, if the package name iscloud-native-runtimes
, usecloud_native_runtimes
in thetap-values
YAML file.profile: full buildservice: # ... rw_app_registry: # ... # e.g. CNRs specific values would go under its name cloud_native_runtimes: provider: local # e.g. App Accelerator specific values would go under its name app_accelerator: service_type: "ClusterIP"
(Refer to Install components document for package specific configuration.)
-
Install the package by running:
tanzu package install tap -p tap.tanzu.vmware.com -v 0.3.0-build.5 --values-file tap-values.yml -n tap-install
-
Verify the package install by running:
tanzu package installed get tap -n tap-install
This may take 5-10mins as it will install number of packages on your cluster.
-
Verify all the necessary packages in the profile are installed by running:
tanzu package installed list -A
-
(Optional) Install any additional packages that were not included in your profile.
To install Tanzu Application Platform GUI, see the following sections.
- Git repository for the software catalogs and a token allowing read access.
Supported Git infrastructure includes:
- GitHub
- GitLab
- Azure DevOps
- Blank Software Catalog from the Tanzu Application section of Tanzu Network
To install Tanzu Application Platform GUI:
-
Extract the Blank Software Catalog from the Tanzu Application Network on your Git repository of choice. You'll link to that
catalog-info.yaml
file when you configure your catalog below. -
Obtain you the
External IP
of your LoadBalancer viakubectl get svc -n tap-gui
. -
Add the below section to your
tap-values.yml
using the below template. Replace all<PLACEHOLDERS>
with your relevant values.tap_gui: service_type: LoadBalancer # Existing tap-values.yml above app-config: app: baseUrl: http://<EXTERNAL-IP>:7000 integrations: github: # Other integrations available see NOTE below - host: github.com token: <GITHUB-TOKEN> catalog: locations: - type: url target: https://<GIT-CATALOG-URL>/catalog-info.yaml backend: baseUrl: http://<EXTERNAL-IP>:7000 cors: origin: http://<EXTERNAL-IP>:7000
Where:
<EXTERNAL-IP>
is your LoadBalancer's address.<GITHUB-TOKEN>
is a valid token generated from your Git infrastructure of choice with the necessary read permissions for the catalog definition files you extracted from the Blank Software Catalog.<GIT-CATALOG-URL>
is the path to thecatalog-info.yaml
catalog definition file from either the included Blank catalog (provided as an additional download named "Blank Tanzu Application Platform GUI Catalog") or a Backstage compliant catalog that you've already built and posted on the Git infrastucture that you specified in the Integration section.
Note: The
integrations
section uses Github. If you want additional integrations, see the format in this Backstage integration documentation. -
Update the package profile by running:
tanzu package installed update tap \ --package-name tap.tanzu.vmware.com \ --version 0.3.0 -n tap-install \ -f tap-values.yml
For example:
$ tanzu package installed update tap -p tap.tanzu.vmware.com -v 0.3.0 --values-file tap-values-file.yml -n tap-install | Updating package 'tap' | Getting package install for 'tap' | Getting package metadata for 'tap.tanzu.vmware.com' | Updating secret 'tap-tap-install-values' | Updating package install for 'tap' / Waiting for 'PackageInstall' reconciliation for 'tap' Updated package install 'tap' in namespace 'tap-install'
-
To access Tanzu Application Platform GUI, use the
<EXTERNAL-IP>
you exposed in theservice_type
above. If you have any issues, please try re-creating the Tanzu Application Platform pod with:kubectl delete pod -l app=backstage -n tap-gui