5.4. オプション: BMO を使用して、ユーザーがプロビジョニングしたクラスターで既存のホストを管理する
オプションで、Bare Metal Operator (BMO) を使用して、既存のホストの BareMetalHost
オブジェクトを作成すると、ユーザーがプロビジョニングしたクラスターで既存のベアメタルコントローラーホストを管理できます。ユーザーがプロビジョニングした既存のホストを管理する必要はありません。ただし、それらをインベントリー目的で外部プロビジョニングされたホストとして登録することはできます。
BMO を使用して、既存のホストを管理するには、BareMetalHost
カスタムリソースの spec.externallyProvisioned
仕様を true
に設定して、BMO がホストを再プロビジョニングしないようにする必要があります。
前提条件
- ユーザーがプロビジョニングしたベアメタルクラスターを作成しました。
- ホストへのベースボード管理コントローラー (BMC) アクセス権限がある。
-
Provisioning
CR を作成して、クラスターにプロビジョニングサービスをデプロイしました。
手順
Secret
CR とBareMetalHost
CR を作成します。次の YAML を
controller.yaml
ファイルに保存します。--- apiVersion: v1 kind: Secret metadata: name: controller1-bmc namespace: openshift-machine-api type: Opaque data: username: <base64_of_uid> password: <base64_of_pwd> --- apiVersion: metal3.io/v1alpha1 kind: BareMetalHost metadata: name: controller1 namespace: openshift-machine-api spec: bmc: address: <protocol>://<bmc_url> credentialsName: "controller1-bmc" bootMACAddress: <nic1_mac_address> customDeploy: method: install_coreos externallyProvisioned: true online: true userData: name: controller-user-data-managed namespace: openshift-machine-api
--- apiVersion: v1 kind: Secret metadata: name: controller1-bmc namespace: openshift-machine-api type: Opaque data: username: <base64_of_uid> password: <base64_of_pwd> --- apiVersion: metal3.io/v1alpha1 kind: BareMetalHost metadata: name: controller1 namespace: openshift-machine-api spec: bmc: address: <protocol>://<bmc_url>
1 credentialsName: "controller1-bmc" bootMACAddress: <nic1_mac_address> customDeploy: method: install_coreos externallyProvisioned: true
2 online: true userData: name: controller-user-data-managed namespace: openshift-machine-api
Copy to Clipboard Copied!
次のコマンドを実行して、ベアメタルホストオブジェクトを作成します。
oc create -f controller.yaml
$ oc create -f controller.yaml
Copy to Clipboard Copied! 出力例
secret/controller1-bmc created baremetalhost.metal3.io/controller1 created
secret/controller1-bmc created baremetalhost.metal3.io/controller1 created
Copy to Clipboard Copied!
検証
次のコマンドを実行して、BMO がベアメタルホストオブジェクトを作成したことを確認します。
oc get bmh -A
$ oc get bmh -A
Copy to Clipboard Copied! 出力例
NAMESPACE NAME STATE CONSUMER ONLINE ERROR AGE openshift-machine-api controller1 externally provisioned true 13s
NAMESPACE NAME STATE CONSUMER ONLINE ERROR AGE openshift-machine-api controller1 externally provisioned true 13s
Copy to Clipboard Copied!