第12章 Cluster API によるマシンの管理

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

Cluster API は、Amazon Web Services (AWS) および Google Cloud Platform (GCP) クラスターのテクノロジープレビューとして OpenShift Container Platform に統合されるアップストリームプロジェクトです。クラスター API を使用して、OpenShift Container Platform クラスターでコンピュートマシンセットとマシンを作成および管理できます。この機能は、Machine API を使用してマシンを管理するための追加または代替の機能になります。

OpenShift Container Platform 4.12 クラスターの場合、クラスター API を使用して、クラスターのインストールが完了した後にノードホストのプロビジョニング管理アクションを実行できます。このシステムにより、パブリックまたはプライベートクラウドインフラストラクチャー上で柔軟かつ動的な方法でプロビジョニングできます。

Cluster API テクノロジープレビューを使用すると、サポートされているプロバイダーの OpenShift Container Platform クラスター上にコンピュートマシンおよびコンピュートマシンセットを作成できます。Machine API では利用できない可能性がある、この実装によって有効になる機能も確認できます。

利点

Cluster API を使用することで、OpenShift Container Platform ユーザーおよび開発者には以下の利点がもたらされます。

  • Machine API でサポートされていない可能性があるアップストリームコミュニティーの Cluster API インフラストラクチャープロバイダーを使用するオプション。
  • インフラストラクチャープロバイダーのマシンコントローラーを保守するサードパーティーと協力する機会。
  • OpenShift Container Platform でのインフラストラクチャー管理に一連の同じ Kubernetes ツールを使用する機能。
  • Machine API では利用できない機能をサポートする Cluster API を使用してコンピュートマシンセットを作成する機能。

制限事項

Cluster API を使用したマシン管理はテクノロジープレビュー機能であり、次の制限があります。

  • サポート対象は AWS および GCP クラスターのみです。
  • この機能を使用するには、TechPreviewNoUpgrade 機能セット を有効にする必要があります。この機能セットを有効にすると元に戻すことができなくなり、マイナーバージョン更新ができなくなります。
  • クラスター API が必要とするプライマリーリソースを手動で作成する必要があります。
  • コントロールプレーンマシンは、Cluster API では管理できません。
  • Machine API によって作成された既存のマシンセットの、Cluster API コンピュートマシンセットへの移行はサポートされていません。
  • Machine API との完全な機能パリティーは利用できません。

12.1. Cluster API アーキテクチャー

アップストリーム Cluster API の OpenShift Container Platform 統合は、Cluster CAPI Operator によって実装および管理されます。Cluster CAPI Operator とそのオペランドは、openshift-machine-api namespace を使用する Machine API とは対照的に、openshift-cluster-api namespace でプロビジョニングされます。

12.1.1. Cluster CAPI Operator

Cluster CAPI Operator は、Cluster API リソースのライフサイクルを維持する OpenShift Container Platform Operator です。この Operator は、OpenShift Container Platform クラスター内での Cluster API プロジェクトのデプロイに関連するすべての管理タスクを行います。

Cluster API の使用を許可するようにクラスターが正しく設定されている場合、Cluster CAPI Operator は Cluster API Operator をクラスターにインストールします。

注記

Cluster CAPI Operator は、アップストリームの Cluster API Operator とは異なります。

詳細については、Cluster Operators リファレンス コンテンツの Cluster CAPI Operator のエントリーを参照してください。

関連情報

12.1.2. クラスター API のプライマリーリソース

Cluster API は、次のプライマリーリソースで設定されています。この機能のテクノロジープレビューでは、openshift-cluster-api namespace でこれらのリソースを手動で作成する必要があります。

クラスター
Cluster API によって管理されるクラスターを表す基本単位。
インフラストラクチャー
リージョンやサブネットなど、クラスター内のすべてのコンピュートマシンセットで共有されるプロパティーを定義するプロバイダー固有のリソース。
マシンテンプレート
コンピュートマシンセットが作成するマシンのプロパティーを定義するプロバイダー固有のテンプレート。
マシンセット

マシンのグループ。

コンピュートマシンセットは、レプリカセットと Pod の関係としてマシンに対して行われます。マシンを追加する必要がある場合や、マシンの数を縮小したりする必要がある場合コンピュートニーズに応じてコンピュートマシンセットの replicas フィールドを変更します。

Cluster API を使用すると、コンピュートマシンセットは Cluster オブジェクトとプロバイダー固有のマシンテンプレートを参照します。

マシン

ノードのホストを記述する基本的なユニットです。

Cluster API は、マシンテンプレートの設定に基づいてマシンを作成します。