次の方法で共有


API サーバーでのクラスター接続の問題に関する基本的なトラブルシューティング

この記事では、Kubernetes クラスター コマンド ライン ツール (kubectl) またはその他のツール (プログラミング言語を使用した REST API の使用など) を介してクラスターの API サーバーに到達できない場合の、Azure Kubernetes Service (AKS) クラスターへの接続の問題について説明します。

前提条件

根本原因と解決策

API サーバーへの接続の問題はさまざまな理由で発生する可能性がありますが、根本原因は、多くの場合、次のいずれかのエラーに関連しています。

  • Network
  • 認証
  • Authorization

AKS クラスターの API サーバーへの接続をチェックするには、次の一般的なトラブルシューティング手順を実行できます。

  1. Azure CLI で次の az aks show コマンドを入力します。 このコマンドは、AKS クラスターの完全修飾ドメイン名 (FQDN) を取得します。

    az aks show --resource-group <cluster-resource-group> --name <cluster-name> --query fqdn
    
  2. FQDN を使用して、ネーム サーバー参照 (nslookup)、クライアント URL (curl)、telnet コマンドを使用して、API サーバーにクライアント マシンから到達できるかどうかをチェックします。

    # Check if the DNS Resolution is working:
    $ nslookup <cluster-fqdn>  
    
    # Then check if the API Server is reachable:
    $ curl -Iv https://<cluster-fqdn>
    $ telnet <cluster-fqdn> 443
    
  3. AKS クラスターがプライベートの場合は、AKS クラスターの Azure Virtual Networkにアクセスできる仮想マシン (VM) からコマンドを実行してください。 「プライベート クラスターに接続するためのオプション」を参照してください

  4. 必要に応じて、トラブルシューティングの記事「 クライアント IP アドレスは API サーバーにアクセスできません」の手順に従って、API サーバーが承認する IP 範囲にクライアント IP アドレスを追加します。

  5. クライアント コンピューターの kubectl のバージョンが、AKS クラスターのそのツールのバージョンの背後にある 2 つ以上のマイナー バージョンではないことを確認します。 最新バージョンの kubectl をインストールするには、Azure CLI で az aks install-cli コマンドを実行します。 その後、kubectl version コマンドを実行して、新しいインストールのバージョン番号をチェックできます。

    たとえば、Linux では、次のコマンドを実行します。

    sudo az aks install-cli
    kubectl version --client
    

    他のクライアント オペレーティング システムの場合は、次 の kubectl インストール手順を使用します

  6. 必要に応じて、トラブルシューティングの記事 「接続時に構成ファイルを使用できない」の手順に従って、Kubernetes 構成ファイル (構成) が有効であり、接続時に見つけることができます。

  7. 必要に応じて、トラブルシューティングの記事「ユーザーは クラスター リソースを取得できない」の手順に従って、クラスター ノードの詳細を一覧表示できます。

  8. ファイアウォールを使用して AKS ワーカー ノードからのエグレス トラフィックを制御する場合は、ファイアウォールで AKS に最低限必要なエグレス ルールが許可されていることを確認します。

  9. AKS ノードに関連付けられているネットワーク セキュリティ グループで、AKS ノード内の TCP ポート 10250 での通信が許可されていることを確認します。

その他の一般的なトラブルシューティング手順については、「 kubectl またはその他のサードパーティ製ツールを使用して API サーバーに接続しているときに TCP タイムアウトが発生する」を参照してください。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。