Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

20.2. フェンシングの有効化

  1. 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 版に変換します。

  2. 以前オーバークラウドをデプロイする際に使用した 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

    デプロイメントのコマンドは、エラーまたは例外なしで完了するはずです。

  3. オーバークラウドにログインし、各コントローラーにフェンシングが設定されたことを確認します。

    1. フェンシングリソースが 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 プロセスは、そのプロセスが制御する同じホスト上には設定すべきではありません。

    2. pcs でフェンシングリソースの属性を確認します。

      $ sudo pcs stonith show <stonith-resource-controller-x>

      STONITH が使用する値は、fencing.yaml に定義されている値と一致している必要があります。