イングレスエラー:ERRAHCF
仮想プライベートクラウド クラシック・インフラストラクチャー
ibmcloud ks ingress status-report ignored-errors add コマンドを使用して、無視されたエラーのリストにエラーを追加することができます。 無視されたエラーは、 ibmcloud ks ingress status-report get コマンドの出力には引き続き表示されますが、Ingress 全体の状況を計算する際には無視されます。
ibmcloud ks ingress status-report get コマンドを実行してクラスターの Ingress コンポーネントの状況を確認すると、以下の例のようなエラーが表示されます。
The ALB is unable to respond to health requests (ERRAHCF).
IBM Cloud Kubernetes Service は、ALB が HTTPS リクエストに応答できるかどうかをチェックするアプリケーションをクラスタにデプロイします。 アプリケーションは、クラスター上の 1 つ以上の ALB からの応答の取得に関する問題を報告します。
アクセス制御リストを調べて、ヘルス・トラフィックが許可されていることを確認してください。
-
以下のコマンドを使用して、クラスター ALB をリストします。
ibmcloud ks ingress alb ls -
ロードバランサーのアドレスをメモしておいてください。
- VPC クラスター:「
Load Balancer Hostname」列のアドレスをメモします。 - クラシック・クラスター:
ALB IP列のアドレスをメモします。
- VPC クラスター:「
-
次のコマンドを実行して、クラスタの詳細情報を取得してください。 Ingress サブドメインをメモします。
ibmcloud ks cluster get -
以下のコマンドを実行して、ALB がヘルス要求に応答することを確認します。 先ほど取得したロード・バランサーのアドレスと Ingress サブドメインを入力します。
curl -k https://LOAD-BALANCER-ADDRESS -H "Host: albhealth.INGRESS-SUBDOMAIN" -
ヘルス・チェッカー・アプリケーションと ALB の間の通信をブロックしているファイアウォール・ルールまたはアクセス制御リストがないことを確認します。
- VPC クラスター:
- ヘルス・チェック・トラフィックは、クラスターのいずれかのワーカー・ノードから発信されます。 パブリック ALB の場合、トラフィックは VPC ロード・バランサー・インスタンスのパブリック浮動 IP アドレスに送信されるため、すべてのワーカー・サブネットに Public Gateway を接続する必要があります。 プライベート ALB の場合、トラフィックは VPC ロード・バランサーの VPC サブネット IP アドレスに送信されるため、 Public Gateway は必要ありません。
- VPC ロード・バランサーがクラスターのワーカー・ノード以外のサブネットに配置されている場合は、VPC ロード・バランサー・サブネットに接続されているセキュリティー・グループを更新して、ワーカー・サブネットからの着信トラフィックを許可する必要があります。
- 詳細については、 「デフォルトでセキュアなクラスタVPCネットワークについて 」および「 VPCセキュリティグループの作成と管理 」を参照してください。
- クラシック・クラスター:
- アカウント VRF(Virtual Router Forwarding)が 有効になっていることを確認してください。 ヘルス・チェック・トラフィックはクラスターを離れませんが、1 つのノードから別のノードに送信される可能性があります。 ネットワーク・ポリシーがこのトラフィックをブロックしていないことを確認してください。
- 詳しくは、 クラシック・クラスターでのネットワーク・ポリシーを使用したトラフィックの制御 を参照してください。
- VPC クラスター:
-
10 分から 15 分待って、問題が解決されたかどうかを確認します。
-
問題が解決しない場合は、サポートにお問い合わせください。 サポート Case を開きます。 ケースの詳細には、関連するログ・ファイル、エラー・メッセージ、またはコマンド出力を必ず含めてください。
ALB ヘルス・チェックを使用しない場合は、 ibmcloud ks ingress alb health-checker disable コマンド を実行して、ヘルス・チェッカー・アプリケーションを削除できます。