10.2. サービス仕様を使用した Ceph Object Gateway のデプロイ
Ceph Object Gateway は、デフォルトまたはカスタムのレルム、ゾーン、およびゾーングループいずれかのサービス仕様を使用してデプロイできます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- ブートストラップされたホストへの root レベルのアクセス。
- ホストがクラスターに追加されている。
- すべてのマネージャー、モニター、および OSD デーモンがデプロイされます。
手順
root ユーザーとして、仕様ファイルを作成します。
例
[root@host01 ~]# touch radosgw.yml
Ceph Object Gateway のシャットダウン/再起動中に
rgw_graceful_stop
を 'true' に設定して、すべての未処理のリクエストが完了するまでrgw_exit_timeout_secs
パラメーターで定義された期間待機するように S3 リクエストを設定します。構文
ceph config set client.rgw rgw_graceful_stop true ceph config set client.rgw rgw_exit_timeout_secs 120
注記コンテナー化されたデプロイメントでは、
ceph orch stop/restart
コマンドを使用して想定どおりに動作させるために、追加のextra_container_agrs
設定--stop-timeout=120
(または、デフォルトでない場合は rgw_exit_timeout_secs 設定の値) も必要です。[root@host1 ~]$ cat rgw_spec.yaml service_type: rgw service_id: foo placement: count_per_host: 1 hosts: - rgw_node spec: rgw_frontend_port: 8081 extra_container_args: - --stop-timeout=120
radosgw.yml
ファイルを編集し、デフォルトレルム、ゾーン、およびゾーングループの以下の詳細を追加します。構文
service_type: rgw service_id: REALM_NAME.ZONE_NAME placement: hosts: - HOST_NAME_1 - HOST_NAME_2 count_per_host: NUMBER_OF_DAEMONS spec: rgw_realm: REALM_NAME rgw_zone: ZONE_NAME rgw_frontend_port: FRONT_END_PORT networks: - NETWORK_CIDR # Ceph Object Gateway service binds to a specific network
注記NUMBER_OF_DAEMONS は、各ホストにデプロイされる Ceph Object Gateway の数を制御します。追加のコストを発生させずに最高のパフォーマンスを実現するには、この値を 2 に設定します。
例
service_type: rgw service_id: default placement: hosts: - host01 - host02 - host03 count_per_host: 2 spec: rgw_realm: default rgw_zone: default rgw_frontend_port: 1234 networks: - 192.169.142.0/24
オプション: カスタムレルム、ゾーン、およびゾーングループの場合は、リソースを作成し、
radosgw.yml
ファイルを作成します。カスタムレルム、ゾーン、およびゾーングループを作成します。
例
[root@host01 ~]# radosgw-admin realm create --rgw-realm=test_realm [root@host01 ~]# radosgw-admin zonegroup create --rgw-zonegroup=test_zonegroup [root@host01 ~]# radosgw-admin zone create --rgw-zonegroup=test_zonegroup --rgw-zone=test_zone [root@host01 ~]# radosgw-admin period update --rgw-realm=test_realm --commit
以下の内容で
radosgw.yml
ファイルを作成します。例
service_type: rgw service_id: test_realm.test_zone placement: hosts: - host01 - host02 - host03 count_per_host: 2 spec: rgw_realm: test_realm rgw_zone: test_zone rgw_frontend_port: 1234 networks: - 192.169.142.0/24
radosgw.yml
ファイルをコンテナーのディレクトリーにマウントします。例
[root@host01 ~]# cephadm shell --mount radosgw.yml:/var/lib/ceph/radosgw/radosgw.yml
注記シェルを終了するたびに、デーモンをデプロイする前にファイルをコンテナーにマウントする必要があります。
サービス仕様を使用して Ceph Object Gateway をデプロイします。
構文
ceph orch apply -i FILE_NAME.yml
例
[ceph: root@host01 /]# ceph orch apply -i radosgw.yml
検証
サービスをリスト表示します。
例
[ceph: root@host01 /]# ceph orch ls
ホスト、デーモン、およびプロセスをリスト表示します。
構文
ceph orch ps --daemon_type=DAEMON_NAME
例
[ceph: root@host01 /]# ceph orch ps --daemon_type=rgw