11.10.2. ホストマシンの同じホスト名への置き換え

障害が発生したホストを、同じ FQDN (完全修飾ドメイン名) を持つ別のノードに置き換えることができます。Red Hat Gluster Storage 信頼できるストレージプールのホストには、glusterFS Management Daemon が生成した UUID と呼ばれる独自のアイデンティティーがあります。ホストの UUID は /var/lib/glusterd/glusterd.info ファイルにあります。
以下の例では、server0.example.com として FQDN を持つホストはリカバリーできず、同じ FQDN を持つホストに置き換える必要があります。以下の手順は、新しいホストで実行する必要があります。
  1. 以下のコマンドを実行してジオレプリケーションセッションを停止します。
     # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL stop force 
  2. server0.example.com で glusterd サービスを停止します。
    RHEL 7 および RHEL 8 で以下を実行します。
    # systemctl stop glusterd
    RHEL 6 で以下を実行します。
    # service glusterd stop
    重要
    Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。インストールガイドの『バージョンの詳細』表および『Red Hat Gluster Storage ソフトウェアコンポーネントおよびバージョン』 を参照してください。
  3. 以下のコマンドを実行して、Red Hat Gluster Storage Trusted Storage Pool から障害のあるホストの UUID (server0.example.com) を取得します。
    # gluster peer status
    Number of Peers: 2
    
    Hostname: server1.example.com
    Uuid: 1d9677dc-6159-405e-9319-ad85ec030880
    State: Peer in Cluster (Connected)
    
    Hostname: server0.example.com
    Uuid: b5ab2ec3-5411-45fa-a30f-43bd04caf96b
    State: Peer Rejected (Connected)
    
    障害が発生したホストの UUID は b5ab2ec3-5411-45fa-a30f-43bd04caf96b です。
  4. 新しいホストのglusterd.infoファイルを編集し、前の手順で取得したホストのUUIDを含める。
    # cat /var/lib/glusterd/glusterd.info
    UUID=b5ab2ec3-5411-45fa-a30f-43bd04caf96b
    operating-version=30703
    注記
    このノードの操作バージョンは、信頼できるストレージプールの他のノードと同じである必要があります。
  5. Red Hat Gluster Storage Trusted Storage Pool内の任意のホスト(例:server1.example.com)を選択し、そのUUIDをglusterd.infoファイルから取得します。
    # grep -i uuid /var/lib/glusterd/glusterd.info
    UUID=8cc6377d-0153-4540-b965-a4015494461c
  6. 直前の手順でホスト (server1.example.com) からピア情報ファイルを収集します。クラスターのホスト (server1.example.com) で以下のコマンドを実行します。
    # cp -a /var/lib/glusterd/peers /tmp/
  7. 障害が発生したホスト (server0.example.com) に対応するピアファイルを /tmp/peers ディレクトリーから削除します。
    # rm /tmp/peers/b5ab2ec3-5411-45fa-a30f-43bd04caf96b
    UUID は、手順 3 で取得した障害が発生したホストの UUID (server0.example.com) に対応することに注意してください。
  8. すべてのファイルをアーカイブし、それらを失敗したホスト (server0.example.com) にコピーします。
    # cd /tmp; tar -cvf peers.tar peers
  9. 上記の作成されたファイルを新しいピアにコピーします。
    # scp /tmp/peers.tar root@server0.example.com:/tmp
  10. 展開したコンテンツを /var/lib/glusterd/peers ディレクトリーにコピーします。新しく追加したホストで、同じ名前のホスト (server0.example.com)と IP アドレスで、以下のコマンドを実行します。
    # tar -xvf /tmp/peers.tar
    # cp peers/* /var/lib/glusterd/peers/
  11. 手順 5 で選択したノード (server1.example.com) 以外のクラスター内の他のホストを選択します。以下のコマンドを実行して、手順 5 で取得したホストの UUID に対応するピアファイルを新しいホスト (server0.example.com) にコピーします。
    # scp /var/lib/glusterd/peers/<UUID-retrieved-from-step5> root@Example1:/var/lib/glusterd/peers/
  12. glusterd サービスを起動します。
    # systemctl start glusterd
  13. 新しいブリックに同じホスト名と同じパスがある場合には 「ボリュームでのブリックの再設定」 を参照して、複製されたボリュームのホスト名と異なるブリックパスがある場合は、「Replicate または Distribute-replicate ボリュームの古いブログを新しいブログに置き換え」 を参照してください。
  14. ボリュームを分散する場合には、新しいブリックにホスト名があり、異なるブリックパスがある場合には、「古いブリックを、Distributed-Dispersed ボリュームまたは分散ボリュームで新しいブログに置き換え」 を参照してください。
  15. 復元されたボリュームで自己修復操作を実行します。
    # gluster volume heal VOLNAME
  16. gluster ボリュームの自己修復ステータスを表示するには、以下のコマンドを実行します。
    # gluster volume heal VOLNAME info
  17. geo レプリケーションセッションが設定されている場合は、以下の手順を実行します。
    1. ssh キーを生成して、geo レプリケーションセッションを設定します。
      # gluster system:: execute gsec_create 
    2. force オプションを指定して、ジオレプリケーションセッションを再度作成して、新しいノードから Slave ノードにキーを配布します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL create push-pem force
    3. 共有ストレージボリュームの設定に成功すると、新しいノードがクラスターに置き換えられると、共有ストレージはこのノードに自動的にマウントされません。このノードの共有ストレージ用に /etc/fstab エントリーは追加されません。このノードで共有ストレージを使用するには、以下のコマンドを実行します。
      # mount -t glusterfs <local node's ip>:gluster_shared_storage /var/run/gluster/shared_storage # cp /etc/fstab /var/run/gluster/fstab.tmp # echo "<local node's ip>:/gluster_shared_storage /var/run/gluster/shared_storage/ glusterfs defaults 0 0" >> /etc/fstab 
      注記
      3.5 Batch Update 3 のリリースにより、共有ストレージのマウントポイントが /var/run/gluster/ から /run/gluster/ に変更されました。
      共有ストレージボリュームの設定についての詳細は、「共有ストレージボリュームの設定」 を参照してください。
    4. geo レプリケーションのメタボリュームを設定します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL config use_meta_volume true
    5. force オプションを使用してジオレプリケーションセッションを起動します。
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL start force

