11.10. 使用 Ceph Orchestrator 设置自定义 NFS-Ganesha 配置
NFS-Ganesha 集群在默认配置块中定义。通过使用 Ceph 编排器,您可以自定义配置,其优先级高于默认配置块。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 主机添加到集群中。
- 部署所有管理器、监控器和 OSD 守护进程。
-
使用
mgr/nfs
模块创建的 NFS-Ganesha 集群。
流程
登录到 Cephadm shell:
示例
cephadm shell
[root@host01 ~]# cephadm shell
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下是 NFS-Ganesha 集群默认配置的示例:
示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 自定义 NFS-Ganesha 集群配置。以下是自定义配置的两个示例:
更改日志级别:
示例
LOG { COMPONENTS { ALL = FULL_DEBUG; } }
LOG { COMPONENTS { ALL = FULL_DEBUG; } }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加自定义导出块:
创建用户。
注意在 FSAL 块中指定的用户应当具有适当的上限,以便 NFS-Ganesha 守护进程能访问 Ceph 集群。
语法
ceph auth get-or-create client.USER_ID mon 'allow r' osd 'allow rw pool=.nfs namespace=NFS_CLUSTER_NAME, allow rw tag cephfs data=FS_NAME' mds 'allow rw path=EXPORT_PATH'
ceph auth get-or-create client.USER_ID mon 'allow r' osd 'allow rw pool=.nfs namespace=NFS_CLUSTER_NAME, allow rw tag cephfs data=FS_NAME' mds 'allow rw path=EXPORT_PATH'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph auth get-or-create client.f64f341c-655d-11eb-8778-fa163e914bcc mon 'allow r' osd 'allow rw pool=.nfs namespace=nfs_cluster_name, allow rw tag cephfs data=fs_name' mds 'allow rw path=export_path'
[ceph: root@host01 /]# ceph auth get-or-create client.f64f341c-655d-11eb-8778-fa163e914bcc mon 'allow r' osd 'allow rw pool=.nfs namespace=nfs_cluster_name, allow rw tag cephfs data=fs_name' mds 'allow rw path=export_path'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 进入以下目录:
语法
cd /var/lib/ceph/DAEMON_PATH/
cd /var/lib/ceph/DAEMON_PATH/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# cd /var/lib/ceph/nfs/
[ceph: root@host01 /]# cd /var/lib/ceph/nfs/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果
nfs
目录不存在,请在路径中创建一个目录。创建新配置文件:
语法
touch PATH_TO_CONFIG_FILE
touch PATH_TO_CONFIG_FILE
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 nfs]# touch nfs-ganesha.conf
[ceph: root@host01 nfs]# touch nfs-ganesha.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过添加自定义导出块来编辑配置文件。它创建一个导出,并且由 Ceph NFS 导出接口管理。
语法
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
对集群应用新配置:
语法
ceph nfs cluster config set CLUSTER_NAME -i PATH_TO_CONFIG_FILE
ceph nfs cluster config set CLUSTER_NAME -i PATH_TO_CONFIG_FILE
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 nfs]# ceph nfs cluster config set nfs-ganesha -i /var/lib/ceph/nfs/nfs-ganesha.conf
[ceph: root@host01 nfs]# ceph nfs cluster config set nfs-ganesha -i /var/lib/ceph/nfs/nfs-ganesha.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 这还会为自定义配置重启服务。
验证
列出服务:
示例
[ceph: root@host01 /]# ceph orch ls
[ceph: root@host01 /]# ceph orch ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 列出主机、守护进程和进程:
语法
ceph orch ps --daemon_type=DAEMON_NAME
ceph orch ps --daemon_type=DAEMON_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch ps --daemon_type=nfs
[ceph: root@host01 /]# ceph orch ps --daemon_type=nfs
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证自定义配置:
语法
/bin/rados -p POOL_NAME -N CLUSTER_NAME get userconf-nfs.CLUSTER_NAME -
/bin/rados -p POOL_NAME -N CLUSTER_NAME get userconf-nfs.CLUSTER_NAME -
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# /bin/rados -p nfs-ganesha -N nfsganesha get userconf-nfs.nfsganesha -
[ceph: root@host01 /]# /bin/rados -p nfs-ganesha -N nfsganesha get userconf-nfs.nfsganesha -
Copy to Clipboard Copied! Toggle word wrap Toggle overflow