20.2. フェンシングの有効化
openstack overcloud generate fencing
コマンドを使用して、fencing.yaml
環境ファイルを生成します。$ openstack overcloud generate fencing --ipmi-lanplus --ipmi-level administrator --output fencing.yaml nodes.json
このコマンドには、director でノードを登録する際に作成した
nodes.json
ファイルが必要です。事前にプロビジョニングされたノードを使用する場合には、fencing.yaml
ファイルを手動で作成する必要があります。fencing.yaml
環境ファイルの例を、以下のスニペットに示します。parameter_defaults: EnableFencing: true FencingConfig: devices: - agent: fence_ipmilan host_mac: 11:11:11:11:11:11 params: ipaddr: 10.0.0.101 lanplus: true login: admin passwd: InsertComplexPasswordHere pcmk_host_list: host04 privlvl: administrator
注記openstack overcloud generate fencing
コマンドは、IPMI のフェンシングオプションのみを出力します。このコマンドは、ipmi
電源管理情報を使用するノードを許容します。ilo
およびdrac
電源管理情報の場合には、それらを等価な IPMI 版に変換します。
以前オーバークラウドをデプロイする際に使用した
deploy
コマンドに、生成されたfencing.yaml
ファイルを渡します。これでデプロイメントの手順が再実行され、ホスト上でフェンシングが設定されます。openstack overcloud deploy --templates -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml -e ~/templates/network-environment.yaml -e ~/templates/storage-environment.yaml --control-scale 3 --compute-scale 3 --ceph-storage-scale 3 --control-flavor control --compute-flavor compute --ceph-storage-flavor ceph-storage --ntp-server pool.ntp.org --neutron-network-type vxlan --neutron-tunnel-types vxlan -e fencing.yaml
デプロイメントのコマンドは、エラーまたは例外なしで完了するはずです。
オーバークラウドにログインし、各コントローラーにフェンシングが設定されたことを確認します。
フェンシングリソースが Pacemaker で管理されていることを確認します。
$ source stackrc $ nova list | grep controller $ ssh heat-admin@<controller-x_ip> $ sudo pcs status | grep fence stonith-overcloud-controller-x (stonith:fence_ipmilan): Started overcloud-controller-y
Pacemaker が、
fencing.yaml
で指定されている各コントローラーの STONITH リソースを使用するように設定されていることを確認します。fence-resource
プロセスは、そのプロセスが制御する同じホスト上には設定すべきではありません。pcs
でフェンシングリソースの属性を確認します。$ sudo pcs stonith show <stonith-resource-controller-x>
STONITH が使用する値は、
fencing.yaml
に定義されている値と一致している必要があります。