証明書管理用の cert-manager のインストール

このトピックでは、Tanzu Kubernetes Grid のワークロード クラスタに cert-manager をインストールする方法について説明します。cert-manager は、スタンドアローン管理クラスタに自動的にインストールされます。

このトピックは、vSphere、Amazon Web Services (AWS)、Azure で実行されているワークロード クラスタに適用されます。

cert-manager をインストールするためのワークロード クラスタの準備

クラスタを準備するには、次の手順を実行します。

  1. cert-manager を展開するワークロード クラスタの管理者認証情報を取得します。例:

    tanzu cluster kubeconfig get my-cluster --admin
    
  2. kubectl のコンテキストをクラスタに設定します。例:

    kubectl config use-context my-cluster-admin@my-cluster
    

cert-manager のインストール

cert-manager をインストールするには、次の手順を実行します。

  1. vSphere 上の単一ノード クラスタ」の説明に従って cert-manager を単一ノード クラスタにインストールする場合は、cert-manager パッケージの注釈にパッチを適用して、単一ノード クラスタにコア パッケージとしてインストールされた cert-manager と Tanzu cert-manager リポジトリの standard との間の競合を回避します。

    kubectl annotate --overwrite package cert-manager.tanzu.vmware.com.1.10.1+vmware.1-tkg.1 tkg.tanzu.vmware.com/package-repo='standard'
    
  2. クラスタに cert-manager パッケージがインストールされたパッケージ リポジトリ(tanzu-standard リポジトリなど)がない場合は、次のいずれかをインストールします。

    tanzu package repository add PACKAGE-REPO-NAME --url PACKAGE-REPO-ENDPOINT --namespace tkg-system
    

    ここで、

    • PACKAGE-REPO-NAME はパッケージ リポジトリの名前です。tanzu-standard や、ADDITIONAL_IMAGE_REGISTRY 変数で構成されたプライベート イメージ レジストリの名前が入ります。
    • PACKAGE-REPO-ENDPOINT はパッケージ リポジトリの URL です。

      • このリリースでは、tanzu-standard の URL は projects.registry.vmware.com/tkg/packages/standard/repo:v2023.10.16 です。Tanzu CLI からこの値を取得するには、「パッケージ リポジトリの一覧表示」を参照してください。また、Tanzu Mission Control では [クラスタ (Cluster)] ペインの [アドオン (Addons)] > [リポジトリ (Repositories)] リストを参照してください。
  3. cert-manager パッケージがワークロード クラスタで使用可能であることを確認します。

    tanzu package available list -A
    
  4. 使用可能なパッケージのバージョンを取得します。

    tanzu package available list cert-manager.tanzu.vmware.com -A
    
  5. cert-manager パッケージをインストールします。

    tanzu package install cert-manager --package cert-manager.tanzu.vmware.com --namespace TARGET-NAMESPACE --version AVAILABLE-PACKAGE-VERSION
    

    ここで、

    • TARGET-NAMESPACE は、cert-manager パッケージをインストールする名前空間です。たとえば、my-packages または tanzu-cli-managed-packages 名前空間などです。

      • --namespace フラグが指定されていない場合、Tanzu CLI は default 名前空間にパッケージをインストールします。
      • 指定された名前空間は、たとえば kubectl create namespace my-packages を実行することによってすでに存在している必要があります。
    • AVAILABLE-PACKAGE-VERSION は、上で取得したバージョンです。

    例:

    tanzu package install cert-manager --package cert-manager.tanzu.vmware.com --namespace my-packages --version 1.10.1+vmware.1-tkg.1
    
  6. cert-manager パッケージがインストールされていることを確認します。

    tanzu package installed list -A
    

    cert-manager パッケージと cert-manager アプリケーションは、tanzu package install コマンドの実行時に指定した名前空間にインストールされます。

  7. cert-manager アプリケーションが TARGET-NAMESPACE で正常に調整されていることを確認します。例:

    kubectl get apps -A
    NAMESPACE     NAME             DESCRIPTION           SINCE-DEPLOY   AGE
    my-packages   cert-manager     Reconcile succeeded   3m2s           3m12s
    ...
    

    ステータスが Reconcile Succeeded でない場合は、cert-manager アプリケーションの完全なステータスの詳細を表示します。完全なステータスを表示すると、問題のトラブルシューティングに役立ちます。

    kubectl get app cert-manager --namespace TARGET-NAMESPACE -o yaml
    

    ここで、TARGET-NAMESPACE は、パッケージをインストールした名前空間です。トラブルシューティングを行っても問題を解決できない場合は、パッケージをアンインストールしてから再度インストールする必要があります。

    tanzu package installed delete cert-manager --namespace TARGET-NAMESPACE
    
  8. cert-manager- ポッドが実行されていることを確認します。

    kubectl get pods -A
    

    cert-manager ポッドと、cert-manager コンポーネントに関連付けられているその他のリソースは、cert-manager 名前空間に作成されます。

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