6.3. director Operator を使用したオーバークラウドの設定の適用
コントロールプレーンを作成してベアメタルの Compute ノードをプロビジョニングし、各ノードにソフトウェアを設定する Ansible Playbook を生成してからしか、director Operator (OSPdO) でオーバークラウドを設定できません。OpenStackDeploy カスタムリソース (CR) を作成すると、OSPdO は Ansible Playbook を実行してオーバークラウドを設定するジョブを作成します。
OpenStackDeploy CRD 定義と仕様スキーマを表示するには、次のコマンドを使用します。
oc describe crd openstackdeploy oc explain openstackdeploy.spec
$ oc describe crd openstackdeploy
$ oc explain openstackdeploy.spec
前提条件
-
OpenStackControlPlaneCRD を使用してコントロールプレーンを作成している。 -
OpenStackBarementalSetsCRD を使用して Compute ノードを作成している。 -
OpenStackConfigGeneratorCRD を使用して、オーバークラウドの Ansible Playbook 設定を作成している。
手順
最新の
OpenStackConfigVersionオブジェクトのhash/digestを取得します。これは、オーバークラウドの設定に使用する必要がある Ansible Playbook を表します。oc get -n openstack --sort-by {.metadata.creationTimestamp} openstackconfigversion -o json$ oc get -n openstack --sort-by {.metadata.creationTimestamp} openstackconfigversion -o jsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow ワークステーション上に
openstack-deployment.yamlという名前のファイルを作成し、リソース仕様を Ansible Playbook に含めます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<config_version>を、ステップ 1 で取得した Ansible Playbook のhash/digest(例:n5fch96h548h75hf4hbdhb8hfdh676h57bh96h5c5h59hf4h88h...) に置き換えます。
-
-
openstack-deployment.yamlファイルを保存します。 OpenStackDeployリソースを作成します。oc create -f openstack-deployment.yaml -n openstack
$ oc create -f openstack-deployment.yaml -n openstackCopy to Clipboard Copied! Toggle word wrap Toggle overflow デプロイメントが実行すると、Ansible Playbook を実行するための Kubernetes ジョブが作成されます。ジョブのログを表示して、Ansible Playbook の実行を確認できます。
oc logs -f jobs/deploy-openstack-default
$ oc logs -f jobs/deploy-openstack-defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow openstackclientPod にログインすることで、実行された Ansible Playbook に手動でアクセスすることもできます。現在のデプロイメントの ansible Playbook とansible.logファイルは/home/cloud-admin/work/directoryにあります。