5.4. セカンダリーゾーンの確立


ゾーングループ内のゾーンは、すべてのデータを複製して、各ゾーンが同じデータを持つようにします。セカンダリーゾーンを作成するときは、セカンダリーゾーンにサービスを提供するように識別されたホストで すべてradosgw-admin zone 操作を発行します。

注記

ゾーンを追加するには、セカンダリーゾーンを追加する手順と同じ手順に従います。別のゾーン名を使用します。

重要
  • マスターゾーングループのマスターゾーン内のホストで、ユーザーの作成やクォータなどのメタデータ操作を実行します。マスターゾーンおよびセカンダリーゾーンは、RESTful API からバケット操作を受信できますが、セカンダリーゾーンはバケット操作をマスターゾーンにリダイレクトします。マスターゾーンがダウンしている場合、バケット操作は失敗します。radosgw-admin CLI を使用してバケットを作成する場合は、バケットが他のゾーングループおよびゾーンと同期するように、マスターゾーングループのマスターゾーン内のホストでバケットを実行する必要があります。
  • --yes-i-really-mean-it を使用してセカンダリーゾーンにユーザーを作成した場合でも、特定のユーザーのバケット作成はサポートされません。

前提条件

  • 少なくとも 2 つの実行中の Red Hat Ceph Storage クラスター
  • 少なくとも 2 つの Ceph Object Gateway インスタンス (各 Red Hat Ceph Storage クラスターに 1 つ)。
  • すべてのノードへの root レベルのアクセス。
  • ノードまたはコンテナーがストレージクラスターに追加されます。
  • すべての Ceph Manager、Monitor、および OSD デーモンがデプロイされます。

