2.2. コントロールプレーンフェンシング

以前のリリースでは、ワーカーノードでセルフノード修復とノードヘルスチェックを有効にすることができました。ノード障害が発生した場合、コントロールプレーンノードの修復戦略に従うこともできるようになりました。

自己ノード修復は、主に 2 つのシナリオで発生します。

  • API サーバー接続

    • このシナリオでは、修復されるコントロールプレーンノードは分離されていません。API サーバーに直接接続することも、API サーバーに直接接続されているワーカーノードまたはコントロールプレーンノードを介して API サーバーに間接的に接続することもできます。
    • API サーバー接続がある場合、コントロールプレーンノードは、Node Health Check Operator がノードの SelfNodeRemediation カスタムリソース (CR) を作成した場合にのみ修復されます。
  • API サーバー接続なし

    • このシナリオでは、修復されるコントロールプレーンノードは API サーバーから分離されています。ノードは API サーバーに直接または間接的に接続できません。
    • API サーバー接続がない場合、コントロールプレーンノードは次の手順で説明されているように修正されます。

      • ピアワーカーノードの大部分を含むコントロールプレーンノードのステータスを確認します。ピアワーカーノードの大部分に到達できない場合、ノードはさらに分析されます。

        • コントロールプレーンノードのステータスを自己診断する

          • 自己診断に合格した場合、アクションは実行されません。
          • 自己診断に失敗した場合、ノードは隔離され、修復されます。
          • 現在サポートされている自己診断では、kubelet サービスのステータスをチェックし、opt in 設定を使用してエンドポイントの可用性をチェックしています。
      • ノードがほとんどのワーカーピアと通信できなかった場合は、コントロールプレーンノードと他のコントロールプレーンノードとの接続を確認します。ノードが他のコントロールプレーンピアと通信できる場合、アクションは実行されません。それ以外の場合、ノードは隔離され、修正されます。