8.5. ベアメタルノードのスケールダウン
スタックから削除するノードを ~/overcloud-baremetal-deploy.yaml
ファイルでタグ付けし、オーバークラウドを再デプロイしてから、--baremetal-deployment
オプションを指定して openstack overcloud node delete
コマンドにこのファイルを追加します。
前提条件
- アンダークラウドの正常なインストール。詳細は、「director のインストール」 を参照してください。
- オーバークラウドの正常なデプロイメント。詳細は、9章事前にプロビジョニングされたノードを使用した基本的なオーバークラウドの設定 を参照してください。
- スタックから削除する 1 つ以上のベアメタルノード
手順
source コマンドで
stackrc
アンダークラウド認証情報ファイルを読み込みます。$ source ~/stackrc
ベアメタルノードのプロビジョニングに使用した
~/overcloud-baremetal-deploy.yaml
ファイルを編集し、スケールダウンするロールのcount
パラメーターを減らします。また、スタックから削除するノードごとに以下の属性を定義する必要もあります。- ノードの名前
- ノードに関連付けられたホスト名
provisioned: false
属性たとえば、スタックからノード
overcloud-controller-1
を削除するには、~/overcloud-baremetal-deploy.yaml
ファイルに以下のスニペットを追加します。- name: Controller count: 2 instances: - hostname: overcloud-controller-0 name: node00 - hostname: overcloud-controller-1 name: node01 # Removed from cluster due to disk failure provisioned: false - hostname: overcloud-controller-2 name: node02
~/overcloud-baremetal-deploy.yaml
ファイルを指定し、--output
オプションで出力ファイルを定義して、プロビジョニングコマンドを実行します。(undercloud) $ sudo openstack overcloud node provision \ --stack stack \ --output ~/overcloud-baremetal-deployed.yaml \ ~/overcloud-baremetal-deploy.yaml
デプロイメントに該当するその他の環境ファイルと共に、プロビジョニングコマンドによって生成される
~/overcloud-baremetal-deployed.yaml
ファイルを指定して、オーバークラウドを再デプロイします。(undercloud) $ openstack overcloud deploy \ ... -e /usr/share/openstack-tripleo-heat-templates/environments/deployed-server-environment.yaml \ -e ~/overcloud-baremetal-deployed.yaml \ --deployed-server \ --disable-validations \ ...
オーバークラウドの再デプロイ後、
provisioned: false
属性で定義したノードがスタックには存在しなくなります。ただし、これらのノードは provisioned の状態で稼働したままです。注記スタックから一時的にノードを削除する場合は、オーバークラウドを属性
provisioned: false
でデプロイしてから属性provisioned: true
で再デプロイすることで、ノードをスタックに戻すことができます。--baremetal-deployment
オプションで~/overcloud-baremetal-deploy.yaml
ファイルを指定して、openstack overcloud node delete
コマンドを実行します。(undercloud) $ sudo openstack overcloud node delete \ --stack stack \ --baremetal-deployment ~/overcloud-baremetal-deploy.yaml
注記スタックから削除するノードを、
openstack overcloud node delete
コマンドのコマンド引数に含めないでください。