2 ノードの Red Hat Gluster Storage の信頼ストレージプールで、同じホスト名を持つホストの置き換え

ホスト server0.example.com を置き換える必要がある Red Hat Gluster Storage Trusted Storage Pool にホストが 2 つしかない場合は、以下の手順を実行します。

  1. 以下のコマンドを実行して geo レプリケーションセッションを停止します。
     # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL stop force 
  2. server0.example.com で glusterd サービスを停止します。
    RHEL 7 および RHEL 8 で以下を実行します。
    # systemctl stop glusterd
    RHEL 6 で以下を実行します。
    # service glusterd stop
    重要
    Red Hat Gluster Storage は 3.5 Batch Update 1 以降では、Red Hat Enterprise Linux 6 (RHEL 6) でサポートされません。インストールガイドの『バージョンの詳細』表および『Red Hat Gluster Storage ソフトウェアコンポーネントおよびバージョン』 を参照してください。
  3. 以下のコマンドを実行して、Red Hat Gluster Storage Trusted Storage Pool の別のピアから障害のあるホストの UUID (server0.example.com) を取得します。
    # gluster peer status
    Number of Peers: 1
    
    Hostname: server0.example.com
    Uuid: b5ab2ec3-5411-45fa-a30f-43bd04caf96b
    State: Peer Rejected (Connected)
    
    障害が発生したホストの UUID は b5ab2ec3-5411-45fa-a30f-43bd04caf96b です。
  4. 新しいホスト (server0.example.com) で glusterd.info ファイルを編集し、前の手順で取得したホストの UUID を追加します。
    # cat /var/lib/glusterd/glusterd.info
    UUID=b5ab2ec3-5411-45fa-a30f-43bd04caf96b
    operating-version=30703
    注記
    このノードの操作バージョンは、信頼できるストレージプールの他のノードと同じである必要があります。
  5. 新たに作成したホスト (server0.example.com) に、他のホストの UUID の名前 (server1.example.com) の名前とともに、/var/lib/glusterd/peers/<uuid-of-other-peer を、新たに作成したホスト (server0.example.com) に作成します。
    ホストの UUID は、以下を使用して取得できます。
    # gluster system:: uuid get

    例11.6 ホストの UUID を取得する例

    For example,
    # gluster system:: uuid get
    UUID: 1d9677dc-6159-405e-9319-ad85ec030880
    この場合、他のピアの UUID は 1d9677dc-6159-405e-9319-ad85ec030880 になります。
  6. 以下のコマンドを実行して、/var/lib/glusterd/peers/1d9677dc-6159-405e-9319-ad85ec030880 を server0.example.com に作成します。
    # touch /var/lib/glusterd/peers/1d9677dc-6159-405e-9319-ad85ec030880
    作成するファイルには以下の情報が含まれている必要があります。
    UUID=<uuid-of-other-node>
    state=3
    hostname=<hostname>
  7. 前の手順で説明しているように、手順 12 から 18 までを実施します。