パスワードを使用して、vmware-system-user としてワークロード クラスタ ノードに SSH 接続できます。

パスワードを使用して、vmware-system-user ユーザーとしてクラスタ ノードに接続できます。パスワードは、CLUSTER-NAME-ssh-password という名前のシークレットとして保存されます。パスワードは .data.ssh-passwordkey に base64 でエンコードされています。SSH セッションを介してパスワードを指定できます。Kubectl を使用した TKG クラスタ シークレットの取得を参照してください。

前提条件

SSH 接続を適切なワークロード ネットワークにルーティングするには、 [ワークロード管理] が有効な vSphere 環境に Linux ジャンプ ホスト仮想マシンをデプロイします。 Linux ジャンプ ホスト仮想マシンの作成を参照してください。
注: vDS ネットワークを使用しており、SSH を使用してクラスタ ノードに接続する場合は、ジャンプ ホスト仮想マシンをデプロイすることが困難な場合があります。プライベート キーの代わりにパスワードを使用して SSH 接続すると、NSX ネットワークでもこの方法を使用できます。

手順

  1. ジャンプ ホスト仮想マシンの IP アドレス、ユーザー名、およびパスワードを取得します。
  2. スーパーバイザー に接続します。
  3. ターゲット TKG クラスタがプロビジョニングされている vSphere 名前空間 にコンテキストを切り替えます。
    kubectl config use-context VSPHERE-NAMESPACE
  4. ターゲット クラスタ ノードの IP アドレスを取得します。
    ノードを一覧表示します。
    kubectl get virtualmachines
    ターゲット ノードの IP アドレスを取得するノードを記述します。
    kubectl describe virtualmachines
  5. TKG-CLUSTER-NAME-ssh-password シークレットを表示します。
    kubectl get secrets
  6. ターゲット クラスタの ssh-passwordkey を取得します。
    kubectl get secrets TKG-CLUSTER-NAME-ssh-password -o yaml
    たとえば、ssh-passwordkey が返されます。
    apiVersion: v1
    data:
      ssh-passwordkey: RU1pQllLTC9TRjVFV0RBcCtmd1zwOTROeURYSWNGeXNReXJhaXRBUllYaz0=
    
  7. ssh-passwordkey をデコードします。
    シークレットは Base64 でエンコードされています。デコードするには、Linux の場合は base64 --decode(または base64 -d)、MacOS の場合は base64 --Decode(または base64 -D)、Windows の場合は オンライン ツールを使用します。
    echo <ssh-passwordkey> | base64 --decode
  8. ターゲット クラスタ ノードに vmware-system-user として SSH 接続します。
    ssh vmware-system-user@TKG-CLUSTER-NODE-IP-ADDRESS
  9. デコードしたパスワードを使用してログインします。