19.12. ZTP カスタムリソース
ゼロ変更プロビジョニング (ZTP) はカスタムリソース (CR) オブジェクトを使用して Kubernetes API を拡張するか、または独自の API をプロジェクトまたはクラスターに導入します。これらの CR には、RAN アプリケーションのクラスターのインストールおよび設定に必要なサイト固有のデータが含まれます。
カスタムリソース定義 (CRD) ファイルは、独自のオブジェクトの種類を定義します。CRD をマネージドクラスターにデプロイすると、Kubernetes API サーバーはライフサイクル全体で指定された CR を提供し始めます。
マネージドクラスターの <site>.yaml
ファイルの各 CR について、ZTP はデータを使用してクラスターに設定されたディレクトリーにインストール CR を作成します。
ZTP は、マネージドクラスターでの CR の定義とインストールの方法の 2 つの方法を提供します。これは、単一のクラスターをプロビジョニングする際の手動アプローチと、複数のクラスターをプロビジョニングする際の自動アプローチです。
- 単一クラスターの手動 CR の作成
- 単一クラスターの CR を作成する際に、この方法を使用します。これは、より大きなスケールにデプロイする前に CR をテストするのに適した方法です。
- 複数のマネージドクラスターの自動 CR 作成
- 複数のマネージドクラスターをインストールする場合 (たとえば、最大 100 個のクラスターでバッチ処理) する場合は、自動 SiteConfig メソッドを使用します。SiteConfig は、サイトデプロイメントの GitOps メソッドのエンジンとして ArgoCD を使用します。デプロイメントに必要なすべてのパラメーターが含まれるサイトプランの完了後に、ポリシージェネレーターはマニフェストを作成し、それらをハブクラスターに適用します。
どちらのメソッドも、以下の表に示されている CR を作成します。クラスターサイトでは、自動検出イメージ ISO ファイルは、サイト名とクラスター名のファイルを含むディレクトリーを作成します。すべてのクラスターには独自の namespace があり、すべての CR はその namespace の下にあります。namespace および CR 名はクラスター名に一致します。
リソース | 説明 | 使用法 |
---|---|---|
| ターゲットのベアメタルホストの Baseboard Management Controller (BMC) の接続情報が含まれています。 | Redfish プロトコルを使用して、ターゲットサーバーで Discovery イメージ ISO を読み込んで起動するために BMC へのアクセスを提供します。 |
| OpenShift Container Platform をターゲットのベアメタルホストにプルするための情報が含まれています。 | ClusterDeployment で使用され、マネージドクラスターの Discovery ISO を生成します。 |
|
ネットワークやスーパーバイザー (コントロールプレーン) ノードの数などのマネージドクラスターの設定を指定します。インストールの完了時に | マネージドクラスターの設定情報を指定し、クラスターのインストール時にステータスを指定します。 |
|
使用する |
マネージドクラスターの Discovery ISO を生成するために |
|
| マネージドクラスターの Kube API サーバーの静的 IP アドレスを設定します。 |
| ターゲットのベアメタルホストに関するハードウェア情報が含まれています。 | ターゲットマシンの Discovery イメージの ISO の起動時に、ハブ上に自動的に作成されます。 |
| クラスターがハブで管理されている場合は、インポートして知られている必要があります。この Kubernetes オブジェクトはそのインターフェイスを提供します。 | ハブは、このリソースを使用してマネージドクラスターのステータスを管理し、表示します。 |
|
|
|
|
ハブ上にある |
リソースを |
|
|
|
| リポジトリーおよびイメージ名などの OpenShift Container Platform イメージ情報が含まれます。 | OpenShift Container Platform イメージを提供するためにリソースに渡されます。 |