diff --git a/.githubmap b/.githubmap index d6fd2b55bba..d69f58b4cf7 100644 --- a/.githubmap +++ b/.githubmap @@ -125,3 +125,4 @@ mchangir Milind Changire kotreshhr Kotresh Hiremath Ravishankar vkmc Victoria Martinez de la Cruz gouthampacha Goutham Pacha Ravi +zdover23 Zac Dover diff --git a/doc/cephfs/fs-nfs-exports.rst b/doc/cephfs/fs-nfs-exports.rst index 9740404bd60..e655c9233a0 100644 --- a/doc/cephfs/fs-nfs-exports.rst +++ b/doc/cephfs/fs-nfs-exports.rst @@ -17,15 +17,39 @@ Create NFS Ganesha Cluster .. code:: bash - $ ceph nfs cluster create [] + $ ceph nfs cluster create [] -This creates a common recovery pool for all Ganesha daemons, new user based on -cluster_id and common ganesha config rados object. +This creates a common recovery pool for all NFS Ganesha daemons, new user based on +cluster_id, and a common NFS Ganesha config RADOS object. -Here type is export type and placement specifies the size of cluster and hosts. -For more details on placement specification refer the `orchestrator doc -`_. -Currently only CephFS export type is supported. +NOTE: Since this command also brings up NFS Ganesha daemons using a ceph-mgr +orchestrator module (see :doc:`/mgr/orchestrator`) such as "mgr/cephadm", at +least one such module must be enabled for it to work. + + signifies the export type, which corresponds to the NFS Ganesha file +system abstraction layer (FSAL). Permissible values are "cephfs" or "rgw", but +currently only "cephfs" is supported. + + is an arbitrary string by which this NFS Ganesha cluster will be +known. + + is an optional string signifying which hosts should have NFS Ganesha +daemon containers running on them and, optionally, the total number of NFS +Ganesha daemons the cluster (should you want to have more than one NFS Ganesha +daemon running per node). For example, the following placement string means +"deploy NFS Ganesha daemons on nodes host1 and host2 (one daemon per host): + + "host1,host2" + +and this placement specification says to deploy two NFS Ganesha daemons each +on nodes host1 and host2 (for a total of four NFS Ganesha daemons in the +cluster): + + "4 host1,host2" + +For more details on placement specification refer to the `orchestrator doc +`_ +but keep in mind that specifying the placement via a YAML file is not supported. Update NFS Ganesha Cluster ========================== @@ -63,8 +87,8 @@ Show NFS Ganesha Cluster Information This displays ip and port of deployed cluster. -Set Customized Ganesha Configuration -==================================== +Set Customized NFS Ganesha Configuration +======================================== .. code:: bash @@ -73,8 +97,8 @@ Set Customized Ganesha Configuration With this the nfs cluster will use the specified config and it will have precedence over default config blocks. -Reset Ganesha Configuration -=========================== +Reset NFS Ganesha Configuration +=============================== .. code:: bash @@ -89,8 +113,14 @@ Create CephFS Export $ ceph nfs export create cephfs [--readonly] [--path=/path/in/cephfs] -It creates export rados objects containing the export block. Here binding is -the pseudo root name and type is export type. +This creates export RADOS objects containing the export block, where + +``fsname`` is the name of the FS volume used by the NFS Ganesha cluster that will +serve this export. + +``clusterid`` is the NFS Ganesha cluster ID. + +``binding`` is the pseudo root path (must be an absolute path). Delete CephFS Export ==================== @@ -99,17 +129,24 @@ Delete CephFS Export $ ceph nfs export delete -It deletes an export in cluster based on pseudo root name (binding). +This deletes an export in an NFS Ganesha cluster, where: -List CephFS Export -================== +``clusterid`` is the NFS Ganesha cluster ID. + +``binding`` is the pseudo root path (must be an absolute path). + +List CephFS Exports +=================== .. code:: bash $ ceph nfs export ls [--detailed] -It lists export for a cluster. With detailed option enabled it shows entire -export block. +It lists exports for a cluster, where: + +``clusterid`` is the NFS Ganesha cluster ID. + +With the ``--detailed`` option enabled it shows entire export block. Get CephFS Export ================= @@ -118,18 +155,25 @@ Get CephFS Export $ ceph nfs export get -It displays export block for a cluster based on pseudo root name (binding). +This displays export block for a cluster based on pseudo root name (binding), +where: -Configuring NFS-Ganesha to export CephFS with vstart +``clusterid`` is the NFS Ganesha cluster ID. + +``binding`` is the pseudo root path (must be an absolute path). + +Configuring NFS Ganesha to export CephFS with vstart ==================================================== -1) Using cephadm +1) Using ``cephadm`` .. code:: bash $ MDS=1 MON=1 OSD=3 NFS=1 ../src/vstart.sh -n -d --cephadm - It can deploy only single ganesha daemon with vstart on default ganesha port. + This will deploy a single NFS Ganesha daemon using ``vstart.sh``, where: + + The daemon will listen on the default NFS Ganesha port. 2) Using test orchestrator @@ -137,15 +181,17 @@ Configuring NFS-Ganesha to export CephFS with vstart $ MDS=1 MON=1 OSD=3 NFS=1 ../src/vstart.sh -n -d - It can deploy multiple ganesha daemons on random port. But this requires - ganesha packages to be installed. + This will deploy multiple NFS Ganesha daemons, each listening on a random + port, where: -NFS: It is the number of NFS-Ganesha clusters to be created. + ``NFS`` is the number of NFS Ganesha clusters to be created. + + NOTE: NFS Ganesha packages must be pre-installed for this to work. Mount ===== -After the exports are successfully created and Ganesha daemons are no longer in +After the exports are successfully created and NFS Ganesha daemons are no longer in grace period. The exports can be mounted by .. code:: bash diff --git a/doc/cephfs/fs-volumes.rst b/doc/cephfs/fs-volumes.rst index 689ad0b0fd4..3eb2a7a8fba 100644 --- a/doc/cephfs/fs-volumes.rst +++ b/doc/cephfs/fs-volumes.rst @@ -45,9 +45,29 @@ Create a volume using:: $ ceph fs volume create [] -This creates a CephFS file system and its data and metadata pools. It also tries -to create MDSes for the filesystem using the enabled ceph-mgr orchestrator -module (see :doc:`/mgr/orchestrator`) , e.g., rook. +This creates a CephFS file system and its data and metadata pools. It can also +try to create MDSes for the filesystem using the enabled ceph-mgr orchestrator +module (see :doc:`/mgr/orchestrator`), e.g. rook. + + is the volume name (an arbitrary string), and + + is an optional string signifying which hosts should have NFS Ganesha +daemon containers running on them and, optionally, the total number of NFS +Ganesha daemons the cluster (should you want to have more than one NFS Ganesha +daemon running per node). For example, the following placement string means +"deploy NFS Ganesha daemons on nodes host1 and host2 (one daemon per host): + + "host1,host2" + +and this placement specification says to deploy two NFS Ganesha daemons each +on nodes host1 and host2 (for a total of four NFS Ganesha daemons in the +cluster): + + "4 host1,host2" + +For more details on placement specification refer to the `orchestrator doc +`_ +but keep in mind that specifying the placement via a YAML file is not supported. Remove a volume using::