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