2.7. SiteConfig の高度なトピック
SiteConfig Operator は、カスタうテンプレートの作成、ワークノードのスケーリング、大半のユースケースに適用する標準操作の拡張など、追加の機能を提供します。SiteConfig Operator の高度なトピックは、以下のドキュメントを参照してください。
2.7.1. SiteConfig Operator を使用してカスタムテンプレートを作成する リンクのコピーリンクがクリップボードにコピーされました!
デフォルトのテンプレートセットに用意されていないユーザー定義テンプレートを作成します。
必要なアクセス権: クラスター管理者
カスタムテンプレートを作成するには、次の手順を実行します。
ConfigMapオブジェクトにクラスターレベルのテンプレートが含まれる YAML ファイルを、my-custom-secret.yamlという名前で作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
siteconfig.open-cluster-management.io/sync-waveアノテーションは、マニフェストが作成、更新、または削除される順序を制御します。
次のコマンドを実行して、ハブクラスターにカスタムテンプレートを適用します。
oc apply -f my-custom-secret.yaml
oc apply -f my-custom-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow clusterinstance-my-custom-secret.yamlという名前のClusterInstanceカスタムリソースでテンプレートを参照します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
ClusterInstanceカスタムリソースを適用します。oc apply -f clusterinstance-my-custom-secret.yaml
oc apply -f clusterinstance-my-custom-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.2. SiteConfig Operator を使用してシングルノード OpenShift クラスターをスケーリングする リンクのコピーリンクがクリップボードにコピーされました!
SiteConfig Operator によってインストールされたマネージドクラスターをスケールインします。ワーカーノードを削除することでクラスターをスケールインできます。
必要なアクセス権: クラスター管理者
2.7.2.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- GitOps ZTP を使用している場合は、GitOps ZTP 環境が設定されている。環境を設定するには、GitOps ZTP 用のハブクラスターの準備 を参照してください。
- デフォルトテンプレートがある。デフォルトテンプレートの詳細は、デフォルトのテンプレートセット を参照してください。
- SiteConfig Operator を使用してクラスターをインストールした。SiteConfig Operator を使用してクラスターをインストールするには、SiteConfig Operator を使用してシングルノード OpenShift クラスターをインストールする を参照してください。
-
spec.clusterTypeを"SNO"に設定している。
2.7.2.2. ワーカーノードにアノテーションを追加する リンクのコピーリンクがクリップボードにコピーされました!
削除するワーカーノードにアノテーションを追加します。
マネージドクラスターからワーカーノードにアノテーションを付けるには、次の手順を実行します。
クラスターのプロビジョニングに使用される
ClusterInstanceカスタムリソースのワーカーノードエントリーのextraAnnotationsフィールドに、アノテーションを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を適用します。以下のオプションを参照してください。
- Red Hat OpenShift GitOps を使用せずに Red Hat Advanced Cluster Management を使用している場合は、ハブクラスターで次のコマンドを実行します。
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP を使用している場合は、Git リポジトリーにプッシュし、Argo CD が変更を同期するのを待ちます。
ハブクラスターで次のコマンドを実行して、アノテーションが
BaremetalHostワーカーリソースに適用されていることを確認します。oc get bmh -n <clusterinstance_namespace> worker-node2.example.com -ojsonpath='{.metadata.annotations}' | jqoc get bmh -n <clusterinstance_namespace> worker-node2.example.com -ojsonpath='{.metadata.annotations}' | jqCopy to Clipboard Copied! Toggle word wrap Toggle overflow アノテーションが正常に適用された場合の出力例を次に示します。
2.7.2.3. ワーカーノードの BareMetalHost リソースを削除する リンクのコピーリンクがクリップボードにコピーされました!
削除するワーカーノードの BareMetalHost リソースを削除します。
マネージドクラスターからワーカーノードを削除するには、次の手順を実行します。
既存の
ClusterInstanceカスタムリソースで削除するノードオブジェクトを、次の設定で更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を適用します。以下のオプションを参照してください。
- Red Hat OpenShift GitOps を使用せずに Red Hat Advanced Cluster Management を使用している場合は、ハブクラスターで次のコマンドを実行します。
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP を使用している場合は、Git リポジトリーにプッシュし、Argo CD が変更を同期するのを待ちます。
ハブクラスターで次のコマンドを実行して、
BareMetalHostリソースが削除されていることを確認します。oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>
oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com deprovisioning true 44m worker-node2.example.com powering off before delete true 20h worker-node2.example.com deleting true 50m
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com deprovisioning true 44m worker-node2.example.com powering off before delete true 20h worker-node2.example.com deleting true 50mCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハブクラスターで次のコマンドを実行して、
Agentリソースが削除されていることを確認します。oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>
oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
NAME CLUSTER APPROVED ROLE STAGE master-node1.example.com <managed_cluster_name> true master Done master-node2.example.com <managed_cluster_name> true master Done master-node3.example.com <managed_cluster_name> true master Done worker-node1.example.com <managed_cluster_name> true worker Done
NAME CLUSTER APPROVED ROLE STAGE master-node1.example.com <managed_cluster_name> true master Done master-node2.example.com <managed_cluster_name> true master Done master-node3.example.com <managed_cluster_name> true master Done worker-node1.example.com <managed_cluster_name> true worker DoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターで次のコマンドを実行して、
Nodeリソースが削除されていることを確認します。oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>
oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
ワーカーノードの
BareMetalHostオブジェクトが正常に削除されたら、ClusterInstanceリソースのspec.nodesセクションから、関連付けられたワーカーノード定義を削除します。
2.7.3. SiteConfig Operator を使用してシングルノードの OpenShift クラスターをスケールアウトする リンクのコピーリンクがクリップボードにコピーされました!
SiteConfig Operator でインストールされたマネージドクラスターをスケールアウトします。ワーカーノードを追加することでクラスターをスケールアウトできます。
必要なアクセス権: クラスター管理者
2.7.3.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- GitOps ZTP を使用している場合は、GitOps ZTP 環境を設定しておきます。環境を設定するには、GitOps ZTP 用のハブクラスターの準備 を参照してください。
- デフォルトのインストールテンプレートが必要です。デフォルトテンプレートの詳細は、デフォルトのテンプレートセット を参照してください。
- SiteConfig Operator を使用してクラスターをインストールした。SiteConfig Operator を使用してクラスターをインストールするには、SiteConfig Operator を使用してシングルノード OpenShift クラスターをインストールする を参照してください。
-
spec.clusterTypeを"SNO"に設定している。
2.7.3.2. ワーカーノードを追加する リンクのコピーリンクがクリップボードにコピーされました!
クラスターのプロビジョニングに使用される ClusterInstance カスタムリソースを更新して、ワーカーノードを追加します。
マネージドクラスターにワーカーノードを追加するには、次の手順を実行します。
既存の
ClusterInstanceカスタムリソースに新しいノードオブジェクトを定義します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を適用します。以下のオプションを参照してください。
- Red Hat OpenShift GitOps を使用せずに Red Hat Advanced Cluster Management を使用している場合は、ハブクラスターで次のコマンドを実行します。
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP を使用している場合は、Git リポジトリーにプッシュし、Argo CD が変更を同期するのを待ちます。
ハブクラスターで次のコマンドを実行して、新しい
BareMetalHostリソースが追加されたことを確認します。oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>
oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com provisioning true 44m
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com provisioning true 44mCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハブクラスターで次のコマンドを実行して、新しい
Agentリソースが追加されたことを確認します。oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>
oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターで次のコマンドを実行して、新しい
Nodeリソースが追加されたことを確認します。oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>
oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.4. 非接続環境向けのミラーリングイメージ リンクのコピーリンクがクリップボードにコピーされました!
基盤となる Operator として Image Based Install Operator を使用すると、SiteConfig Operator を使用してクラスターをデプロイできます。非接続環境で Image Based Install Operator を使用してクラスターをデプロイする場合は、ミラーイメージを ClusterInstance カスタムリソースの追加マニフェストとして提供する必要があります。
必要なアクセス権: クラスター管理者
非接続環境のイメージをミラーリングするには、次の手順を実行します。
ミラーレジストリーの場所を含む
ImageDigestMirrorSetオブジェクト用に、idms-configmap.yamlという名前の YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
重要: ClusterInstance リソースと同じ namespace に追加のマニフェストを含む ConfigMap リソースを定義します。
ハブクラスターで次のコマンドを実行してリソースを作成します。
oc apply -f idms-configmap.yaml
oc apply -f idms-configmap.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow ClusterInstanceカスタムリソース内のImageDigestMirrorSetオブジェクトを参照します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.5. SiteConfig Operator によるクラスターの再インストール (テクノロジープレビュー) リンクのコピーリンクがクリップボードにコピーされました!
SiteConfig Operator は、重要な設定データを保持しながら、ClusterInstance API を介して OpenShift クラスターの再インストールを簡素化します。
GitOps と互換性のある宣言型のアプローチを使用すると、ユーザーは ClusterInstance リソースを更新することで再インストールをトリガーできます。Operator にはハブ側の Secret および ConfigMap リソースのバックアップおよび復元メカニズムも含まれており、認証情報や設定リソースなどの重要なクラスターデータがそのまま残ります。
2.7.5.1. クラスターアイデンティティーの保持 リンクのコピーリンクがクリップボードにコピーされました!
クラスターの再インストールでは、シングルノード OpenShift クラスターとマルチノード OpenShift クラスターの両方がサポートされます。ただし、クラスターアイデンティティーの保存は、イメージベースのインストールプロビジョニング方法を使用してインストールしたシングルノード OpenShift クラスターでのみサポートされます。
イメージベースのインストールの詳細は、シングルノード OpenShift のイメージベースのインストール を参照してください。
2.7.5.2. クラスターの再インストールワークフロー リンクのコピーリンクがクリップボードにコピーされました!
クラスターの再インストールワークフローの次の手順を参照してください。
- 保存用にリソースにラベルを付けます。リソースを保存しない場合、これはオプションです。クラスターの再インストールを開始する前に、リソースに適切なラベルを付けることができます。
- クラスターの再インストールを開始します。
- 再インストールの進捗を監視し、再インストールしたクラスターが利用可能であることを確認します。これは任意です。
2.7.5.3. 保存のためのリソースラベル付け リンクのコピーリンクがクリップボードにコピーされました!
再インストール後に重要なクラスター設定データを保持する場合、SiteConfig Operator は ClusterInstance namespace 内のハブ側の Secret および ConfigMap リソースのバックアップおよび復元メカニズムを提供します。
ClusterInstance リソースで preservationMode を設定し、適切な予約ラベルをリソースに追加し、データの保存を制御できます。使用できる保存モードは次のとおりです。
| 保持モード | 動作 | 使用方法 | ラベル要件 |
|---|---|---|---|
|
|
|
再インストール中にクラスターのデータを保持する必要がない場合は、 | None |
|
|
|
ラベル付けされたリソース (存在する場合) を保持する場合は、 |
任意の値を指定して |
|
|
|
少なくとも 1 つのリソースにラベルが付けられていることを Operator が確認できるようにするには、 |
保存モードが |
再インストールを開始する前に、リソースに適切なラベルを付けることができます。
2.7.5.4. クラスター再インストールの監視 リンクのコピーリンクがクリップボードにコピーされました!
再インストールには 2 つのフェーズがあります。
- フェーズ 1 - 再インストール要求の処理
- リクエストの検証: SiteConfig Operator がリクエストを検証します。
- データの保存: SiteConfig Operator はラベル付けされたリソースをバックアップします。
-
クリーンアップ: SiteConfig Operator は既存のインストールマニフェストを削除します。この手順がタイムアウトすると、再インストールが停止し、
ClusterInstanceリソースが一時停止されます。 - データの復元: SiteConfig Operator は保存されたデータを復元します。
- フェーズ 2 - クラスターのプロビジョニング
- マニフェストの再生成: SiteConfig Operator はテンプレートから新しいマニフェストを生成します。
- クラスターのインストール: クラスターは新しいマニフェストを使用してプロビジョニングされます。
フェーズ 1 と 2 の進行状況は、それぞれ status.reinstall.conditions フィールドと status.conditions フィールドで追跡できます。クラスターの再インストールの進行状況を追跡するために、SiteConfig Operator は次のステータス条件を提供します。
| 状態 | 説明 | 理由 |
|
| 再インストール要求の全体的なステータスを示します。 |
|
|
| 再インストール要求の有効性を確認します。 |
|
|
| 保存済みデータのバックアップステータスを追跡します。 |
|
|
| クラスターアイデンティティーデータを保存できるかどうかを決定します。 |
|
|
|
レンダリングされたマニフェストで、 |
|
|
| 保存済みデータの復元ステータスを追跡します。 |
|
status.reinstall フィールドには、次のフィールドで再インストールプロセスに関する詳細情報が提供されます。
-
InProgressGeneration: 再インストールで処理されるアクティブな世代を表します。 -
ObservedGeneration: 最後に正常に処理された再インストール要求を表します。 -
RequestStartTime: 再インストール要求の開始時刻を表します。 -
RequestEndTime: 再インストールプロセスが完了した時間を表します。 -
History: 生成の詳細、タイムスタンプ、ClusterInstanceリソースの仕様変更など、過去の再インストールの試行を表示します。
2.7.6. SiteConfig Operator を使用したクラスターの再インストール (テクノロジープレビュー) リンクのコピーリンクがクリップボードにコピーされました!
SiteConfig Operator を使用してクラスターを再インストールします。再インストールを有効にした後、任意の保存モードを定義し、該当する場合はリソースにラベルを付けることができます。
必要なアクセス権: クラスター管理者
クラスターを再インストールするには、次の手順を実行します。
2.7.6.1. クラスターの再インストールを有効にする リンクのコピーリンクがクリップボードにコピーされました!
siteconfig-Operator-configuration ConfigMap リソースでクラスターの再インストールを明示的に有効にする必要があります。これは、プロセスを開始するよりもはるか前に完了させておくことができます。デフォルトでは、再インストールは無効になっています。
以下の手順を実行します。
SiteConfig Operator がインストールされている namespace と一致するように
NAMESPACE環境変数を設定します。以下のコマンドを実行します。NAMESPACE=<namespace>
NAMESPACE=<namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、現在の設定を確認します。
oc get configmap siteconfig-operator-configuration -n $NAMESPACE -o yaml
oc get configmap siteconfig-operator-configuration -n $NAMESPACE -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記: Operator は、
siteconfig- operator -configurationConfigMapリソースの変更を継続的に監視します。クラスターの再インストールを有効にするには、
data.allowReinstallsフィールドをtrueに設定してConfigMapリソースを更新します。以下のコマンドを実行します。oc patch configmap siteconfig-operator-configuration \ -n $NAMESPACE \ --type=json \ -p '[{"op": "replace", "path": "/data/allowReinstalls", "value": "true"}]'oc patch configmap siteconfig-operator-configuration \ -n $NAMESPACE \ --type=json \ -p '[{"op": "replace", "path": "/data/allowReinstalls", "value": "true"}]'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して更新を確認します。
oc get configmap siteconfig-operator-configuration -n $NAMESPACE -o yaml
oc get configmap siteconfig-operator-configuration -n $NAMESPACE -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.6.2. 保持用のリソースにラベルを付ける リンクのコピーリンクがクリップボードにコピーされました!
ClusterInstance カスタムリソースで、任意の保存モードを設定し、該当する場合はそれに応じてリソースにラベルを付けることができます。デフォルトでは、preservationMode フィールドは None に設定されています。詳細は、保存用のリソースのラベル付け を参照してください。
次の手順例を完了します。
次のコマンドを実行して、リソースに保存モード
Allのラベルを付けます。oc label configmap <your_configmap> "siteconfig.open-cluster-management.io/preserve=all"
oc label configmap <your_configmap> "siteconfig.open-cluster-management.io/preserve=all"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ClusterInstance カスタムリソースは、適用されたラベルに対応する適切な preservationMode で更新されます。
2.7.6.3. クラスターの再インストールを開始する リンクのコピーリンクがクリップボードにコピーされました!
再インストールを開始するには、ClusterInstance リソースを新しい spec.reinstall.generation 値で更新します。
ClusterInstanceリソースのspec.reinstall.generation値を変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記: ClusterInstance リソースを変更するときは、適切な保存モードを設定してください。有効な値は、"none"、"All"、または "ClusterIdentity" です。
オプション:
spec.reinstallオブジェクトを定義するときに、ClusterInstanceリソース内の次の追加フィールドを変更できます。-
spec.extraAnnotations -
spec.extraLabels -
spec.suppressedManifests -
spec.pruneManifests -
spec.nodes.<node-id>.extraAnnotations -
spec.nodes.<node-id>.extraLabels -
spec.nodes.<node-id>.suppressedManifests -
spec.nodes.<node-id>.pruneManifests -
spec.nodes.<node-id>.bmcAddress -
spec.nodes.<node-id>.bootMACAddress -
spec.nodes.<node-id>.nodeNetwork.interfaces.macAddress -
spec.nodes.<node-id>.rootDeviceHints
注記:
<node-id>は、更新されたNodeSpecオブジェクトを表します。-
変更を適用します。以下のオプションを参照してください。
- OpenShift GitOps ZTP を使用している場合は、Git リポジトリーにプッシュし、Argo CD が変更を同期するまで待ちます。
- 変更を手動で適用するには、ハブクラスターで次のコマンドを実行します。
oc apply -f clusterinstance-example.yaml
oc apply -f clusterinstance-example.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.6.4. クラスターの再インストールを監視する リンクのコピーリンクがクリップボードにコピーされました!
クラスターの再インストールの進行状況を監視できます。以下の手順を実行します。
再インストール要求が処理されていることを確認します。
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestProcessed")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestProcessed")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターの再インストール要求が正常に検証されていることを確認します。
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestValidated")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestValidated")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
spec.reinstall.preservationModeフィールドをAllまたはClusterIdentityに設定した場合は、クラスター ID データが保持されていることを確認します。oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallPreservationDataBackedup")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallPreservationDataBackedup")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
spec.reinstall.preservationModeフィールドをAllまたはClusterIdentityに設定した場合は、クラスター ID データが検出されていることを確認します。oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallClusterIdentityDataDetected")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallClusterIdentityDataDetected")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インストールマニフェストが削除されていることを確認します。削除が完了するまで数分かかる場合があります。
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRenderedManifestsDeleted")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRenderedManifestsDeleted")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
preseservationModeフィールドをAllまたはClusterIdentityに設定した場合、以前に保持されたデータが復元されていることを確認します。oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallPreservationDataRestored")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallPreservationDataRestored")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 前の手順を確認した後、再インストール要求が正常に完了したことを確認します。
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestProcessed")'
oc get clusterinstance clusterinstance-example -n some-namespace -o json | jq -r '.status.reinstall.conditions[] | select(.type=="ReinstallRequestProcessed")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の出力例を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
再インストールされたクラスターに関連付けられている
kubeconfigファイルを使用してocコマンドを実行し、クラスターが正常に再インストールされ、動作していることを確認します。
2.7.7. シングルノード OpenShift の Image-Based Break/Fix によるハードウェアの交換 (テクノロジープレビュー) リンクのコピーリンクがクリップボードにコピーされました!
Image-Based Break/Fix 機能は、SiteConfig Operator のクラスター再インストールメカニズムを利用して、シングルノード OpenShift ハードウェアの交換を簡素化します。この機能は、クラスターの元のアイデンティティーを保持することでダウンタイムを最小限に抑えます。Image-Based Break/Fix 機能は、識別子、kubeconfig などの暗号鍵、認証情報を含む、重要なクラスターの詳細を保持し、これにより、交換ノードで障害が発生したハードウェアのアイデンティティーをシームレスに引き継ぐことができます。
Image-Based Intall 方式を使用してインストールされたシングルノード OpenShift クラスターでの同一のハードウェア交換用に設計された Image-Based Break/Fix では、GitOps と互換性のある宣言型 API が導入されています。ユーザーは、1 回の Git コミットでハードウェアの交換を開始できます。SiteConfig Operator と Image-Based Install Operator を活用した Image-Based Break/Fix では、既存の ClusterInstance カスタムリソースを使用してクラスターの再デプロイメントが可能になります。
Image-Based Break/Fix により、OpenShift Container Platform ユーザーは、ハードウェア障害発生後にシングルノードの OpenShift クラスターを迅速に復元するための、回復力のある自動化された GitOps ネイティブソリューションを入手できます。
2.7.7.1. Image-Based Break/Fix クラスターの再インストールワークフロー リンクのコピーリンクがクリップボードにコピーされました!
Image-Based Break/Fix のワークフローは、クラスターの再インストールワークフローに似ていますが、いくつかの違いがあります。ワークフローの違いを理解するには、Image-Based Break/Fix クラスターの再インストールワークフローの概要を参照してください。
- SiteConfig Operator の再インストールサービスを有効にします。
クラスターの再インストールを開始します。
-
spec.reinstall.preservationMode: "ClusterIdentity"を設定します。 -
変更されたハードウェア情報で
spec.nodesオブジェクトを更新します。 - 注記: Image Based Install Operator は、クラスターアイデンティティーリソースに自動的にラベルを付けます。
-
再インストールの進捗を監視します。
- クラスターのプロビジョニング中に、インストールマニフェストを使用する Operator は、新しく生成されたマニフェストを使用してクラスターをプロビジョニングします。
- 注記: Image Based Install Operator は、保存されたクラスターアイデンティティーデータを検出し、設定 ISO イメージに組み込みます。
クラスターがプロビジョニングされており、利用可能であることを確認します。
-
障害が発生したハードウェアに関連付けられている
kubeconfigを使用して、再インストールされたスポーククラスターにアクセスします。
-
障害が発生したハードウェアに関連付けられている
詳細は、SiteConfig Operator を使用したクラスターの再インストール (テクノロジープレビュー) を参照してください。
2.7.7.2. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- クラスターは、イメージベースのインストールプロビジョニング方法を使用してインストールされたシングルノードの OpenShift クラスターである。
- 障害のあるハードウェアを、同じ仕様を持つ新しいノードに置き換える。
2.7.7.3. Image-Based Break/Fix クラスターの再インストールの開始 リンクのコピーリンクがクリップボードにコピーされました!
Image-Based Break/Fix クラスター再インストールを開始するには、spec.reinstall.generation フィールドを設定し、変更されたハードウェア情報を使用して spec.nodes オブジェクトを更新して、ClusterInstance リソースを更新します。
spec.reinstall.generationフィールドを変更し、ClusterInstanceリソース内のspec.nodesオブジェクトを新しいノードの詳細で更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を適用します。以下のオプションを参照してください。
- OpenShift GitOps ZTP を使用している場合は、Git リポジトリーにプッシュし、Argo CD が変更を同期するまで待ちます。
- 変更を手動で適用するには、ハブクラスターで次のコマンドを実行します。
oc apply -f clusterinstance-example.yaml
oc apply -f clusterinstance-example.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow