このセクションは、TKG クラスタ接続の問題とログイン エラーのトラブルシューティングを実行する際に使用します。

権限不足エラー

vSphere 名前空間 に関して必要な権限がない場合は、vCenter Single Sign-On ユーザーとして スーパーバイザー または TKG クラスタに接続できません。

vCenter Single Sign-On ユーザーとして スーパーバイザー または TKG クラスタに接続しようとすると、kubectl 向けの vSphere プラグイン から「Error from server (Forbidden)」というエラー メッセージが返されます。

vSphere 名前空間 に対する十分なロール権限がないか、ユーザー アカウントにアクセス権が付与されていません。

操作しているユーザーが、クラスタを運用している DevOps エンジニアである場合は、vSphere 名前空間編集 権限が自分に付与されているか vSphere 管理者に確認してください。操作しているユーザーが、クラスタを使用してワークロードをデプロイしている開発者である場合は、クラスタへのアクセス権が自分に付与されているかクラスタ管理者に確認してください。

Kubectl vSphere ログイン エラー

kubectl 向けの vSphere プラグイン を使用して スーパーバイザー または TKG クラスタにログインしようとしたときに、次のエラーが表示される場合は、ログイン エラーが原因である可能性があります。
Failed to get available workloads, response from the server was invalid.
ログイン エラーをトラブルシューティングするには、 -v=10 を使用して、より詳細なログ出力を取得します。
kubectl vsphere login --server=10.110.150.56 --vsphere-username [email protected] -v=10
たとえば、次に示すのは、詳細出力を使用して invalid or missing credentials エラーを表示したものです。
DEBU[0000] User passed verbosity level: 10
DEBU[0000] Setting verbosity level: 10
DEBU[0000] Setting request timeout:
DEBU[0000] login called as: /usr/local/bin/kubectl-vsphere login --server=10.110.150.56 --vsphere-username [email protected] -v=10
DEBU[0000] Creating wcp.Client for --server=10.110.150.56.
INFO[0000] Does not appear to be a vCenter or ESXi address.
DEBU[0000] Got response:
INFO[0000] Using [email protected] as username.
DEBU[0000] Env variable KUBECTL_VSPHERE_PASSWORD is present
DEBU[0000] Error while getting list of workloads: invalid or missing credentials
FATA[0000] Failed to get available workloads, response from the server was invalid.

スーパーバイザー への SSH 接続

ログイン エラーをトラブルシューティングするには、 スーパーバイザー に SSH で接続することが必要な場合があります。
注意: スーパーバイザー 制御プレーン ノードに SSH 接続すると、 スーパーバイザー クラスタを永続的に破損させる権限が付与されます。VMware のサポートは、ユーザーが スーパーバイザー 制御プレーン ノードから スーパーバイザー コンポーネントに変更を加えたという証拠を検出した場合、 スーパーバイザー クラスタをサポート対象外としてマークし、 vSphere IaaS control plane ソリューションの再デプロイをユーザーに求める可能性があります。このセッションは、ネットワークのテスト、ログの確認、kubectl logs/get/describe コマンドの実行にのみ使用してください。KB または VMware のサポートによる特別な許可がない場合は、このセッションから何らかの項目をデプロイ、削除、編集しないでください。
スーパーバイザー 制御プレーン ノードに SSH 接続するには、次の手順を実行します。
  1. root ユーザー アカウントを使用して vCenter Server にログインします。
  2. データセンター CLI を対話モードで使用するには、dcli +i と入力します。
  3. コマンド namespacemanagement software clusters list を実行して、スーパーバイザー のステータスを取得します。
  4. exit と入力して dcli シェルを終了します。
  5. shell と入力して Bash シェル モードを開始します。
  6. /usr/lib/vmware-wcp/decyptK8Pwd.py と入力して スーパーバイザー の IP アドレスとパスワードを取得します。
  7. ssh 10.100.150.56 と入力して SSH で スーパーバイザー に接続し、例の IP アドレスを前のコマンドで返された IP アドレスに置き換えます。