IK.AM

@making's tech note


Tanzu Kubernetes Gridのパッケージを任意のKubernetesで試す

🗃 {Dev/CaaS/Kubernetes/TKG}
🏷 Kubernetes 🏷 TKG 🏷 Tanzu 🏷 Carvle 🏷 kind 
🗓 Updated at 2023-09-01T09:07:21Z  🗓 Created at 2023-09-01T09:07:21Z   🌎 English Page

⚠️ 本記事の内容はVMwareによってサポートされていません。 記事の内容で生じた問題については自己責任で対応し、 VMwareサポート窓口には問い合わせないでください

Tanzu Kubernetes Gridで提供されているパッケージをTKG以外のK8s(kindなど)で検証したい時のセットアップメモ

Kapp Controller, Secretgen Controllerのインストール

とりあえず執筆時点での最新版をインストール。TKGと同じバージョンを使いたければ https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/2.3/tkg-deploy-mc/mgmt-release-notes.html#component-versions-10 と同じバージョンを選ぶ。

kubectl apply -f https://github.com/carvel-dev/kapp-controller/releases/download/v0.47.0/release.yml
kubectl apply -f https://github.com/carvel-dev/secretgen-controller/releases/download/v0.14.10/release.yml

Tanzu CLIのインストール

https://github.com/vmware-tanzu/tanzu-cli/blob/main/docs/quickstart/install.md

brew install vmware-tanzu/tanzu/tanzu-cli
$ tanzu version
version: v1.0.0
buildDate: 2023-08-08
sha: 006d0429

プラグインのインストール

tanzu plugin install --group vmware-tkg/default:v2.3.0
$ tanzu plugin list                                            
Standalone Plugins
  NAME                DESCRIPTION                                                        TARGET      VERSION  STATUS     
  isolated-cluster    Prepopulating images/bundle for internet-restricted environments   global      v0.30.1  installed  
  pinniped-auth       Pinniped authentication operations (usually not directly invoked)  global      v0.30.1  installed  
  telemetry           configure cluster-wide settings for vmware tanzu telemetry         global      v1.1.0   installed  
  management-cluster  Kubernetes management cluster operations                           kubernetes  v0.30.1  installed  
  package             Tanzu package management                                           kubernetes  v0.30.1  installed  
  secret              Tanzu secret management                                            kubernetes  v0.30.1  installed  
  telemetry           configure cluster-wide settings for vmware tanzu telemetry         kubernetes  v0.30.1  installed 

tanzu standard packages repositoryの追加

https://docs.vmware.com/en/VMware-Tanzu-Kubernetes-Grid/2.3/using-tkg/workload-packages-ref.html#add-repository

tanzu package repository add tanzu-standard --url projects.registry.vmware.com/tkg/packages/standard/repo:v2023.7.13 --namespace tkg-system --create-namespace 
$ tanzu package available list -n tkg-system --wide

  NAME                                            DISPLAY-NAME                   SHORT-DESCRIPTION                                                                 
  whereabouts.tanzu.vmware.com                    whereabouts                    A CNI IPAM plugin that assigns IP addresses cluster-wide                          
  fluxcd-source-controller.tanzu.vmware.com       Flux Source Controller         The source-controller is a Kubernetes operator, specialised in artifacts          
                                                                                 acquisition from external sources such as Git, Helm repositories and S3 buckets.  
  grafana.tanzu.vmware.com                        grafana                        Visualization and analytics software                                              
  harbor.tanzu.vmware.com                         harbor                         OCI Registry                                                                      
  multus-cni.tanzu.vmware.com                     multus-cni                     This package provides the ability for enabling attaching multiple network         
                                                                                 interfaces to pods in Kubernetes                                                  
  prometheus.tanzu.vmware.com                     prometheus                     A time series database for your metrics                                           
  cert-manager.tanzu.vmware.com                   cert-manager                   Certificate management                                                            
  external-dns.tanzu.vmware.com                   external-dns                   This package provides DNS synchronization functionality.                          
  external-csi-snapshot-webhook.tanzu.vmware.com  external-csi-snapshot-webhook  CSI Snapshot validation webhook                                                   
  contour.tanzu.vmware.com                        contour                        An ingress controller                                                             
  fluent-bit.tanzu.vmware.com                     fluent-bit                     Fluent Bit is a fast Log Processor and Forwarder                                  
  fluxcd-helm-controller.tanzu.vmware.com         Flux Helm Controller           Helm controller is one of the components in FluxCD GitOps toolkit.                
  fluxcd-kustomize-controller.tanzu.vmware.com    Flux Kustomize Controller      Kustomize controller is one of the components in Fluxcd GitOps toolkit.           
