5.9. マルチサイトの Ceph Object Gateway コマンドラインの使用
ストレージ管理者は、マルチサイト環境での Ceph Object Gateway の使用方法を理解することができます。マルチサイト環境で、レルム、ゾーングループ、およびゾーンをより適切に管理する方法を説明します。
前提条件
- 実行中の Red Hat Ceph Storage。
- Ceph Object Gateway ソフトウェアのデプロイメント。
- Ceph Object Gateway ノードまたはコンテナーへのアクセス。
5.9.1. レルム リンクのコピーリンクがクリップボードにコピーされました!
レルムは、1 つ以上のゾーンが含まれる 1 つ以上のゾーングループと、バケットが含まれるゾーンで構成されるグローバル固有の名前空間を表します。この名前空間にはオブジェクトが含まれます。レルムにより、Ceph Object Gateway は同じハードウェアで複数の名前空間および設定をサポートできるようになります。
レルムには期間の概念が含まれます。それぞれの期間は、ゾーングループとゾーン設定の状態を時間で表しています。ゾーングループまたはゾーンに変更を加えるたびに、期間を更新してコミットします。
Red Hat は新規クラスターのレルムを作成することを推奨します。
5.9.1.1. レルムの作成 リンクのコピーリンクがクリップボードにコピーされました!
レルムを作成するには、realm create
コマンドを指定してレルム名を指定します。
手順
レルムを作成します。
構文
radosgw-admin realm create --rgw-realm=REALM_NAME
radosgw-admin realm create --rgw-realm=REALM_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin realm create --rgw-realm=test_realm
[ceph: root@host01 /]# radosgw-admin realm create --rgw-realm=test_realm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要データとメタデータが
default.rgw.data
とdefault.rgw.index
のプールに保存されている場合は、--default
フラグを指定したレルムを使用しないでください。新しいレルムがデフォルトとして設定され、これらのプールに重要なデータが含まれている場合、radosgw-admin
ユーティリティーはこのデータを適切に管理できない可能性があります。--default
フラグは、レルムをデフォルトとして指定する必要がある場合、およびdefault.rgw
プール内の既存のデータまたはメタデータが必要ない場合にのみ使用してください。既存のデータまたはメタデータが必要な場合は、デフォルト設定をマルチサイトまたはレルム設定に移行するか、新しいレルムをデフォルトとして設定しないようにしてください。マルチサイトへの移行の詳細は、シングルサイトシステムからマルチサイトへの移行 を参照してください。--default
を指定すると、--rgw-realm
とレルム名が明示的に指定されない限り、radosgw-admin
の呼び出しごとにレルムが暗黙的に呼び出されます。必要に応じて、デフォルトのレルムを変更します。
構文
radosgw-admin realm default --rgw-realm=REALM_NAME
radosgw-admin realm default --rgw-realm=REALM_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin realm default --rgw-realm=test_realm1
[ceph: root@host01 /]# radosgw-admin realm default --rgw-realm=test_realm1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.9.1.2. レルムのデフォルトの設定 リンクのコピーリンクがクリップボードにコピーされました!
レルムリストにある 1 つのレルムはデフォルトのレルムである必要があります。デフォルトレルムは 1 つのみです。レルムが 1 つだけあり、そのレルムが作成時にデフォルトレルムとして指定されていない場合は、デフォルトのレルムにします。または、デフォルトであるレルムを変更するには、以下のコマンドを実行します。
[ceph: root@host01 /]# radosgw-admin realm default --rgw-realm=test_realm
[ceph: root@host01 /]# radosgw-admin realm default --rgw-realm=test_realm
レルムがデフォルトの場合、コマンドラインでは --rgw-realm=REALM_NAME
を引数と想定します。
5.9.1.3. レルムの削除 リンクのコピーリンクがクリップボードにコピーされました!
レルムを削除するには、realm delete
コマンドを実行して、レルム名を指定します。
構文
radosgw-admin realm delete --rgw-realm=REALM_NAME
radosgw-admin realm delete --rgw-realm=REALM_NAME
例
[ceph: root@host01 /]# radosgw-admin realm delete --rgw-realm=test_realm
[ceph: root@host01 /]# radosgw-admin realm delete --rgw-realm=test_realm
5.9.1.4. レルムの取得 リンクのコピーリンクがクリップボードにコピーされました!
レルムを取得するには、realm get
コマンドを実行してレルム名を指定します。
構文
radosgw-admin realm get --rgw-realm=REALM_NAME
radosgw-admin realm get --rgw-realm=REALM_NAME
例
[ceph: root@host01 /]# radosgw-admin realm get --rgw-realm=test_realm >filename.json
[ceph: root@host01 /]# radosgw-admin realm get --rgw-realm=test_realm >filename.json
CLI は、レルムプロパティーを使用して JSON オブジェクトを echo します。
>
と出力ファイル名を使用して、JSON オブジェクトをファイルに出力します。
5.9.1.5. レルムの設定 リンクのコピーリンクがクリップボードにコピーされました!
レルムを設定するには、realm set
コマンドを実行し、レルム名を指定し、--infile=
を入力ファイル名で指定します。
構文
radosgw-admin realm set --rgw-realm=REALM_NAME --infile=IN_FILENAME
radosgw-admin realm set --rgw-realm=REALM_NAME --infile=IN_FILENAME
例
[ceph: root@host01 /]# radosgw-admin realm set --rgw-realm=test_realm --infile=filename.json
[ceph: root@host01 /]# radosgw-admin realm set --rgw-realm=test_realm --infile=filename.json
5.9.1.6. レルムのリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
レルムをリスト表示するには、realm list
コマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin realm list
[ceph: root@host01 /]# radosgw-admin realm list
5.9.1.7. レルム期間のリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
レルムの期間をリスト表示するには、realm list-periods
コマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin realm list-periods
[ceph: root@host01 /]# radosgw-admin realm list-periods
5.9.1.8. レルムのプル リンクのコピーリンクがクリップボードにコピーされました!
マスターゾーングループとマスターゾーンを含むノードからセカンダリーゾーングループまたはゾーンを含むノードにレルムをプルするには、レルム設定を受け取るノードで realm pull
コマンドを実行します。
構文
radosgw-admin realm pull --url=URL_TO_MASTER_ZONE_GATEWAY--access-key=ACCESS_KEY --secret=SECRET_KEY
radosgw-admin realm pull --url=URL_TO_MASTER_ZONE_GATEWAY--access-key=ACCESS_KEY --secret=SECRET_KEY
5.9.1.9. レルムの名前変更 リンクのコピーリンクがクリップボードにコピーされました!
レルムは期間の一部ではありません。そのため、レルムの名前変更はローカルでのみ適用され、realm pull
でプルされません。
複数のゾーンを持つレルムの名前を変更する場合は、各ゾーンでコマンドを実行します。
手順
レルムの名前を変更します。
構文
radosgw-admin realm rename --rgw-realm=REALM_NAME --realm-new-name=NEW_REALM_NAME
radosgw-admin realm rename --rgw-realm=REALM_NAME --realm-new-name=NEW_REALM_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記realm set
を使用してname
パラメーターを変更しないでください。これにより、内部名のみが変更されます。--rgw-realm
を指定すると、古いレルム名が使用されます。例
[ceph: root@host01 /]# radosgw-admin realm rename --rgw-realm=test_realm --realm-new-name=test_realm2
[ceph: root@host01 /]# radosgw-admin realm rename --rgw-realm=test_realm --realm-new-name=test_realm2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をコミットします。
構文
radosgw-admin period update --commit
radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.9.2. ゾーングループ リンクのコピーリンクがクリップボードにコピーされました!
Ceph Object Gateway は、ゾーングループの概念を使用したマルチサイトデプロイメントおよびグローバル名前空間をサポートします。以前はリージョンと呼ばれていたゾーングループは、1 つ以上のゾーン内の 1 つ以上の Ceph Object Gateway インスタンスの地理的な場所を定義します。
ゾーングループの設定は、設定のすべてが Ceph 設定ファイルになるわけではないため、一般的な設定手順とは異なります。ゾーングループのリストを表示し、ゾーングループ設定を取得し、ゾーングループ設定を設定できます。
期間を更新するステップはクラスター全体に変更を伝播するため、radosgw-admin zonegroup
操作はレルム内の任意のノードで実行できます。ただし、radosgw-admin zone
操作は、ゾーン内のホストで実行する 必要があります。
5.9.2.1. ゾーングループの作成 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループの作成は、ゾーングループ名の指定から始まります。ゾーンの作成では、--rgw-realm=REALM_NAME
が指定されていない限り、デフォルトのレルムで実行されていることを前提としています。ゾーングループがマスターゾーングループの場合は、--master
フラグを指定します。
データとメタデータが default.rgw.data
と default.rgw.index
プールに保存されている場合は、--default
フラグを使用してゾーングループを作成しないでください。新しいゾーングループがデフォルトとして設定され、これらのプールに重要なデータが含まれている場合、radosgw-admin
ユーティリティーはこのデータを適切に管理できない可能性があります。
--default
フラグは、ゾーングループをデフォルトとして指定する必要がある場合、および default.rgw
プール内の既存のデータまたはメタデータが必要ない場合にのみ使用してください。既存のデータまたはメタデータが必要な場合は、デフォルト設定をマルチサイトまたはゾーングループ設定に移行するか、新しいゾーングループをデフォルトとして設定しないようにしてください。マルチサイトへの移行の詳細は、シングルサイトシステムからマルチサイトへの移行 を参照してください。--default
を指定すると、--rgw-zonegroup
とゾーングループ名が明示的に指定されない限り、ゾーングループは radosgw-admin
呼び出しごとに暗黙的に呼び出されます。
手順
ゾーングループを作成します。
構文
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME [--rgw-realm=REALM_NAME] [--master]
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME [--rgw-realm=REALM_NAME] [--master]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin zonegroup create --rgw-zonegroup=zonegroup1 --rgw-realm=test_realm --default
[ceph: root@host01 /]# radosgw-admin zonegroup create --rgw-zonegroup=zonegroup1 --rgw-realm=test_realm --default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、ゾーングループ設定を変更します。
構文
zonegroup modify --rgw-zonegroup=ZONE_GROUP_NAME
zonegroup modify --rgw-zonegroup=ZONE_GROUP_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin zonegroup modify --rgw-zonegroup=zonegroup1
[ceph: root@host01 /]# radosgw-admin zonegroup modify --rgw-zonegroup=zonegroup1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、デフォルトゾーングループを変更します。
構文
radosgw-admin zonegroup default --rgw-zonegroup=ZONE_GROUP_NAME
radosgw-admin zonegroup default --rgw-zonegroup=ZONE_GROUP_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin zonegroup default --rgw-zonegroup=zonegroup2
[ceph: root@host01 /]# radosgw-admin zonegroup default --rgw-zonegroup=zonegroup2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をコミットします。
構文
radosgw-admin period update --commit
radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.9.2.2. ゾーングループをデフォルトにする リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループリスト内の 1 つのゾーングループは、デフォルトのゾーングループである必要があります。デフォルトのゾーングループは 1 つのみです。ゾーングループが 1 つだけあり、そのゾーンは作成時にデフォルトのゾーングループとして指定されていない場合は、デフォルトのゾーングループにします。または、デフォルトであるゾーングループを変更するには、以下のコマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin zonegroup default --rgw-zonegroup=us
[ceph: root@host01 /]# radosgw-admin zonegroup default --rgw-zonegroup=us
ゾーングループがデフォルトの場合、コマンドラインは --rgw-zonegroup=ZONE_GROUP_NAME
を引数として想定します。
次に、期間を更新します。
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.3. ゾーングループへのゾーンの追加 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループにゾーンを追加するには、ゾーンに追加するホストでこのコマンドを実行する必要があります。ゾーングループにゾーンを追加するには、次のコマンドを実行します。
構文
radosgw-admin zonegroup add --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME
radosgw-admin zonegroup add --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.4. ゾーングループからのゾーンの削除 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループからゾーンを削除するには、次のコマンドを実行します。
構文
radosgw-admin zonegroup remove --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME
radosgw-admin zonegroup remove --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.5. ゾーングループの名前変更 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループの名前を変更するには、次のコマンドを実行します。
構文
radosgw-admin zonegroup rename --rgw-zonegroup=ZONE_GROUP_NAME --zonegroup-new-name=NEW_ZONE_GROUP_NAME
radosgw-admin zonegroup rename --rgw-zonegroup=ZONE_GROUP_NAME --zonegroup-new-name=NEW_ZONE_GROUP_NAME
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.6. ゾーングループの削除 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループを削除するには、次のコマンドを実行します。
構文
radosgw-admin zonegroup delete --rgw-zonegroup=ZONE_GROUP_NAME
radosgw-admin zonegroup delete --rgw-zonegroup=ZONE_GROUP_NAME
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.7. ゾーングループのリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
Ceph クラスターには、ゾーングループのリストが含まれます。ゾーングループをリスト表示するには、以下のコマンドを実行します。
[ceph: root@host01 /]# radosgw-admin zonegroup list
[ceph: root@host01 /]# radosgw-admin zonegroup list
radosgw-admin
は、JSON 形式のゾーングループのリストを返します。
5.9.2.8. ゾーングループの取得 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループの設定を表示するには、次のコマンドを実行します。
構文
radosgw-admin zonegroup get [--rgw-zonegroup=ZONE_GROUP_NAME]
radosgw-admin zonegroup get [--rgw-zonegroup=ZONE_GROUP_NAME]
ゾーングループの設定は以下のようになります。
{ "id": "abd3004c-9933-4157-a91e-de3fb0584f3e"、"name": "shared"、"api_name": "shared"、"is_master": true、"endpoints": [ "http://pluto003:5000" ]、"hostnames": []、"hostnames_s3website": []、"master_zone": "26a46c38-f7ce-4d97-b356-c251415c062b"、"zones": [ { "id": "26a46c38-f7ce-4d97-b356-c251415c062b"、"name": "primary"、"endpoints": [ "http://pluto003:5000" ]、"log_meta": false、"log_data": true、"bucket_index_max_shards": 11、"read_only": false、"tier_type": ""、"sync_from_all": true、"sync_from": []、"redirect_zone": ""、"supported_features": [ "compress-encrypted"、"resharding" ] }、{ "id": "4fa4be7c-4ecd-4a2d-83b4-0e4d5a9d915f"、"name": "archive"、"endpoints": [ "http://pluto010:5000" ]、"log_meta": false、"log_data": true、"bucket_index_max_shards": 11、"read_only": false、"tier_type": "archive"、"sync_from_all": false、"sync_from": [ "primary" ]、"redirect_zone": ""、"supported_features": [ "compress-encrypted"、"resharding" ] }、{ "id": "e3792738-60c4-4069-adf3-7f253b622197"、"name": "secondary"、"endpoints": [ "http://pluto006:5000" ]、"log_meta": false、"log_data": true、"bucket_index_max_shards": 11、"read_only": false、"tier_type": ""、"sync_from_all": true、"sync_from": []、"redirect_zone": ""、"supported_features": [ "compress-encrypted"、"resharding" ] } ]、"placement_targets": [ { "name": "default-placement"、"tags": []、"storage_classes": [ "STANDARD" ] } ]、"default_placement": "default-placement"、"realm_id": "2b7aa9ac-17cb-4a3e-9119-9065368cd3a8"、"sync_policy": { "groups": [] }、"enabled_features": [ "resharding" ] }
フィールド | 説明 |
id | ゾーングループに割り当てられた一意の文字列。 |
name | ゾーングループの名前。 |
api_name | 異なるゾーン間でのデータ複製に使用される RADOS API の名前。別途指定されない限り、通常は name フィールドと同じです。 |
is_master | ゾーングループがマスターの場合は true、それ以外の場合は false。マルチサイト設定では複数のゾーングループが存在する場合があります。 |
endpoints | ゾーングループの設定中に指定されたエンドポイント。 |
hostnames | 指定するオプションのフィールド。ホスト名。 |
hostnames_s3website | S3 のホスト名。Web サイト。 |
master_zone | --master パラメーターを使用してゾーンを作成するときにメタデータマスターとして指定されたゾーン。 |
zones | ゾーングループ内で同期に参加しているゾーンのリスト。 |
log_meta | メタデータのロギングをオン/オフにするオプションのパラメーター。 |
log_data | データログのオン/オフを切り替えるオプションパラメーター。 |
bucket_index_max_shards | ゾーンに保存される新しく作成されたバケットのバケットインデックスシャードのデフォルトの数。 |
read_only | デフォルトでは false (読み取り/書き込みゾーン)。ゾーンが明示的に読み取り専用に設定されている場合は true。 |
tier_type | アーカイブゾーン、Elasticsearch、pub/sub、クラウド同期モジュールなどの同期モジュール層タイプで設定されたゾーン。 |
sync_from_all | ゾーンがゾーングループ内の他のすべてのゾーンから同期する場合はデフォルトで true になります。ゾーンが sync_from フィールドで指定された 1 つまたはいくつかのゾーンからのみ同期することを意図している場合は false になります。 |
sync_from | 同期元の 1 つ以上のゾーン名のリスト。 |
supported_features | 圧縮/暗号化、リシャーディングなど、ゾーンで利用可能な機能のリスト。 |
placement_targets | バケットインデックスプール、ストレージクラスなど、デフォルトおよびカスタムの配置情報を表示します。 |
sync_policy | 存在する場合はポリシー設定情報を同期します。 |
enabled_features | 圧縮/暗号化、リシャーディングなど、ゾーンで有効になっている機能。 |
5.9.2.9. ゾーングループの設定 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループの定義は、少なくとも必要な設定を指定して JSON オブジェクト作成することから始まります。
-
name
: ゾーングループの名前。必須です。 -
api_name
: ゾーングループの API 名。任意です。 is_master
: ゾーングループがマスターゾーングループであるかどうかを指定します。必須です。注記: マスターゾーングループを 1 つだけ指定できます。
-
endpoints
: ゾーングループ内のエンドポイントのリスト。たとえば、複数のドメイン名を使用して、同じゾーングループを参照できます。忘れずに前方スラッシュ (\/
) エスケープしてください。各エンドポイントにポート (fqdn:port
) を指定することもできます。任意です。 -
hostnames
: ゾーングループのホスト名のリスト。たとえば、複数のドメイン名を使用して、同じゾーングループを参照できます。任意です。rgw dns name
設定は、このリストに自動的に含まれます。この設定を変更したら、ゲートウェイデーモンを再起動する必要があります。 master_zone
: ゾーングループのマスターゾーン。任意です。指定がない場合は、デフォルトゾーンを使用します。注記ゾーングループごとにマスターゾーンを 1 つだけ指定できます。
-
zones
: ゾーングループ内のゾーンのリスト。各ゾーンには、名前 (必須)、エンドポイントのリスト (任意)、およびゲートウェイがメタデータおよびデータ操作をログに記録するかどうか (デフォルトでは false) があります。 -
placement_targets
: 配置ターゲットのリスト (任意)。各配置ターゲットには、配置ターゲットの名前 (必須) とタグのリスト (任意) が含まれているため、タグを持つユーザーのみが配置ターゲットを使用できます (つまり、ユーザー情報のユーザーのplacement_tags
フィールド)。 -
default_placement
: オブジェクトインデックスおよびオブジェクトデータのデフォルトの配置ターゲット。デフォルトではdefault-placement
に設定されます。また、ユーザーごとのデフォルトの配置を、ユーザー情報で設定することもできます。
ゾーングループを設定するには、必須フィールドで構成される JSON オブジェクトを作成し、オブジェクトをファイル (たとえば、zonegroup.json
) に保存します。次に、次のコマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin zonegroup set --infile zonegroup.json
[ceph: root@host01 /]# radosgw-admin zonegroup set --infile zonegroup.json
ここで、zonegroup.json
は作成した JSON ファイルです。
default
ゾーングループの is_master
設定は true
です。新しいゾーングループを作成してそれをマスターゾーングループにしたい場合は、default
ゾーングループ is_master
設定を false
に設定するか、default
ゾーングループを削除する必要があります。
最後に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.2.10. ゾーングループマップの設定 リンクのコピーリンクがクリップボードにコピーされました!
ゾーングループマップの設定は、1 つ以上のゾーングループで構成される JSON オブジェクトの作成と、クラスターの master_zonegroup
の設定で指定されます。ゾーングループマップの各ゾーングループは、キーと値のペアで構成されます。key
設定は、個々のゾーングループ設定の 名前
設定と同等であり、val
は、個々のゾーングループ設定で指定される JSON オブジェクトです。
is_master
が true
と同等のゾーングループを 1 つだけ持つ可能性があり、ゾーングループマップの最後に master_zonegroup
として指定する必要があります。以下の JSON オブジェクトは、デフォルトゾーングループマップの例です。
ゾーングループマップを設定するには、次のコマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin zonegroup-map set --infile zonegroupmap.json
[ceph: root@host01 /]# radosgw-admin zonegroup-map set --infile zonegroupmap.json
ここで、zonegroupmap.json
は作成した JSON ファイルです。ゾーングループマップで指定したゾーンが作成されていることを確認します。最後に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.3. ゾーン リンクのコピーリンクがクリップボードにコピーされました!
Ceph Object Gateway はゾーンの概念をサポートします。ゾーンは、1 つ以上の Ceph Object Gateway インスタンスで構成される論理グループを定義します。
ゾーンの設定は、Ceph 設定ファイル内で終了するすべての設定ではないため、一般的な設定手順とは異なります。ゾーンをリスト表示して、ゾーン設定を取得し、ゾーン設定を設定できます。
radosgw-admin zone
操作はすべて、ゾーン内で動作するまたはこれから動作するホストで発行する 必要があります。
5.9.3.1. ゾーンの作成 リンクのコピーリンクがクリップボードにコピーされました!
ゾーンを作成するには、ゾーン名を指定します。マスターゾーンの場合は、--master
オプションを指定します。ゾーングループ内の 1 つのゾーンだけがマスターゾーンになることができます。ゾーングループにゾーンを追加するには、--rgw-zonegroup
オプションをゾーングループ名で指定します。
ゾーン内の Ceph Object Gateway ノードでゾーンを作成する必要があります。
データとメタデータが default.rgw.data
と default.rgw.index
プールに保存されている場合は、--default
フラグを使用してゾーンを作成しないでください。新しいゾーンがデフォルトとして設定され、これらのプールに重要なデータが含まれている場合、radosgw-admin
ユーティリティーはこのデータを適切に管理できない可能性があります。
ゾーンをデフォルトとして指定する必要がある場合、および default.rgw
プール内の既存のデータまたはメタデータが必要ない場合にのみ、--default
フラグを使用します。既存のデータまたはメタデータが必要な場合は、デフォルト設定をマルチサイトまたはゾーン設定に移行するか、新しいゾーンをデフォルトとして設定しないようにしてください。マルチサイトへの移行の詳細は、シングルサイトシステムからマルチサイトへの移行 を参照してください。--default
を指定すると、--rgw-zone
とゾーン名が明示的に指定されない限り、radosgw-admin
呼び出しごとにゾーンが暗黙的に呼び出されます。
手順
ゾーンを作成します。
構文
radosgw-admin zone create --rgw-zone=ZONE_NAME \ [--zonegroup=ZONE_GROUP_NAME]\ [--endpoints=ENDPOINT_PORT [,<endpoint:port>] \ [--master] [--default] \ --access-key ACCESS_KEY --secret SECRET_KEY
radosgw-admin zone create --rgw-zone=ZONE_NAME \ [--zonegroup=ZONE_GROUP_NAME]\ [--endpoints=ENDPOINT_PORT [,<endpoint:port>] \ [--master] [--default] \ --access-key ACCESS_KEY --secret SECRET_KEY
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更をコミットします。
構文
radosgw-admin period update --commit
radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.9.3.2. ゾーンの削除 リンクのコピーリンクがクリップボードにコピーされました!
ゾーンを削除するには、最初にゾーングループからこれを削除します。
手順
ゾーングループからゾーンを削除します。
構文
radosgw-admin zonegroup remove --rgw-zonegroup=ZONE_GROUP_NAME\ --rgw-zone=ZONE_NAME
radosgw-admin zonegroup remove --rgw-zonegroup=ZONE_GROUP_NAME\ --rgw-zone=ZONE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ゾーンを削除します。
重要この手順は、ゾーン内のホストで必ず使用する必要があります。
構文
radosgw-admin zone delete --rgw-zone=ZONE_NAME
radosgw-admin zone delete --rgw-zone=ZONE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要ゾーングループから先にゾーンを削除せずに、ゾーンを削除しないでください。それ以外の場合には、期間の更新に失敗します。
削除したゾーンのプールが他に使用されていない場合は、プールを削除することを検討してください。以下の例の DELETED_ZONE_NAME
を、削除したゾーン名に置き換えます。
Ceph がゾーンプールを削除すると、それによってリカバリー不可能な方法でその中のデータが削除されます。Ceph クライアントにプールの内容が必要なくなった場合にのみ、ゾーンプールを削除します。
マルチレルムクラスターでは、.rgw.root
プールをゾーンプールと共に削除すると、クラスターのレルム情報のすべてが削除されます。.rgw.root
プールを削除する前に、.rgw.root
に他のアクティブなレルムが含まれていないことを確認します。
構文
ceph osd pool delete DELETED_ZONE_NAME.rgw.control DELETED_ZONE_NAME.rgw.control --yes-i-really-really-mean-it ceph osd pool delete DELETED_ZONE_NAME.rgw.data.root DELETED_ZONE_NAME.rgw.data.root --yes-i-really-really-mean-it ceph osd pool delete DELETED_ZONE_NAME.rgw.log DELETED_ZONE_NAME.rgw.log --yes-i-really-really-mean-it ceph osd pool delete DELETED_ZONE_NAME.rgw.users.uid DELETED_ZONE_NAME.rgw.users.uid --yes-i-really-really-mean-it
ceph osd pool delete DELETED_ZONE_NAME.rgw.control DELETED_ZONE_NAME.rgw.control --yes-i-really-really-mean-it
ceph osd pool delete DELETED_ZONE_NAME.rgw.data.root DELETED_ZONE_NAME.rgw.data.root --yes-i-really-really-mean-it
ceph osd pool delete DELETED_ZONE_NAME.rgw.log DELETED_ZONE_NAME.rgw.log --yes-i-really-really-mean-it
ceph osd pool delete DELETED_ZONE_NAME.rgw.users.uid DELETED_ZONE_NAME.rgw.users.uid --yes-i-really-really-mean-it
プールの削除後に、RGW プロセスを再起動します。
5.9.3.3. ゾーンの変更 リンクのコピーリンクがクリップボードにコピーされました!
ゾーンを変更するには、ゾーン名と、変更するパラメーターを指定します。
ゾーンは、ゾーン内にある Ceph Object Gateway ノードで変更する必要があります。
構文
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.3.4. ゾーンのリスト リンクのコピーリンクがクリップボードにコピーされました!
root
でクラスター内のゾーンをリスト表示するには、以下のコマンドを実行します。
例
[ceph: root@host01 /]# radosgw-admin zone list
[ceph: root@host01 /]# radosgw-admin zone list
5.9.3.5. ゾーンの取得 リンクのコピーリンクがクリップボードにコピーされました!
root
でゾーンの設定を取得するには、次のコマンドを実行します。
構文
radosgw-admin zone get [--rgw-zone=ZONE_NAME]
radosgw-admin zone get [--rgw-zone=ZONE_NAME]
default
ゾーンは以下のようになります。
{ "id": "49408bb1-7e63-4324-b713-3d7778352f2c"、"name": "zg1-2"、"domain_root": "zg1-2.rgw.meta:root"、"control_pool": "zg1-2.rgw.control"、"gc_pool": "zg1-2.rgw.log:gc"、"lc_pool": "zg1-2.rgw.log:lc"、"log_pool": "zg1-2.rgw.log"、"intent_log_pool": "zg1-2.rgw.log:intent"、"usage_log_pool": "zg1-2.rgw.log:usage"、"roles_pool": "zg1-2.rgw.meta:roles"、"reshard_pool": "zg1-2.rgw.log:reshard"、"user_keys_pool": "zg1-2.rgw.meta:users.keys"、"user_email_pool": "zg1-2.rgw.meta:users.email"、"user_swift_pool": "zg1-2.rgw.meta:users.swift"、"user_uid_pool": "zg1-2.rgw.meta:users.uid"、"otp_pool": "zg1-2.rgw.otp"、"notif_pool": "zg1-2.rgw.log:notif"、"topics_pool": "zg1-2.rgw.meta:topics"、"account_pool": "zg1-2.rgw.meta:accounts"、"group_pool": "zg1-2.rgw.meta:groups"、"system_key": { "access_key": "1234567890"、"secret_key": "pencil" }、"placement_pools": [ { "key": "default-placement"、"val": { "index_pool": "zg1-2.rgw.buckets.index"、"storage_classes": { "STANDARD": { "data_pool": "zg1-2.rgw.buckets.data" } }、"data_extra_pool": "zg1-2.rgw.buckets.non-ec"、"index_type": 0、"inline_data": true } } ]、"realm_id": "7b65ec9b-149d-4200-8bb0-0390565c11e6" }
フィールド | 説明 |
---|---|
id | ゾーンに割り当てられた一意の文字列。 |
domain_root | ゾーンに関連するすべてのシステム設定が存在するルートプール。 |
control_pool | 内部の監視通知メカニズムに使用されます。 |
gc_pool | ガベージコレクションプール。 |
lc_pool | ゾーングループの設定中に指定されたエンドポイント。 |
log_pool | マルチサイト関連のデータログと mdlog はこのプールに保存されます。 |
usage_log_pool | ユーザー操作に関する統計を蓄積する使用法ロギング。 |
roles_pool | ユーザーロール情報を保存します。 |
reshard_pool | バケットの再シャーディングのログエントリーを保存します。 |
user_keys_pool | プールには、各ユーザー ID のアクセスキーとシークレットキーが含まれています。 |
user_email_pool | プールには、ユーザー ID に関連付けられたメールアドレスが含まれます。 |
user_swift_pool | プールには、ユーザー ID の Swift サブユーザー情報が含まれています。 |
user_uid_pool | ユーザー ID を保存します。 |
otp_pool | 多要素認証関連情報を保存するプール。 |
notif_pool | 永続的な配信通知関連情報。 |
topics_pool | 通知トピックを保存します。 |
account_pool | ユーザーアカウント関連の情報を保存します。 |
system_key | マルチサイト同期のために内部的に使用されるシステムアクセスと秘密鍵を表示します。 |
placement_pools | バケットインデックスプールのストレージクラスなどを含む、デフォルトおよびカスタムの配置情報を表示します。 |
realm_id | マルチサイトが設定されている場合は、レルム ID、リシャーディングなどが表示されます。 |
5.9.3.6. ゾーンの設定 リンクのコピーリンクがクリップボードにコピーされました!
ゾーンの設定には、一連の Ceph Object Gateway プールを指定する必要があります。一貫性を保つために、ゾーン名と同じプールの接頭辞を使用することが推奨されます。プールの設定に関する詳細は、Red Hat Ceph Storage Storage ストラテジーガイドの プール の章を参照してください。
ゾーン内の Ceph Object Gateway ノードでゾーンを設定する必要があります。
ゾーンを設定するには、プールで構成される JSON オブジェクトを作成し、オブジェクトをファイル (例: zone.json
) に保存します。続いて以下のコマンドを実行して、ZONE_NAME
をゾーンの名前に置き換えます。
例
[ceph: root@host01 /]# radosgw-admin zone set --rgw-zone=test-zone --infile zone.json
[ceph: root@host01 /]# radosgw-admin zone set --rgw-zone=test-zone --infile zone.json
ここで、zone.json
は作成した JSON ファイルです。
次に、root
でピリオドを更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit
5.9.3.7. ゾーンの名前変更 リンクのコピーリンクがクリップボードにコピーされました!
ゾーンの名前を変更するには、ゾーン名および新しいゾーン名を指定します。ゾーン内のホストで以下のコマンドを発行します。
構文
radosgw-admin zone rename --rgw-zone=ZONE_NAME --zone-new-name=NEW_ZONE_NAME
radosgw-admin zone rename --rgw-zone=ZONE_NAME --zone-new-name=NEW_ZONE_NAME
次に、期間を更新します。
例
[ceph: root@host01 /]# radosgw-admin period update --commit
[ceph: root@host01 /]# radosgw-admin period update --commit