プリフライト チェックについて理解する

ベアメタル版 Anthos クラスタでは、さまざまな状況でプリフライト チェックを実行できます。

  • ベアメタル版 Anthos クラスタは、bmctl を使用して管理クラスタ、ハイブリッド クラスタ、スタンドアロン クラスタ、ユーザー クラスタ、ノードプール リソースを作成または更新する際、プリフライト チェックを実行します。チェックで不合格になると、何も行われません。また、こうしたチェックをバイパスすることもできます。
  • ベアメタル版 Anthos クラスタでは、管理者クラスタやハイブリッド クラスタから Kubernetes リソースをユーザー クラスタに適用するときに、内部のプリフライト チェックも実行されます。このチェックは、影響を受けるユーザー クラスタに変更が実際に適用される前に実行されます。チェックで不合格になると、何も行われません。これらのチェックをバイパスすることも、明示的に実行することもできます。

bmctl を使用したクラスタ作成時のプリフライト チェック

bmctl コマンドを使用して 管理ハイブリッドスタンドアロン、またはユーザー クラスタを作成すると、変更が行われる前に、ベアメタル版 Anthos クラスタがプリフライト チェックを自動的に実行します。

チェックに合格すると、ベアメタル版 Anthos でクラスタが作成されます。

自動プリフライト チェックの結果を無視する

自動化されたプリフライト チェックをバイパスする場合は、コマンドでオプションの --force フラグを使用します。

プリフライト チェックを個別に実行する

クラスタを作成する前にプリフライト チェックを自動的に実行することもできます。マシンとノードのリソースが確実にチェックに合格するため時間を節約できます。

  • 次のコマンドは、指定されたクラスタ構成ファイルを検証しますが、クラスタ自体の作成は行いません。

    bmctl check config --cluster CLUSTER_NAME
    

    CLUSTER_NAME は、確認中の構成ファイルのクラスタの名前に置き換えます。

  • このコマンドは、マシンとネットワークにクラスタを作成する準備が整っているかどうかを確認します。

    bmctl check preflight --cluster CLUSTER_NAME
    

    CLUSTER_NAME は、確認するクラスタの名前に置き換えます。

ユーザー クラスタ作成に対するプリフライト チェック

既存の管理クラスタまたはハイブリッド クラスタからユーザー クラスタが作成されます。ベアメタル版 Anthos クラスタでは、変更前にプリフライト チェックを自動的に実行します。また、クラスタを作成する前に bmctl でプリフライト チェックを実行することもできます。

  • 次のコマンドは、指定されたクラスタ構成ファイルを検証しますが、クラスタ自体の作成は行いません。

    bmctl check config --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

    CLUSTER_NAME を確認するユーザー クラスタの名前に置き換え、ADMIN_KUBECONFIG_PATH を関連する管理クラスタの kubeconfig ファイルへのパスに置き換えます。

  • このコマンドは、マシンとネットワークにクラスタを作成する準備が整っているかどうかを確認します。

    bmctl check preflight --cluster CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
    

bmctl では、--admin-kubeconfig フラグのエイリアスとして --kubeconfig の使用がサポートされます。

既存のクラスタに対する内部プリフライト チェック

ベアメタル版 Anthos クラスタでは、Kubernetes リソースを既存のクラスタに適用する際に、内部プリフライト チェックも行われます。チェックが失敗した場合、特にチェックをバイパスしない限り、ベアメタル版 Anthos クラスタが関連するノードを変更することはありません。

Kubernetes リソース適用時のプリフライト チェックをバイパスする

既存のクラスタにリソースを適用する際に内部プリフライト チェックを無視する場合は、クラスタ YAML ファイルの BypassPreflightCheck フィールドを true に設定する必要があります。

以下は、クラスタ構成 YAML ファイルの一部ですが、bypassPreflightCheck フィールドが true に設定されています。

# Sample cluster config to bypass preflight check errors:

apiVersion: v1
kind: Namespace
metadata:
  name: cluster-user1
---
apiVersion: baremetal.cluster.gke.io/v1
kind: Cluster
metadata:
  name: user1
  namespace: cluster-user1
spec:
  type: user
  bypassPreflightCheck: true
  # Anthos cluster version.
  anthosBareMetalVersion: 1.9.8
....

インストールのプリフライト チェックの詳細

ベアメタル版 Anthos クラスタは、プリフライト チェックを実行する際にさまざまなオペレーティング システム、ソフトウェア、マシンの前提条件をチェックします。

詳細については、インストールの前提条件の概要をご覧ください。