5.6. Ceph Object Gateway のインストール
Ceph Object Gateway は、RADOS ゲートウェイとも呼ばれ、librados
API 上に構築されたオブジェクトストレージインターフェイスであり、アプリケーションに Ceph ストレージクラスターへの RESTful ゲートウェイを提供します。
前提条件
-
稼働中の Red Hat Ceph Storage クラスター (
active + clean
状態が望ましい) - パスワードなしの SSH アクセスを有効にします。
- Ceph Object Gateway ノードで、3章Red Hat Ceph Storage のインストール要件 に記載されているタスクを実行します。
Ceph Object Gateway をマルチサイト設定で使用する場合は、ステップ 1 から 6 のみを完了します。マルチサイトを設定する前に Ansible Playbook を実行しないでください。単一のサイト設定で Object Gateway が起動します。Ansible は、ゲートウェイがシングルサイト設定で開始した後に、マルチサイトセットアップにゲートウェイを再設定することはできません。ステップ 1 ~ 6 を完了したら、マルチサイト Ceph Object Gateways の設定 セクションに進み、マルチサイトを設定します。
手順
Ansible 管理ノードで以下のタスクを実行します。
[rgws]
セクションの下の/etc/ansible/hosts
ファイルにゲートウェイホストを追加して、それらのロールを Ansible に識別します。ホストに連続する命名がある場合は、以下のように範囲を使用します。[rgws] <rgw_host_name_1> <rgw_host_name_2> <rgw_host_name[3..10]>
Ansible 設定ディレクトリーに移動します。
[root@ansible ~]# cd /usr/share/ceph-ansible
サンプルファイルから
rgws.yml
ファイルを作成します。[root@ansible ~]# cp group_vars/rgws.yml.sample group_vars/rgws.yml
group_vars/rgws.yml
ファイルを開いて編集します。管理者キーを Ceph Object Gateway ノードにコピーするには、copy_admin_key
オプションのコメントを解除します。copy_admin_key: true
all.yml
ファイルで、radosgw_interface
を指定する 必要 があります。radosgw_interface: <interface>
以下を置き換えます。
-
Ceph Object Gateway がリッスンするインターフェイスを使用する
<interface>
以下に例を示します。
radosgw_interface: eth0
インターフェイスを指定すると、同じホストで複数のインスタンスを実行している場合に、Civetweb が別の Civetweb インスタンスと同じ IP アドレスにバインドされないようにします。
詳細は、
all.yml
ファイルを参照してください。-
Ceph Object Gateway がリッスンするインターフェイスを使用する
通常、デフォルト設定を変更するには、
rgws.yml
ファイルの設定をコメント解除し、それに応じて変更を加えます。rgws.yml
ファイルに含まれていない設定に追加の変更を行うには、all.yml
ファイルでceph_conf_overrides:
を使用します。ceph_conf_overrides: client.rgw.rgw1: rgw_override_bucket_index_max_shards: 16 rgw_bucket_default_quota_max_objects: 1638400
詳細な設定の詳細は、Red Hat Ceph Storage 4 の 実稼働環境への Ceph Object Gateway ガイド を参照してください。高度なトピックには以下が含まれます。
- Ansible グループの設定
ストレージストラテジーの開発プールの作成方法および設定方法の詳細は、ルートプールの作成、システムプールの作成、およびデータ配置戦略の作成セクションを参照してください。
バケットのシャード化の詳細は、バケットのシャード化 を参照してください。
Ansible Playbook を実行します。
警告マルチサイトを設定する場合には、Ansible Playbook を実行しないでください。マルチサイト Ceph Object Gateways の設定 セクションに進み、マルチサイトを設定します。
ベアメタル デプロイメント:
[user@admin ceph-ansible]$ ansible-playbook site.yml --limit rgws -i hosts
コンテナー デプロイメント:
[user@admin ceph-ansible]$ ansible-playbook site-container.yml --limit rgws -i hosts
Ansible は、各 Ceph Object Gateway が確実に実行されていることを確認します。
単一サイトの設定の場合は、Ceph ObjectGateway を Ansible 設定に追加します。
マルチサイトデプロイメントでは、各ゾーンの Ansible 設定を行う必要があります。つまり、Ansible によって、そのゾーン用に Ceph Storage クラスターおよびゲートウェイインスタンスが作成されます。
マルチサイトクラスターのインストールが完了したら、マルチサイト用のクラスターの設定方法は、Red Hat Ceph Storage 4 のObject Gateway ガイドの マルチサイト の章に進んでください。
関連情報
-
詳細は、
limit
オプションの理解 を参照してください。 - Red Hat Ceph Storage 4 の オブジェクトゲートウェアガイド