ワークロード クラスターの標準パッケージ PackageInstall (PKGi) を VKS アドオンに移行する方法
search cancel

ワークロード クラスターの標準パッケージ PackageInstall (PKGi) を VKS アドオンに移行する方法

book

Article ID: 423801

calendar_today

Updated On:

Products

Tanzu Kubernetes Runtime VMware vSphere Kubernetes Service

Issue/Introduction

免責事項:これは英文の記事「How to Migrate Standard Package PackageInstall (PKGi) in Workload Clusters to VKS Addons」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

標準パッケージを PackageInstall(PKGI)として使用しているワークロード クラスタは、新しい VKS アドオン管理へ移行する必要があります。

本 KB 記事では、ワークロード クラスタ上で稼働している標準パッケージ リポジトリからインストールされた PackageInstall を、VKS アドオンの同等機能へ手動で移行する手順を説明します。

Environment

vSphere 8.X

vSphere Supervisor 8.X

VKS 3.5.0 or higher

Resolution

vSphere 8.X 環境の場合:

  1. 添付されている「pkgi-migrate.sh」スクリプトを、ワークロード クラスタのコンテキストにアクセス可能なジャンプボックスへアップロードします。


  2. シェルスクリプトの実行権限を変更します:
    chmod a+x ./pkgi-migrate.sh

     

  3. 移行対象の PKGI が存在するワークロード クラスタのコンテキストに接続します。


  4. 移行対象の PKGI を一覧表示します。後続の手順で参照するため、この出力は別途保存しておくことを推奨します:
    kubectl get pkgi -A

    移行不要な、自動的にインストールされるシステム PKGI:

    • antrea
    • vsphere-pv-csi
    • vsphere-cpi
    • kapp-controller
    • guest-cluster-auth-service
    • metrics-server
    • gateway-api
    • secretgen-controller
    • pinniped
    • calico
    • csi-proxy(KR 1.34 で非推奨)
    • capabilities(KR 1.31 で非推奨)


  5. 移行対象の PKGI に対してスクリプトを実行します。以下のコマンド内の山括弧 <> の値は、各 PKGI に応じて適切に置き換えてください:
    ./pkgi-migrate.sh -c <workload cluster name> -s <PKGI namespace> -p <PKGI name>

     

 

vSphere 9.X 環境の場合:

  1. VCF CLI を使用してワークロード クラスタのコンテキストに接続します:
    vcf context list
    
    vcf context use <workload cluster context>

     

  2. 移行対象の PKGI を一覧表示します。後続の手順で参照するため、この出力は別途保存しておくことを推奨します:
    vcf package installed list -A
    • 移行不要な、自動的にインストールされるシステム PKGI:

      • antrea
      • vsphere-pv-csi
      • vsphere-cpi
      • kapp-controller
      • guest-cluster-auth-service
      • metrics-server
      • gateway-api
      • secretgen-controller
      • pinniped
      • calico
      • csi-proxy(KR 1.34 で非推奨)
      • capabilities(KR 1.31 で非推奨)

  3. 該当する場合、PKGI のデータ値ファイルをファイルとして保存します:
    vcf package installed get <package name> -n <package namespace> --values-file-output <values filename>.out

    PKGI がデフォルト値のみを使用している場合、上記ファイルは空になります。

  4. VCF CLI を使用して、ワークロード クラスタのネームスペースを指定した Supervisor クラスタのコンテキストに接続します:
    vcf context use <supervisor-context>:<workload cluster namespace>

     

  5. 利用可能なすべての VKS アドオンを一覧表示します:
    vcf addon available list

     

  6. 対象の VKS アドオンおよび利用可能なバージョンを確認します:
    vcf addon available list <addon name>

     

  7. PKGI のパッケージ名と、移行先となる VKS アドオン名およびバージョンを指定して、VKS アドオンへの移行を実行します。
    PKGI のデータ値ファイルが空の場合は、-f フラグを省略できます:
    vcf addon install migrate <package name> --addon-name <addon name> --cluster-name <workload cluster name> -v <addon version> -f <data values filename>.out

     

  8. VKS アドオンへの移行結果を確認および検証します:
    vcf addon install list --cluster-name <workload cluster name>

    Ready=True の状態のアドオンは、移行が正常に完了し、問題なく動作していることを示します。
    Ready=False の状態のアドオンについては、トラブルシューティングのために以下のセクションを確認してください。

Additional Information

VKS アドオン移行に関するトラブルシューティング

移行が失敗した場合、または VKS アドオンが Ready=False の状態のままの場合は、以下のトラブルシューティング手順を参照してください。

  1. ワークロード クラスタのネームスペースを指定して、Supervisor クラスタのコンテキストに接続します:
    vcf context use <supervisor-context>:<workload cluster namespace>

     

  2. インストールされている VKS アドオンの一覧を確認します:
    vcf addon install list --cluster-name <workload cluster name>

    移行した PKGI が上記一覧に表示されない場合は、「vcf addon install migrate」コマンドが正しく実行されたかを確認し、再度実行してください。

「unable to get the Configmap」というエラーが発生した場合は、VKS アドオンを手動で作成する必要があります:

  • (該当する場合はデータ値ファイルを指定して)VKS アドオン作成コマンドを実行します:

    vcf addon install create <addon name> --cluster-name <workload cluster name> -f <data values file>.out

     

VKS アドオンが一覧に表示されているものの、Ready=False の状態のままの場合:

  • (該当する場合はデータ値ファイルを指定して)インストールを更新します:
    vcf addon install update <addon name> --cluster-name <workload cluster> -f <data values file>.out

     

  • VKS アドオンのステータスおよび詳細を確認します:
    vcf addon install get <addon name> --cluster-name <workload cluster name>

     

(任意) 設定の正確性を確認するため、AddonConfig リソースを検証します:

  • ワークロード クラスタのネームスペース内に存在するすべての addonConfig を一覧表示します:
    kubectl get AddonConfig -n <workload cluster namespace>

     

  • addonConfig の YAML を表示します:
    kubectl get AddonConfig <addonconfig name> -n <workload cluster namespace> -o yaml