Red Hat Training

A Red Hat training course is available for Red Hat Ceph Storage

1.4. コンテナーへの Ceph Object Gateway のインストール

ceph-ansible playbook で Ansible アプリケーションを使用して、Ceph Object Gateway をコンテナーにインストールします。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスター

手順

特に指定がない限り、Ansible 管理ノードから次のコマンドを実行します。

  1. root ユーザーとして、/usr/share/ceph-ansible/ ディレクトリーにナビゲートします。

    [root@admin ~]# cd /usr/share/ceph-ansible/
  2. group_vars/all.yml ファイルの radosgw_interface パラメーターのコメントを外します。

    radosgw_interface: interface

    interface を、Ceph Object Gateway ノードがリッスンするインターフェイスに置き換えます。

  3. オプション:デフォルトの変数を変更します。

    1. group_vars ディレクトリーにある rgws.yml.sample ファイルの新しいコピーを作成します。

      [root@admin ceph-ansible]# cp group_vars/rgws.yml.sample group_vars/rgws.yml
    2. group_vars/rgws.yml ファイルを編集します。詳細については、rgws.yml ファイルを参照してください。
  4. Ceph Object Gateway ノードのホスト名を、デフォルトで /etc/ansible/hosts にある Ansible インベントリーファイルの [rgws] セクションに追加します。

    [rgws]
    gateway01

    または、[osds] セクションと [rgws] セクションの下に同じノードを追加することで、Ceph Object Gateway を OSD デーモンと同じノードに配置することもできます。詳細は、「コンテナー化された Ceph デーモンのコロケーション」を参照してください。

  5. Ansible ユーザーとして、ceph-ansible Playbook を実行します。

    [user@admin ceph-ansible]$ ansible-playbook site-docker.yml --limit rgws
    注記

    Red Hat Ceph Storage を Red Hat Enterprise Linux Atomic Host ホストにデプロイする場合は、--skip-tags=with_pkg オプションを使用します。

    [user@admin ceph-ansible]$ ansible-playbook site-docker.yml --skip-tags=with_pkg
  6. Ceph Object Gateway ノードが正常にデプロイされたことを確認します。

    1. root ユーザーとして Monitor ノードに接続します。

      ssh hostname

      hostname を Monitor ノードのホスト名に置き換えます。次に例を示します。

      [user@admin ~]$ ssh root@monitor
    2. Ceph Object Gateway プールが正しく作成されたことを確認します。

      [root@monitor ~]# docker exec ceph-mon-mon1 rados lspools
      rbd
      cephfs_data
      cephfs_metadata
      .rgw.root
      default.rgw.control
      default.rgw.data.root
      default.rgw.gc
      default.rgw.log
      default.rgw.users.uid
    3. Ceph クラスターと同じネットワーク上の任意のクライアント (モニターノードなど) から、curl コマンドを使用して、Ceph Object Gateway ホストの IP アドレスを使用してポート 8080 で HTTP 要求を送信します。

      curl http://IP-address:8080

      IP-address を Ceph Object Gateway ノードの IP アドレスに置き換えます。Ceph Object Gateway ホストの IP アドレスを確認するには、ifconfig または ip コマンドを使用します。

      [root@client ~]# curl http://192.168.122.199:8080
      <?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>anonymous</ID><DisplayName></DisplayName></Owner><Buckets></Buckets></ListAllMyBucketsResult>
    4. バケットを一覧表示します。

      [root@monitor ~]# docker exec ceph-mon-mon1 radosgw-admin bucket list

関連情報