Tanzu Community Edition

Documentation

Getting Started with Unmanaged Clusters

This guide walks you through standing up an unmanaged cluster using Tanzu CLI.

Before You Begin

Review Plan Your Deployment.

Install Tanzu CLI

The tanzu CLI is used for deploying and managing Tanzu Community Edition. Choose your operating system below for guidance on installation.

Linux System Requirements

ArchitectureCPURAMRequired software
x86_64 / amd6412 GBDocker engine

Package Manager

Homebrew

  1. Install using Homebrew.

    brew install vmware-tanzu/tanzu/tanzu-community-edition
    
  2. Run the configure command displayed after Homebrew completes installation.

    {HOMEBREW-INSTALL-LOCATION}/configure-tce.sh
    

    This puts all the Tanzu plugins in the correct location. The first time you run the tanzu command the installed plugins and plugin repositories are initialized. This action might take a minute.

Direct Download

If you prefer to not use a package manager, you can download releases on GitHub. Download and unpack the release for your operating system. Then, run the script install.sh (Linux/Mac) or install.bat (Windows).

Mac System Requirements

ArchitectureCPURAMRequired software
x86_64 / AMD64 / ARM6412 GBDocker Desktop

Note: ARM64 support is experimental. Some packages might not install due to their ARM64 image not being available.

Package Manager

Homebrew

  1. Install using Homebrew.

    brew install vmware-tanzu/tanzu/tanzu-community-edition
    
  2. Run the configure command displayed after Homebrew completes installation.

    {HOMEBREW-INSTALL-LOCATION}/configure-tce.sh
    

    This puts all the Tanzu plugins in the correct location. The first time you run the tanzu command the installed plugins and plugin repositories are initialized. This action might take a minute.

Direct Download

If you prefer to not use a package manager, you can download releases on GitHub. Download and unpack the release for your operating system. Then, run the script install.sh (Linux/Mac) or install.bat (Windows).

Windows System Requirements

ArchitectureCPURAMRequired software
x86_64 / amd6412 GBDocker Desktop

Package Manager

Chocolatey

  1. Install using chocolatey, in Powershell, as an administrator.

    choco install tanzu-community-edition
    

Direct Download

If you prefer to not use a package manager, you can download releases on GitHub. Download and unpack the release for your operating system. Then, run the script install.sh (Linux/Mac) or install.bat (Windows).

Deploy a Cluster

  1. Create a cluster named beepboop.

    tanzu unmanaged-cluster create beepboop
    

    Tip: You can use the alias uc, instead of unmanaged-cluster, in these commands.

  2. Wait for the cluster to initialize.

    📁 Created cluster directory
    
    🔧 Resolving Tanzu Kubernetes Release (TKR)
       projects.registry.vmware.com/tce/tkr:v1.21.5
       TKR exists at /home/josh/.config/tanzu/tkg/unmanaged-cluster/bom/projects.registry.vmware.com_tce_tkr_v1.21.5
       Rendered Config: /home/josh/.config/tanzu/tkg/unmanaged-cluster/beepboop/config.yaml
       Bootstrap Logs: /home/josh/.config/tanzu/tkg/unmanaged-cluster/beepboop/bootstrap.log
    
    🔧 Processing Tanzu Kubernetes Release
    
    🎨 Selected base image
       projects.registry.vmware.com/tce/kind/node:v1.21.5
    
    📦 Selected core package repository
       projects.registry.vmware.com/tkg/packages/core/repo:v1.21.2_vmware.1-tkg.1
    
    📦 Selected additional package repositories
       projects.registry.vmware.com/tce/main:0.9.1
    
    📦 Selected kapp-controller image bundle
       projects.registry.vmware.com/tkg/packages/core/kapp-controller:v0.23.0_vmware.1-tkg.1
    
    🚀 Creating cluster beepboop
       Base image downloaded
       Cluster created
       To troubleshoot, use:
       kubectl ${COMMAND} --kubeconfig /home/josh/.config/tanzu/tkg/unmanaged-cluster/beepboop/kube.conf
    
    📧 Installing kapp-controller
       kapp-controller status: Running
    
    📧 Installing package repositories
       Core package repo status: Reconcile succeeded
    
    🌐 Installing CNI
       antrea.tanzu.vmware.com:0.13.3+vmware.1-tkg.1
    
    ✅ Cluster created
    
    🎮 kubectl context set to beepboop
    
    View available packages:
       tanzu package available list
    View running pods:
       kubectl get po -A
    Delete this cluster:
       tanzu unmanaged-cluster delete beepboop
    

    A container image larger than 1GB is used for running clusters. This may cause your first cluster to take significantly longer to bootstrap than subsequent clusters.

  3. If you have kubectl installed, you can now use it to interact with the cluster.