$ kubectl get package -n tkg-system
NAME                                                                      PACKAGEMETADATA NAME                             VERSION                      AGE
cert-manager.tanzu.vmware.com.1.1.0+vmware.1-tkg.2                        cert-manager.tanzu.vmware.com                    1.1.0+vmware.1-tkg.2         1m0s
cert-manager.tanzu.vmware.com.1.7.2+vmware.1-tkg.1                        cert-manager.tanzu.vmware.com                    1.7.2+vmware.1-tkg.1         1m0s
cert-manager.tanzu.vmware.com.1.7.2+vmware.3-tkg.1                        cert-manager.tanzu.vmware.com                    1.7.2+vmware.3-tkg.1         1m0s
fluxcd-source-controller.tanzu.vmware.com.0.24.4+vmware.2-tkg.1           fluxcd-source-controller.tanzu.vmware.com        0.24.4+vmware.2-tkg.1        1m0s
fluxcd-source-controller.tanzu.vmware.com.0.33.0+vmware.2-tkg.1           fluxcd-source-controller.tanzu.vmware.com        0.33.0+vmware.2-tkg.1        1m0s
grafana.tanzu.vmware.com.7.5.16+vmware.1-tkg.1                            grafana.tanzu.vmware.com                         7.5.16+vmware.1-tkg.1        1m0s
grafana.tanzu.vmware.com.7.5.17+vmware.1-tkg.2                            grafana.tanzu.vmware.com                         7.5.17+vmware.1-tkg.2        1m0s
grafana.tanzu.vmware.com.7.5.7+vmware.1-tkg.1                             grafana.tanzu.vmware.com                         7.5.7+vmware.1-tkg.1         1m0s
grafana.tanzu.vmware.com.7.5.7+vmware.2-tkg.1                             grafana.tanzu.vmware.com                         7.5.7+vmware.2-tkg.1         1m0s
grafana.tanzu.vmware.com.9.5.1+vmware.2-tkg.1                             grafana.tanzu.vmware.com                         9.5.1+vmware.2-tkg.1         1m0s
multus-cni.tanzu.vmware.com.3.7.1+vmware.2-tkg.1                          multus-cni.tanzu.vmware.com                      3.7.1+vmware.2-tkg.1         1m0s
multus-cni.tanzu.vmware.com.3.7.1+vmware.2-tkg.2                          multus-cni.tanzu.vmware.com                      3.7.1+vmware.2-tkg.2         1m0s
multus-cni.tanzu.vmware.com.3.8.0+vmware.1-tkg.1                          multus-cni.tanzu.vmware.com                      3.8.0+vmware.1-tkg.1         1m0s
harbor.tanzu.vmware.com.2.8.2+vmware.2-tkg.1                              harbor.tanzu.vmware.com                          2.8.2+vmware.2-tkg.1         1m0s
multus-cni.tanzu.vmware.com.3.7.1+vmware.1-tkg.1                          multus-cni.tanzu.vmware.com                      3.7.1+vmware.1-tkg.1         1m0s
multus-cni.tanzu.vmware.com.3.8.0+vmware.3-tkg.1                          multus-cni.tanzu.vmware.com                      3.8.0+vmware.3-tkg.1         1m0s
multus-cni.tanzu.vmware.com.4.0.1+vmware.1-tkg.1                          multus-cni.tanzu.vmware.com                      4.0.1+vmware.1-tkg.1         1m0s
multus-cni.tanzu.vmware.com.3.8.0+vmware.2-tkg.2                          multus-cni.tanzu.vmware.com                      3.8.0+vmware.2-tkg.2         1m0s
prometheus.tanzu.vmware.com.2.27.0+vmware.1-tkg.1                         prometheus.tanzu.vmware.com                      2.27.0+vmware.1-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.27.0+vmware.2-tkg.1                         prometheus.tanzu.vmware.com                      2.27.0+vmware.2-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.36.2+vmware.1-tkg.1                         prometheus.tanzu.vmware.com                      2.36.2+vmware.1-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.37.0+vmware.1-tkg.1                         prometheus.tanzu.vmware.com                      2.37.0+vmware.1-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.37.0+vmware.2-tkg.1                         prometheus.tanzu.vmware.com                      2.37.0+vmware.2-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.37.0+vmware.3-tkg.1                         prometheus.tanzu.vmware.com                      2.37.0+vmware.3-tkg.1        1m0s
prometheus.tanzu.vmware.com.2.43.0+vmware.2-tkg.1                         prometheus.tanzu.vmware.com                      2.43.0+vmware.2-tkg.1        1m0s
whereabouts.tanzu.vmware.com.0.5.4+vmware.1-tkg.1                         whereabouts.tanzu.vmware.com                     0.5.4+vmware.1-tkg.1         1m0s
whereabouts.tanzu.vmware.com.0.5.1+vmware.2-tkg.1                         whereabouts.tanzu.vmware.com                     0.5.1+vmware.2-tkg.1         1m0s
cert-manager.tanzu.vmware.com.1.7.2+vmware.3-tkg.3                        cert-manager.tanzu.vmware.com                    1.7.2+vmware.3-tkg.3         1m0s
whereabouts.tanzu.vmware.com.0.6.1+vmware.2-tkg.1                         whereabouts.tanzu.vmware.com                     0.6.1+vmware.2-tkg.1         1m0s
whereabouts.tanzu.vmware.com.0.5.4+vmware.2-tkg.1                         whereabouts.tanzu.vmware.com                     0.5.4+vmware.2-tkg.1         1m0s
external-csi-snapshot-webhook.tanzu.vmware.com.6.1.0+vmware.1-tkg.1       external-csi-snapshot-webhook.tanzu.vmware.com   6.1.0+vmware.1-tkg.1         1m0s
contour.tanzu.vmware.com.1.24.4+vmware.1-tkg.1                            contour.tanzu.vmware.com                         1.24.4+vmware.1-tkg.1        1m0s
external-dns.tanzu.vmware.com.0.10.0+vmware.1-tkg.1                       external-dns.tanzu.vmware.com                    0.10.0+vmware.1-tkg.1        1m0s
external-dns.tanzu.vmware.com.0.10.0+vmware.1-tkg.2                       external-dns.tanzu.vmware.com                    0.10.0+vmware.1-tkg.2        1m0s
external-dns.tanzu.vmware.com.0.10.0+vmware.1-tkg.6                       external-dns.tanzu.vmware.com                    0.10.0+vmware.1-tkg.6        1m0s
external-dns.tanzu.vmware.com.0.11.0+vmware.1-tkg.2                       external-dns.tanzu.vmware.com                    0.11.0+vmware.1-tkg.2        1m0s
fluent-bit.tanzu.vmware.com.1.7.5+vmware.1-tkg.1                          fluent-bit.tanzu.vmware.com                      1.7.5+vmware.1-tkg.1         1m0s
external-dns.tanzu.vmware.com.0.11.0+vmware.1-tkg.6                       external-dns.tanzu.vmware.com                    0.11.0+vmware.1-tkg.6        1m0s
fluent-bit.tanzu.vmware.com.1.7.5+vmware.2-tkg.1                          fluent-bit.tanzu.vmware.com                      1.7.5+vmware.2-tkg.1         1m0s
fluent-bit.tanzu.vmware.com.1.8.15+vmware.1-tkg.1                         fluent-bit.tanzu.vmware.com                      1.8.15+vmware.1-tkg.1        1m0s
fluent-bit.tanzu.vmware.com.1.9.5+vmware.1-tkg.2                          fluent-bit.tanzu.vmware.com                      1.9.5+vmware.1-tkg.2         1m0s
fluent-bit.tanzu.vmware.com.2.1.2+vmware.1-tkg.1                          fluent-bit.tanzu.vmware.com                      2.1.2+vmware.1-tkg.1         1m0s
fluxcd-helm-controller.tanzu.vmware.com.0.21.0+vmware.1-tkg.1             fluxcd-helm-controller.tanzu.vmware.com          0.21.0+vmware.1-tkg.1        1m0s
fluxcd-helm-controller.tanzu.vmware.com.0.21.0+vmware.1-tkg.3-ctrl        fluxcd-helm-controller.tanzu.vmware.com          0.21.0+vmware.1-tkg.3-ctrl   1m0s
fluxcd-helm-controller.tanzu.vmware.com.0.28.1+vmware.1-tkg.2             fluxcd-helm-controller.tanzu.vmware.com          0.28.1+vmware.1-tkg.2        1m0s
external-dns.tanzu.vmware.com.0.12.2+vmware.5-tkg.2                       external-dns.tanzu.vmware.com                    0.12.2+vmware.5-tkg.2        1m0s
external-dns.tanzu.vmware.com.0.13.4+vmware.2-tkg.1                       external-dns.tanzu.vmware.com                    0.13.4+vmware.2-tkg.1        1m0s
fluxcd-kustomize-controller.tanzu.vmware.com.0.32.0+vmware.1-tkg.2        fluxcd-kustomize-controller.tanzu.vmware.com     0.32.0+vmware.1-tkg.2        1m0s
fluxcd-kustomize-controller.tanzu.vmware.com.0.24.4+vmware.1-tkg.3-ctrl   fluxcd-kustomize-controller.tanzu.vmware.com     0.24.4+vmware.1-tkg.3-ctrl   1m0s
cert-manager.tanzu.vmware.com.1.5.3+vmware.2-tkg.1                        cert-manager.tanzu.vmware.com                    1.5.3+vmware.2-tkg.1         1m0s
cert-manager.tanzu.vmware.com.1.1.0+vmware.2-tkg.1                        cert-manager.tanzu.vmware.com                    1.1.0+vmware.2-tkg.1         1m0s
cert-manager.tanzu.vmware.com.1.11.1+vmware.1-tkg.1                       cert-manager.tanzu.vmware.com                    1.11.1+vmware.1-tkg.1        1m0s
cert-manager.tanzu.vmware.com.1.5.3+vmware.7-tkg.1                        cert-manager.tanzu.vmware.com                    1.5.3+vmware.7-tkg.1         1m0s
cert-manager.tanzu.vmware.com.1.5.3+vmware.4-tkg.1                        cert-manager.tanzu.vmware.com                    1.5.3+vmware.4-tkg.1         59s
cert-manager.tanzu.vmware.com.1.5.3+vmware.7-tkg.3                        cert-manager.tanzu.vmware.com                    1.5.3+vmware.7-tkg.3         59s
fluxcd-kustomize-controller.tanzu.vmware.com.0.24.4+vmware.1-tkg.1        fluxcd-kustomize-controller.tanzu.vmware.com     0.24.4+vmware.1-tkg.1        59s

cert-manager packageのインストール

tanzu package install cert-manager --package cert-manager.tanzu.vmware.com --namespace tkg-system --version 1.7.2+vmware.3-tkg.1
$ kubectl get pod -n cert-manager
NAME                                       READY   STATUS    RESTARTS   AGE
cert-manager-cainjector-8454b57678-69k8m   1/1     Running   0          98s
cert-manager-fcb84754d-rfksd               1/1     Running   0          98s
cert-manager-webhook-6977b86c79-d229c      1/1     Running   0          98s

contour packageのインストール

cat <<EOF > contour-values.yaml
---
contour:
  replicas: 1
envoy:
  service:
    type: LoadBalancer
---
EOF
tanzu package install contour --package contour.tanzu.vmware.com --namespace tkg-system --version 1.24.4+vmware.1-tkg.1 --values-file contour-values.yaml
$ kubectl get pod -n tanzu-system-ingress
NAME                       READY   STATUS    RESTARTS   AGE
contour-5dc89f55fc-c8qzf   1/1     Running   0          79s
envoy-7hq8v                2/2     Running   0          79s

✒️️ Edit  ⏰ History  🗑 Delete