ワークロード クラスタのマシン健全性チェックの管理

このトピックでは、Tanzu Kubernetes Grid によって作成されたワークロード クラスタの MachineHealthCheck オブジェクトを作成、更新、取得、および削除するために Tanzu コマンド ライン インターフェイス (CLI) を使用する方法について説明します。

詳細については、「Tanzu CLI コマンド リファレンス」の「tanzu cluster machinehealthcheck」を参照してください。

制御プレーン ノードとワークロード ノードの両方でマシン健全性チェックをサポートするため、Tanzu CLI v1.6 以降は、tanzu cluster machinehealthcheck set/get/delete コマンドを、tanzu cluster machinehealthcheck control-plane set/get/delete および tanzu cluster machinehealthcheck node set/get/delete コマンドに置き換えます。tanzu cluster machinehealthcheck set/get/delete コマンドは廃止され、今後のリリースで削除される予定です。

MachineHealthCheck について

MachineHealthCheck は、マシンの健全性監視と自動修復を提供するコントローラです。これは、すべての管理クラスタおよびワークロード クラスタ内の制御プレーン ノードとワーカー ノードの両方に対して自動的に有効になります。クラスタを展開するときにコントローラが有効になっている場合、Tanzu Kubernetes Grid は、クラスタ内に 2 つのデフォルトの MachineHealthCheck オブジェクトを作成します。1 つは制御プレーン ノード用、もう 1 つはワーカー ノード用です。これらのオブジェクトは、クラスタと同じ名前空間に作成されます。

コントローラを無効にした場合、「MachineHealthCheck オブジェクトの作成または更新」に記載されているコマンドを使用して、コントローラを再度有効にすることができます。これらのコマンドを使用して、既存の MachineHealthCheck オブジェクトを更新することもできます。

MachineHealthCheck オブジェクトの作成または更新

デフォルトの MachineHealthCheck オブジェクトを作成するには、次の手順を実行します。

  • クラスタの制御プレーンの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME
    
  • クラスタのワーカー ノードの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME
    

ここで、

  • CLUSTER-NAME はターゲット クラスタの名前です。
  • MHC-NAME は、MachineHealthCheck オブジェクトに対して選択した名前です。指定しない場合、名前は CLUSTER-NAME に設定されます。これらのコマンドを両方とも実行している場合は、--mhc-name を指定する必要があります。

上記のコマンドを使用して、カスタマイズされた MachineHealthCheck オブジェクトを作成したり、既存の MachineHealthCheck オブジェクトを更新したりすることもできます。MachineHealthCheck オブジェクトをカスタマイズまたは更新するには、次のフラグを 1 つ以上指定できます。

  • --match-labels:このオプションは、ラベルのキーと値によってマシンをフィルタリングします。1 つまたは複数のラベルの制約を指定できます。MachineHealthCheck オブジェクトは、指定された制約を満たすすべてのマシンに適用されます。キーと値のペアの形式を次のように設定します。

    tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
    tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
    
  • --node-startup-timeout:このオプションは、MachineHealthCheck コントローラが、マシンのクラスタへの参加を待機してから、マシンの健全性を良好でないと判断するまでの時間を制御します。たとえば、次のコマンドは、--node-startup-timeout オプションを 21m に設定します。

    tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --node-startup-timeout 21m
    tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --node-startup-timeout 21m
    

    マシンが指定時間内にクラスタへ参加できなかった場合、MachineHealthCheck コントローラによってマシンが再作成されます。

  • --unhealthy-conditions:このオプションは、ReadyMemoryPressureDiskPressurePIDPressure、および NetworkUnavailable 条件を設定できます。MachineHealthCheck コントローラは、制御プレーン ノードとワーカー ノードの健全性を監視するために設定した条件を使用します。条件のステータスを設定するには、TrueFalse、または Unknown を使用します。例:

    tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
    tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
    

    上記の例では、Ready 条件を False:5m および Unknown:5m に設定しています。マシンが 5m 以上 Unknown または False 状態のままになると、MachineHealthCheck コントローラはマシンの健全性が良好でないと見なし、マシンを再作成します。

MachineHealthCheck オブジェクトの取得

MachineHealthCheck オブジェクトを取得するには、次の手順を実行します。

  • ターゲット クラスタの制御プレーンの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck control-plane get CLUSTER-NAME --mhc-name MHC-NAME
    

    オブジェクトがデフォルト名で作成された場合は、--mhc-name フラグを省略できます。

  • ターゲット クラスタのワーカー ノードの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck node get CLUSTER-NAME --mhc-name MHC-NAME
    

    オブジェクトがデフォルト名で作成された場合は、--mhc-name フラグを省略できます。

MachineHealthCheck オブジェクトの削除

MachineHealthCheck オブジェクトを削除するには、次の手順を実行します。

  • ターゲット クラスタの制御プレーンの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck control-plane delete CLUSTER-NAME --mhc-name MHC-NAME
    

    オブジェクトがデフォルト名で作成された場合は、--mhc-name フラグを省略できます。

  • ターゲット クラスタのワーカー ノードの場合は、次のコマンドを実行します。

    tanzu cluster machinehealthcheck node delete CLUSTER-NAME --mhc-name MHC-NAME
    

    オブジェクトがデフォルト名で作成された場合は、--mhc-name フラグを省略できます。

check-circle-line exclamation-circle-line close-line
Scroll to top icon