手順

  1. cephadm シェルにログインします。

    Copy to Clipboard Toggle word wrap
    [root@host04 ~]# cephadm shell

  2. ホストからプライマリーレルム設定をプルします。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin realm pull --url=URL_TO_PRIMARY_ZONE_GATEWAY --access-key=ACCESS_KEY --secret-key=SECRET_KEY

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# radosgw-admin realm pull --url=http://10.74.249.26:80 --access-key=LIPEYZJLTWXRKXS9LPJC --secret-key=IsAje0AVDNXNw48LjMAimpCpI7VaxJYSnfD0FFKQ

  3. ホストからプライマリー期間設定をプルします。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin period pull --url=URL_TO_PRIMARY_ZONE_GATEWAY --access-key=ACCESS_KEY --secret-key=SECRET_KEY

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# radosgw-admin period pull --url=http://10.74.249.26:80 --access-key=LIPEYZJLTWXRKXS9LPJC --secret-key=IsAje0AVDNXNw48LjMAimpCpI7VaxJYSnfD0FFKQ

  4. セカンダリーゾーンを設定します。

    注記

    デフォルトでは、すべてのゾーンはアクティブ/アクティブ設定で実行されます。つまり、ゲートウェイクライアントは任意のゾーンにデータを書き込むことができ、ゾーンはゾーングループ内の他のすべてのゾーンにデータを複製します。セカンダリーゾーンが書き込み操作を受け入れない場合は、`--read-only フラグを指定して、マスターゾーンとセカンダリーゾーンの間にアクティブ-パッシブ設定を作成します。さらに、マスターゾーングループのマスターゾーンに格納されている、生成されたシステムユーザーの access_key および secret_key を指定します。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin zone create --rgw-zonegroup=_ZONE_GROUP_NAME_ \
                 --rgw-zone=_SECONDARY_ZONE_NAME_ --endpoints=http://_RGW_SECONDARY_HOSTNAME_:_RGW_PRIMARY_PORT_NUMBER_1_ \
                 --access-key=_SYSTEM_ACCESS_KEY_ --secret=_SYSTEM_SECRET_KEY_ \
                 [--read-only]

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# radosgw-admin zone create --rgw-zonegroup=us --rgw-zone=us-east-2 --endpoints=http://rgw2:80 --access-key=LIPEYZJLTWXRKXS9LPJC --secret-key=IsAje0AVDNXNw48LjMAimpCpI7VaxJYSnfD0FFKQ

  5. 必要に応じて、デフォルトゾーンを削除します。

    重要

    デフォルトゾーンおよびゾーングループを使用してデータを保存する場合は、デフォルトゾーンとそのプールは削除しないでください。

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# radosgw-admin zone rm --rgw-zone=default
    [ceph: root@host04 /]# ceph osd pool rm default.rgw.log default.rgw.log --yes-i-really-really-mean-it
    [ceph: root@host04 /]# ceph osd pool rm default.rgw.meta default.rgw.meta --yes-i-really-really-mean-it
    [ceph: root@host04 /]# ceph osd pool rm default.rgw.control default.rgw.control --yes-i-really-really-mean-it
    [ceph: root@host04 /]# ceph osd pool rm default.rgw.data.root default.rgw.data.root --yes-i-really-really-mean-it
    [ceph: root@host04 /]# ceph osd pool rm default.rgw.gc default.rgw.gc --yes-i-really-really-mean-it

  6. Ceph 設定データベースを更新します。

    構文

    Copy to Clipboard Toggle word wrap
    ceph config set client.rgw.SERVICE_NAME rgw_realm REALM_NAME
    ceph config set client.rgw.SERVICE_NAME rgw_zonegroup ZONE_GROUP_NAME
    ceph config set client.rgw.SERVICE_NAME rgw_zone SECONDARY_ZONE_NAME

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# ceph config set client.rgw.rgwsvcid.mons-1.jwgwwp rgw_realm test_realm
    [ceph: root@host04 /]# ceph config set client.rgw.rgwsvcid.mons-1.jwgwwp rgw_zonegroup us
    [ceph: root@host04 /]# ceph config set client.rgw.rgwsvcid.mons-1.jwgwwp rgw_zone us-east-2

  7. 変更をコミットします。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin period update --commit

    Copy to Clipboard Toggle word wrap
    [ceph: root@host04 /]# radosgw-admin period update --commit

  8. cephadm シェルの外部で、ストレージクラスターおよびプロセスの FSID を取得します。

    Copy to Clipboard Toggle word wrap
    [root@host04 ~]#  systemctl list-units | grep ceph

  9. Ceph Object Gateway デーモンを起動します。

    構文

    Copy to Clipboard Toggle word wrap
    systemctl start ceph-FSID@DAEMON_NAME
    systemctl enable ceph-FSID@DAEMON_NAME

    Copy to Clipboard Toggle word wrap
    [root@host04 ~]# systemctl start ceph-62a081a6-88aa-11eb-a367-001a4a000672@rgw.test_realm.us-east-2.host04.ahdtsw.service
    [root@host04 ~]# systemctl enable ceph-62a081a6-88aa-11eb-a367-001a4a000672@rgw.test_realm.us-east-2.host04.ahdtsw.service

5.4.1. アーカイブゾーンの設定

注記

ゾーンをアーカイブとして設定する前に、レルムがあることを確認してください。レルムがないと、デフォルトのゾーン/ゾーングループのアーカイブゾーンを使用して、データをアーカイブできません。

Object Storage Archive Zone 機能を使用して、Red Hat Ceph Storage に存在するオブジェクトデータをアーカイブします。

アーカイブゾーンは、Ceph Object Gateway のマルチサイトレプリケーションと S3 オブジェクトのバージョン管理機能を使用します。アーカイブゾーンには、運用ファイルで削除された場合でも、使用可能なすべてのオブジェクトのすべてのバージョンが保持されます。

アーカイブゾーンには、アーカイブゾーンに関連付けられたゲートウェイを介してのみ削除できる S3 オブジェクトのバージョンの履歴があります。すべてのデータ更新およびメタデータを取得し、それらを S3 オブジェクトのバージョンとして統合します。

アーカイブゾーンの作成後には、アーカイブゾーンへのバケットの詳細なレプリケーションを使用できます。

バケットのライフサイクルポリシーを通じてアーカイブゾーンのストレージスペースの使用量を制御でき、オブジェクトに対して保持するバージョンの数を定義できます。

アーカイブゾーンは、論理的または物理的なエラーからデータを保護するのに役立ちます。これにより、実稼働ゾーンでバケットを誤って削除するなどの論理障害からユーザーを守ることができます。また、実稼働サイトの完全な障害など、大規模なハードウェア障害からデータを保存することもできます。さらに、不変のコピーも提供されるため、ランサムウェア保護戦略の構築に役立ちます。

バケットの詳細なレプリケーションを実装するには、ポリシーを有効または無効にする sync policies コマンドを使用します。詳細は 同期ポリシーグループの作成 および 同期ポリシーグループの変更 を参照してください。

注記

同期ポリシーグループ手順の使用はオプションであり、バケットの詳細なレプリケーションで有効化と無効化を使用する場合にのみ必要です。バケットの詳細なレプリケーションを使用せずにアーカイブゾーンを使用する場合、同期ポリシー手順を使用する必要はありません。

ストレージクラスターをシングルサイトから移行する場合は、シングルサイトシステムのマルチサイトへの移行 を参照してください。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • Ceph Monitor ノードへの root レベルのアクセス。
  • Ceph Object Gateway ソフトウェアのインストール。

手順

  • 新しいゾーンの作成中に、archive 層を使用してアーカイブゾーンを設定します。

    構文

    Copy to Clipboard Toggle word wrap
    $ radosgw-admin zone create --rgw-zonegroup={ZONE_GROUP_NAME} --rgw-zone={ZONE_NAME} --endpoints={http://FQDN:PORT},{http://FQDN:PORT} --tier-type=archive

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin zone create --rgw-zonegroup=us --rgw-zone=us-east --endpoints={http://example.com:8080} --tier-type=archive

  • アーカイブゾーンから、プライマリーゾーンのみから同期するようにアーカイブゾーンを変更し、期間更新コミットを実行します。

    構文

    Copy to Clipboard Toggle word wrap
    $ radosgw-admin zone modify --rgw-zone archive --sync_from primary --sync_from_all false --sync-from-rm secondary
    
    $ radosgw-admin period update --commit

注記

アーカイブゾーンの omap olh エントリーを考慮して、max_objs_per_shard を 50K に減らすことが推奨されます。これにより、バケットインデックスシャードオブジェクトあたりの omap エントリーの数を管理し、大きな omap 警告を防ぐことができます。

以下に例を示します。

Copy to Clipboard Toggle word wrap
$ ceph config set client.rgw rgw_max_objs_per_shard 50000

関連情報

5.4.1.1. アーカイブゾーン内のオブジェクトの削除

S3 ライフサイクルポリシー拡張機能を使用して、<ArchiveZone> 要素内のオブジェクトを削除できます。

重要

アーカイブゾーンオブジェクトは、expiration ライフサイクルポリシールールを使用してのみ削除できます。

  • いずれかの <Rule> セクションに <ArchiveZone> 要素が含まれている場合、そのルールはアーカイブゾーンで実行され、アーカイブゾーンで実行される唯一のルールになります。
  • <ArchiveZone> とマークされたルールは、非アーカイブゾーンでは実行されません。

ライフサイクルポリシー内のルールにより、いつ、どのオブジェクトを削除するかが決まります。ライフサイクルの作成と管理の詳細は、バケットのライフサイクル を参照してください。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • Ceph Monitor ノードへの root レベルのアクセス。
  • Ceph Object Gateway ソフトウェアのインストール。

手順

  1. <ArchiveZone> ライフサイクルポリシールールを設定します。ライフサイクルポリシーの作成の詳細は、Red Hat Ceph Storage オブジェクトゲートウェイガイドライフサイクル管理ポリシーの作成 セクションを参照してください。

    Copy to Clipboard Toggle word wrap
    <?xml version="1.0" ?>
    <LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
            <Rule>
                    <ID>delete-1-days-az</ID>
                    <Filter>
    		  <Prefix></Prefix>
    		  <ArchiveZone />   
    1
    
                    </Filter>
                    <Status>Enabled</Status>
                    <Expiration>
                            <Days>1</Days>
                    </Expiration>
            </Rule>
    </LifecycleConfiguration>

  2. オプション: 特定のライフサイクルポリシーにアーカイブゾーンルールが含まれているかどうかを確認します。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin lc get --bucket BUCKET_NAME

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin lc get --bucket test-bkt
    
    {
        "prefix_map": {
            "": {
                "status": true,
                "dm_expiration": true,
                "expiration": 0,
                "noncur_expiration": 2,
                "mp_expiration": 0,
                "transitions": {},
                "noncur_transitions": {}
            }
        },
        "rule_map": [
            {
                "id": "Rule 1",
                "rule": {
                    "id": "Rule 1",
                    "prefix": "",
                    "status": "Enabled",
                    "expiration": {
                        "days": "",
                        "date": ""
                    },
                    "noncur_expiration": {
                        "days": "2",
                        "date": ""
                    },
                    "mp_expiration": {
                        "days": "",
                        "date": ""
                    },
                    "filter": {
                        "prefix": "",
                        "obj_tags": {
                            "tagset": {}
                        },
                        "archivezone": ""   
    1
    
                    },
                    "transitions": {},
                    "noncur_transitions": {},
                    "dm_expiration": true
                }
            }
        ]
    }

    1 1
    アーカイブゾーンルール。これは、アーカイブゾーンルールを使用したライフサイクルポリシーの例です。
  3. Ceph Object Gateway ユーザーが削除されると、そのユーザーが所有するアーカイブサイトのバケットにアクセスできなくなります。これらのバケットを別の Ceph Object Gateway ユーザーにリンクして、データにアクセスします。

    構文

    Copy to Clipboard Toggle word wrap
     radosgw-admin bucket link --uid NEW_USER_ID --bucket BUCKET_NAME --yes-i-really-mean-it

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin bucket link --uid arcuser1 --bucket arc1-deleted-da473fbbaded232dc5d1e434675c1068 --yes-i-really-mean-it

関連情報

5.4.2. フェイルオーバーおよび障害復旧

プライマリーゾーンに障害が発生した場合は、障害復旧のためにセカンダリーゾーンにフェイルオーバーします。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • Ceph Monitor ノードへの root レベルのアクセス。
  • Ceph Object Gateway ソフトウェアのインストール。

手順

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

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default

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

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default --read-only=false

  2. 期間を更新して、変更を反映します。

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin period update --commit

  3. Ceph Object Gateway を再起動します。

    注記

    NAME 列の ceph orch ps コマンドの出力を使用して、SERVICE_TYPE.ID 情報を取得します。

    1. ストレージクラスター内の個別のノードで Ceph Object Gateway を再起動するには、以下を実行します。

      構文

      Copy to Clipboard Toggle word wrap
      systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service

      Copy to Clipboard Toggle word wrap
      [root@host01 ~]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.host01.gwasto.service

    2. ストレージクラスター内のすべてのノードで Ceph Object Gateway を再起動するには、以下を実行します。

      構文

      Copy to Clipboard Toggle word wrap
      ceph orch restart SERVICE_TYPE

      Copy to Clipboard Toggle word wrap
      [ceph: root@host01 /]# ceph orch restart rgw

以前のプライマリーゾーンが復旧する場合は、操作を元に戻します。

  1. 復旧したゾーンから、現在のプライマリーゾーンからレルムをプルします。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin realm pull --url=URL_TO_PRIMARY_ZONE_GATEWAY \
                                --access-key=ACCESS_KEY --secret=SECRET_KEY

  2. 復旧ゾーンをプライマリーおよびデフォルトゾーンにします。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default

  3. 期間を更新して、変更を反映します。

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin period update --commit

  4. 復旧されたゾーンで Ceph Object Gateway を再起動します。

    構文

    Copy to Clipboard Toggle word wrap
    ceph orch restart SERVICE_TYPE

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# ceph orch restart rgw

  5. セカンダリーゾーンを読み取り専用設定を使用する必要がある場合は、セカンダリーゾーンを更新します。

    構文

    Copy to Clipboard Toggle word wrap
    radosgw-admin zone modify --rgw-zone=ZONE_NAME --read-only
    radosgw-admin zone modify --rgw-zone=ZONE_NAME --read-only

  6. 期間を更新して、変更を反映します。

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# radosgw-admin period update --commit

  7. セカンダリーゾーンで Ceph Object Gateway を再起動します。

    構文

    Copy to Clipboard Toggle word wrap
    ceph orch restart SERVICE_TYPE

    Copy to Clipboard Toggle word wrap
    [ceph: root@host01 /]# ceph orch restart rgw

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.