5.7. フェイルオーバーおよび災害復旧

マスターゾーンが失敗すると、障害復旧のためにセカンダリーゾーンにフェイルオーバーします。

  1. セカンダリーゾーンをマスターおよびデフォルトゾーンにします。以下に例を示します。

    # radosgw-admin zone modify --rgw-zone={zone-name} --master --default

    デフォルトでは、Ceph Object Gateway はアクティブ/アクティブ設定で実行されます。クラスターがアクティブ/パッシブ設定で実行するように設定されている場合、セカンダリーゾーンは読み取り専用ゾーンになります。ゾーンが書き込み操作を受け取れるように --read-only ステータスを削除します。以下に例を示します。

    # radosgw-admin zone modify --rgw-zone={zone-name} --master --default
  2. 変更を有効にするために期間を更新します。

    # radosgw-admin period update --commit
  3. Ceph Object Gateway を再起動します。

    # systemctl restart ceph-radosgw@rgw.`hostname -s`.rgw0

以前のマスターゾーンが回復する場合は、操作を元に戻します。

  1. 復元ゾーンから、現在のマスターゾーンからレルムをプルします。

    # radosgw-admin realm pull --url={url-to-master-zone-gateway} \
                                --access-key={access-key} --secret={secret}
  2. 復元ゾーンをマスターおよびデフォルトゾーンにします。

    # radosgw-admin zone modify --rgw-zone={zone-name} --master --default
  3. 変更を有効にするために期間を更新します。

    # radosgw-admin period update --commit
  4. リカバリーゾーンで Ceph Object Gateway を再起動します。

    # systemctl restart ceph-radosgw@rgw.`hostname -s`.rgw0
  5. セカンダリーゾーンが読み取り専用設定である必要がある場合は、セカンダリーゾーンを更新します。

    # radosgw-admin zone modify --rgw-zone={zone-name} --read-only
  6. 変更を有効にするために期間を更新します。

    # radosgw-admin period update --commit
  7. セカンダリーゾーンで Ceph Object Gateway を再起動します。

    # systemctl restart ceph-radosgw@rgw.`hostname -s`.rgw0