Deploy a Package

  1. List the available package repositories.

    tanzu package repository list --all-namespaces
    
  2. Verify the STATUS is Reconcile succeeded in the output of the above command.

    NAME                 REPOSITORY                                           TAG                     STATUS               DETAILS  NAMESPACE
    tkg-core-repository  projects.registry.vmware.com/tce/main                0.9.1                   Reconcile succeeded           tanzu-package-repo-global
    tkg-core-repository  projects.registry.vmware.com/tkg/packages/core/repo  v1.21.2_vmware.1-tkg.1  Reconcile succeeded           tkg-system
    
  3. List the available packages.

    tanzu package available list
    
    NAME                                           DISPLAY-NAME        SHORT-DESCRIPTION
    cert-manager.community.tanzu.vmware.com        cert-manager        Certificate management
    contour.community.tanzu.vmware.com             Contour             An ingress controller
    external-dns.community.tanzu.vmware.com        external-dns        This package provides DNS synchronization functionality.
    fluent-bit.community.tanzu.vmware.com          fluent-bit          Fluent Bit is a fast Log Processor and Forwarder
    gatekeeper.community.tanzu.vmware.com          gatekeeper          policy management
    grafana.community.tanzu.vmware.com             grafana             Visualization and analytics software
    harbor.community.tanzu.vmware.com              Harbor              OCI Registry
    knative-serving.community.tanzu.vmware.com     knative-serving     Knative Serving builds on Kubernetes to support deploying and serving of applications and functions as serverless containers
    local-path-storage.community.tanzu.vmware.com  local-path-storage  This package provides local path node storage and primarily supports RWO AccessMode.
    multus-cni.community.tanzu.vmware.com          multus-cni          This package provides the ability for enabling attaching multiple network interfaces to pods in Kubernetes
    prometheus.community.tanzu.vmware.com          prometheus          A time series database for your metrics
    velero.community.tanzu.vmware.com              velero              Disaster recovery capabilities
    
  4. List the available versions of cert-manager.

    tanzu package available list cert-manager.community.tanzu.vmware.com
    
    NAME                                     VERSION  RELEASED-AT
    cert-manager.community.tanzu.vmware.com  1.3.3    2021-08-06 05:31:21 -0700 MST
    cert-manager.community.tanzu.vmware.com  1.4.4    2021-08-23 09:47:51 -0700 MST
    cert-manager.community.tanzu.vmware.com  1.5.3    2021-08-23 10:22:51 -0700 MST
    
  5. Install the 1.5.3 version of cert-manager.

    tanzu package install cert-manager --package-name cert-manager.community.tanzu.vmware.com --version 1.5.3
    

    If you have kubectl installed, you can now view and interact with cert-manager.

  6. Verify the package is now installed.

    tanzu package installed list
    
    NAME          PACKAGE-NAME                             PACKAGE-VERSION  STATUS
    cert-manager  cert-manager.community.tanzu.vmware.com  1.5.3            Reconcile succeeded
    
  7. If desired, you can also delete the package using:

    tanzu package installed delete cert-manager
    

Delete a Cluster

  1. List the available clusters.

    tanzu unmanaged-cluster list
    

    Tip: You can use the alias ls, instead of list, in the above command.

  2. Review the available clusters.

    NAME      PROVIDER
    beepboop  kind
    
  3. Delete the cluster.

    tanzu unmanaged-cluster delete beepboop
    

    Tip: You can use the alias rm, instead of delete, in the above command.

Next Steps

Join us!

Our open community welcomes all users and contributors

Community