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

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

前提条件

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

手順

  1. ジャンプ ホスト仮想マシンの IP アドレス、ユーザー名、およびパスワードを取得します。Linux ジャンプ ホスト仮想マシンの作成を参照してください。
  2. スーパーバイザー クラスタ に接続します。
  3. ターゲット Tanzu Kubernetes クラスタがプロビジョニングされている vSphere 名前空間 にコンテキストを切り替えます。
    kubectl config use-context VSPHERE-NAMESPACE
  4. ターゲット クラスタ ノードの IP アドレスを取得します。
    ノードを一覧表示します。
    kubectl get virtualmachines
    ターゲット ノードの IP アドレスを取得するノードを記述します。
    kubectl describe virtualmachines
  5. TKGS-CLUSTER-NAME-ssh-password シークレットを表示します。
    kubectl get secrets
  6. ターゲット クラスタの ssh-passwordkey を取得します。
    kubectl get secrets TKGS-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@TKGS-CLUSTER-NODE-IP-ADDRESS
  9. デコードしたパスワードを使用してログインします。