5.9. NFS-Ganesha ゲートウェイのインストール
Ceph NFS Ganesha ゲートウェイは、Ceph Object Gateway 上に構築される NFS インターフェイスで、ファイルシステム内のファイルを Ceph Object Storage に移行するために POSIX ファイルシステムインターフェイスを使用するアプリケーションを Ceph Object Gateway に提供します。
前提条件
-
稼働中の Ceph ストレージクラスター (
active + clean
の状態が望ましい)。 - Ceph Object Gateway を実行するノードを少なくとも 1 つ。
- NFS-Ganesha を実行する前に、NFS-Ganesha を実行するホストで実行中のカーネル NFS サービスインスタンスをすべて無効にします。NFS-Ganesha は、別の NFS インスタンスが実行している場合は起動しません。
rpcbind サービスが実行していることを確認します。
# systemctl start rpcbind
注記rpcbind を提供する rpcbind パッケージは通常、デフォルトでインストールされます。そうでない場合は、最初にパッケージをインストールします。
nfs-service サービスが実行中である場合は、これを停止して無効にします。
# systemctl stop nfs-server.service # systemctl disable nfs-server.service
手順
Ansible 管理ノードで以下のタスクを実行します。
サンプルファイルから
nfss.yml
ファイルを作成します。[root@ansible ~]# cd /usr/share/ceph-ansible/group_vars [root@ansible ~]# cp nfss.yml.sample nfss.yml
[nfss]
グループの下にゲートウェイホストを/etc/ansible/hosts
ファイルに追加して、Ansible へのグループメンバーシップを特定します。[nfss] NFS_HOST_NAME_1 NFS_HOST_NAME_2 NFS_HOST_NAME[3..10]
ホストに連続する命名がある場合は、
[3..10]
のように範囲指定子を使用できます。Ansible 設定ディレクトリーに移動します。
[root@ansible ~]# cd /usr/share/ceph-ansible
管理者キーを Ceph Object Gateway ノードにコピーするには、
/usr/share/ceph-ansible/group_vars/nfss.yml
ファイルのcopy_admin_key
設定をコメント解除します。copy_admin_key: true
/usr/share/ceph-ansible/group_vars/nfss.yml
ファイルの FSAL (File System Abstraction Layer) セクションを設定します。エクスポート ID (NUMERIC_EXPORT_ID)、S3 ユーザー ID (S3_USER)、S3 アクセスキー (ACCESS_KEY)、およびシークレットキー (SECRET_KEY) を提供します。# FSAL RGW Config # ceph_nfs_rgw_export_id: NUMERIC_EXPORT_ID #ceph_nfs_rgw_pseudo_path: "/" #ceph_nfs_rgw_protocols: "3,4" #ceph_nfs_rgw_access_type: "RW" ceph_nfs_rgw_user: "S3_USER" ceph_nfs_rgw_access_key: "ACCESS_KEY" ceph_nfs_rgw_secret_key: "SECRET_KEY"
警告アクセスおよびシークレットキーは任意で、生成できます。
Ansible Playbook を実行します。
ベアメタル デプロイメント:
[ansible@admin ceph-ansible]$ ansible-playbook site.yml --limit nfss -i hosts
コンテナー デプロイメント:
[ansible@admin ceph-ansible]$ ansible-playbook site-container.yml --limit nfss -i hosts