IBM Cloud Docs
Ingress の状況に ERRAHCF エラーが表示されるのはなぜですか?

Ingress の状況に 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 からの応答の取得に関する問題を報告します。

アクセス制御リストを調べて、ヘルス・トラフィックが許可されていることを確認してください。

  1. 以下のコマンドを使用して、クラスター ALB をリストします。

    ibmcloud ks ingress alb ls
    
  2. ロードバランサのアドレスをメモしておいてください。

    • VPC クラスター:「 Load Balancer Hostname 」列のアドレスをメモします。
    • クラシック・クラスター: ALB IP 列のアドレスをメモします。
  3. 以下のコマンドを実行してクラスタの詳細を取得する。 Ingress サブドメインをメモします。

    ibmcloud ks cluster get
    
  4. 以下のコマンドを実行して、ALB がヘルス要求に応答することを確認します。 先ほど取得したロード・バランサーのアドレスと Ingress サブドメインを入力します。

    curl -k https://LOAD-BALANCER-ADDRESS -H "Host: albhealth.INGRESS-SUBDOMAIN"
    
  5. ヘルス・チェッカー・アプリケーションと ALB の間の通信をブロックしているファイアウォール・ルールまたはアクセス制御リストがないことを確認します。

    • VPC クラスター:
      • ヘルス・チェック・トラフィックは、クラスターのいずれかのワーカー・ノードから発信されます。 パブリック ALB の場合、トラフィックは VPC ロード・バランサー・インスタンスのパブリック浮動 IP アドレスに送信されるため、すべてのワーカー・サブネットに Public Gateway を接続する必要があります。 プライベート ALB の場合、トラフィックは VPC ロード・バランサーの VPC サブネット IP アドレスに送信されるため、 Public Gateway は必要ありません。
      • VPC ロード・バランサーがクラスターのワーカー・ノード以外のサブネットに配置されている場合は、VPC ロード・バランサー・サブネットに接続されているセキュリティー・グループを更新して、ワーカー・サブネットからの着信トラフィックを許可する必要があります。
      • 詳しくは、VPC セキュリティー・グループによるトラフィックの制御を参照してください。
    • クラシック・クラスター:
  6. 10 分から 15 分待って、問題が解決されたかどうかを確認します。

  7. 問題が解決しない場合は、サポートにお問い合わせください。 サポート Case を開きます。 ケースの詳細には、関連するログ・ファイル、エラー・メッセージ、またはコマンド出力を必ず含めてください。

ALB ヘルス・チェックを使用しない場合は、 ibmcloud ks ingress alb health-checker disable コマンド を実行して、ヘルス・チェッカー・アプリケーションを削除できます。