vCloud Usage MeterTanzu Kubernetes Grid の製品使用量データを計測するには、Tanzu Kubernetes Grid 管理クラスタを計測対象に追加する必要があります。

前提条件

  • Tanzu Kubernetes Grid 管理クラスタに関連付けられている vCenter Server インスタンスが vCenter Server インスタンスの vCloud Usage Meter リストに含まれていることを確認します。
  • Tanzu Kubernetes Grid でサービス アカウント計測ユーザーを設定して、ベアラー トークンを取得します。詳細については、『Tanzu Kubernetes Grid 管理クラスタのベアラー トークンの取得』を参照してください。

手順

  1. vCloud Usage Meter Web インターフェイスのメイン メニュー バーで [製品] をクリックします。
  2. 左側のペインで、[クラウド] > [Tanzu Kubernetes Grid マルチクラウド] に移動します。
  3. [追加] をクリックします。
    [Tanzu Kubernetes Grid マルチクラウド (TKGm) の追加] ウィザードが開きます。
  4. [vCenter Server エンドポイント] ドロップダウン メニューで、Tanzu Kubernetes Grid 管理クラスタに関連付けられている vCenter Server インスタンスの IP アドレスを選択します。
  5. [エンドポイント] テキスト ボックスに、管理クラスタに含まれる制御プレーン仮想マシンのホスト名または IP アドレスを入力します。
    注: 以下の要素について検討します。
    • ロード バランサの IP アドレスは、ターゲット ノードに応じて証明書をローテーションします。ロード バランサの IP アドレスを入力する場合は、vCloud Usage Meter が製品使用量データを収集するたびに製品証明書を受け入れる必要があります。
    • クラスタのスケール ダウン中に制御プレーン仮想マシンが削除されないようにします。
  6. [ベアラー トークン] テキスト ボックスに、Tanzu Kubernetes Grid 管理クラスタから取得するベアラー トークンを入力します。
  7. [エディション] ドロップダウン メニューで、Tanzu Kubernetes Grid のエディションを選択します。
    • 基本
    • Standard
    • Advanced
  8. [メトリック] ドロップダウン メニューで、vCloud Usage Meter が vRAM または CPU コアに基づいて計測する必要があるかどうかを選択します。

結果

これで、 vCloud Usage Meter が計測する管理クラスタに Tanzu Kubernetes Grid が追加されました。エラーが発生すると、管理クラスタの Tanzu Kubernetes Grid リストの [ステータス] 列にエラー メッセージが表示されます。

Tanzu Kubernetes Grid 管理クラスタのベアラー トークンの取得

Tanzu Kubernetes Grid 管理クラスタを計測対象として追加するには、ベアラー トークンを取得する必要があります。

Tanzu Kubernetes Grid 管理クラスタのベアラー トークンを取得するには、クラスタ ロールを持つサービス計測ユーザーを設定する必要があります。ユーザーおよびクラスタ ロール用に 2 つの個別の YAML ファイルを作成する必要があります。

前提条件

Tanzu Kubernetes Grid 管理クラスタの認証情報を取得します。詳細については、『VMware Tanzu Kubernetes Grid 1.5 Documentation』の「Retrieve Tanzu Kubernetes Cluster kubeconfig」を参照してください。

手順

  1. YAML ファイルを作成し、ユーザー メタデータを入力します。
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: user
      namespace: tkg-system
  2. 作成したユーザーを使用して Tanzu Kubernetes Grid 管理クラスタのリソースを更新するには、次のコマンドを実行します。
    kubectl apply -f user-filename.yaml
  3. クラスタ ロールをユーザーに付与するには、YAML ファイルを作成します。
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: user
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: cluster-admin
    subjects:
      - kind: ServiceAccount
        name: user
        namespace: tkg-system
  4. ユーザーに付与したクラスタ ロールを使用して Tanzu Kubernetes Grid 管理クラスタのリソースを更新するには、次のコマンドを実行します。
    kubectl apply -f user-role-filename.yaml
  5. tkg-system 名前空間内のすべてのシークレットを一覧表示します。
    kubectl get secret -n tkg-system
    tkg-system 名前空間内のすべてのシークレットのリストを表示できます。作成されたベアラー トークンの名前パターンは user-token-Kubernetes-generated-string です。タイプは kubernetes.io/service-account-token です。ここで、 user は入力したユーザーの名前で、 Kubernetes-generated-string はベアラー トークンを一意に識別する、Kubernetes システムによって生成された文字列です。
  6. ベアラー トークンを取得するには、次のコマンドを実行します。
    kubectl get secret user-token-Kubernetes-generated-string -o yaml -n tkg-system
  7. ベアラー トークンをデコードします。
    echo bearer-token | base64 --decode