2.5. SiteConfig Operator を使用してシングルノード OpenShift クラスターをインストールする
デフォルトのインストールテンプレートを使用して、SiteConfig Operator でクラスターをインストールします。手順を完了するには、Image-Based Install Operator のインストールテンプレートを使用します。
必要なアクセス権: クラスター管理者
2.5.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- GitOps ZTP を使用している場合は、GitOps ZTP 環境を設定します。環境を設定するには、GitOps ZTP 用のハブクラスターの準備 を参照してください。
- デフォルトのインストールテンプレートが必要です。デフォルトテンプレートの詳細は、デフォルトのテンプレートセット を参照してください。
基盤となる任意の Operator をインストールして設定します。
- シングルノード OpenShift の Image Based Install Operator の詳細とインストール方法は、Image Based Install Operator を参照してください。
- Assisted Installer をインストールするには、Assisted Installer を使用してオンプレミスクラスターをインストールする を参照してください。
SiteConfig Operator を使用してクラスターをインストールするには、次の手順を実行します。
2.5.2. ターゲット namespace を作成する リンクのコピーリンクがクリップボードにコピーされました!
プルシークレット、BMC シークレット、追加のマニフェスト ConfigMap オブジェクト、および ClusterInstance カスタムリソースを作成する場合は、ターゲット namespace が必要です。
ターゲット namespace を作成するには、次の手順を実行します。
ターゲット namespace の YAML ファイルを作成します。
clusterinstance-namespace.yamlという名前の次のサンプルファイルを参照してください。apiVersion: v1 kind: Namespace metadata: name: example-sno
apiVersion: v1 kind: Namespace metadata: name: example-snoCopy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルを適用してリソースを作成します。ハブクラスターで以下のコマンドを実行してください。
oc apply -f clusterinstance-namespace.yaml
oc apply -f clusterinstance-namespace.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.3. プルシークレットを作成する リンクのコピーリンクがクリップボードにコピーされました!
クラスターがコンテナーレジストリーからイメージをプルできるようにするには、プルシークレットが必要です。プルシークレットを作成するには、次の手順を実行します。
イメージをプルするための YAML ファイルを作成します。
pull-secret.yamlという名前のファイルの次の例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルを適用してリソースを作成します。ハブクラスターで以下のコマンドを実行してください。
oc apply -f pull-secret.yaml
oc apply -f pull-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.4. BMC シークレットを作成する リンクのコピーリンクがクリップボードにコピーされました!
ベースボード管理コントローラー (BMC) に接続するにはシークレットが必要です。シークレットを作成するには、次の手順を実行します。
BMC シークレットの YAML ファイルを作成します。
example-bmc-secret.yamlという名前の次のサンプルファイルを参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
namespace値がターゲット namespace と一致していることを確認します。
ファイルを適用してリソースを作成します。ハブクラスターで以下のコマンドを実行してください。
oc apply -f example-bmc-secret.yaml
oc apply -f example-bmc-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.5. オプション: 追加のマニフェストを作成する リンクのコピーリンクがクリップボードにコピーされました!
ClusterInstance カスタムリソースで参照する必要がある追加のマニフェストを作成できます。追加のマニフェストを作成するには、次の手順を実行します。
追加のマニフェスト
ConfigMapオブジェクトの YAML ファイル (例:enable-crun.yaml) を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
namespace値がターゲット namespace と一致していることを確認します。
ハブクラスターで次のコマンドを実行してリソースを作成します。
oc apply -f enable-crun.yaml
oc apply -f enable-crun.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.6. インストールマニフェストをレンダリングする リンクのコピーリンクがクリップボードにコピーされました!
ClusterInstance カスタムリソース内のテンプレートとサポートマニフェストを参照します。デフォルトクラスターおよびノードテンプレートを使用してインストールマニフェストをレンダリングするには、次の手順を実行します。
次の例のように、
example-snonamespace でclusterinstance-ibi.yamlという名前のClusterInstanceカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
ClusterInstanceカスタムリソース内のnamespaceが、定義したターゲットの namespace と一致していることを確認します。- 2
- オプション: シングルノード OpenShift クラスターをスケールアウトまたはスケールインする場合は、
spec.clusterTypeフィールドを"SNO"に設定する必要があります。 - 3
- 1 つ以上の追加マニフェスト
ConfigMapオブジェクトのnameを参照します。 - 4
- プルシークレットの
nameを参照します。 - 5
ClusterInstanceカスタムリソースのclusterNameフィールドの値がnamespaceフィールドの値と一致していることを確認します。- 6
spec.templateRefsフィールドでクラスターレベルのテンプレートのnameを参照してください。デフォルトのインストールテンプレートを使用している場合は、namespaceを Operator がインストールされている namespace と一致させる必要があります。- 7
- BMC シークレットの
nameを参照します。 - 8
spec.nodes.templateRefsフィールドでノードレベルのテンプレートのnameを参照してください。デフォルトのインストールテンプレートを使用している場合は、namespaceを Operator がインストールされている namespace と一致させる必要があります。
次のコマンドを実行してファイルを適用し、リソースを作成します。
oc apply -f clusterinstance-ibi.yaml
oc apply -f clusterinstance-ibi.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow カスタムリソースを作成すると、SiteConfig Operator は
ClusterInstanceカスタムリソースの調整を開始してからインストールマニフェストを検証してレンダリングします。SiteConfig Operator は、
ClusterDeploymentカスタムリソースの変更を継続的に監視し、対応するClusterInstanceカスタムリソースのクラスターインストールの進捗を更新します。次のコマンドを実行してプロセスを監視します。
oc get clusterinstance <cluster_name> -n <target_namespace> -o yaml
oc get clusterinstance <cluster_name> -n <target_namespace> -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow マニフェストの生成が成功すると、
status.conditionsセクションの出力が次の例のようになります。message: Applied site config manifests reason: Completed status: "True" type: RenderedTemplatesApplied
message: Applied site config manifests reason: Completed status: "True" type: RenderedTemplatesAppliedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、SiteConfig Operator がレンダリングしたマニフェストを確認します。
oc get clusterinstance <cluster_name> -n <target_namespace> -o jsonpath='{.status.manifestsRendered}'oc get clusterinstance <cluster_name> -n <target_namespace> -o jsonpath='{.status.manifestsRendered}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ステータス条件の詳細は、ClusterInstance API を参照してください。