Rook nfs ganesha. Two of these PROXY_V3 and PROXY_V4 act as an NFS proxy: they act as an NFS v3/v4 client to some other backend server Oct 6, 2020 · But right now, I dont have an idea how to extend the ganesha. 10 steps: 1, set rook as orch backend in ceph 2, create nfs cluster: ceph nfs create Configuring NFS-Ganesha to export CephFS ¶ NFS-Ganesha provides a File System Abstraction Layer (FSAL) to plug in different storage backends. Such applications may not have been migrated to Kubernetes or might not yet support PVCs. Manually configuring an NFS-Ganesha Instance Each NFS RGW instance is an NFS-Ganesha server instance embedding a full Ceph RGW instance. This is Without this configured, NFS-Ganesha will be unable to map the Kerberos principal to an uid/gid and will instead use the configured anonuid/anongid (default: -2) when accessing the local filesystem. io Mar 6, 2019 · Newer versions of rook and Ceph also support the deployment of a CephFS to NFS gateway using the nfs-ganesha userland server. 0-467. 8. 4 mecseid added the bug label Sep 15, 2022 Member The config file format for these objects is documented in the NFS-Ganesha project. Mar 27, 2020 · Rook allows dynamically deploying Ceph clusters and NFS-Ganesha servers that export CephFS subvolumes. However, this implementation is technically more for scale-out than for high availability. Nov 1, 2021 · NFS-GANESHA has different backend modules, each of them dedicated to address a specific namespace. 9. Nov 19, 2021 · Is this a bug report or feature request? Bug Report Deviation from expected behavior: Upon upgrading from rook 1. Jan 10, 2011 · 本文探索通过ceph为nfs服务提供存储的高可用的可行方案。ceph存储结合nfs-ganesha服务,为nfs客户端提供了基于ceph对象存储的nfs协议输出。ceph提供的存储类型丰富,包括RBD,cephfs,RGW,能够有效满足不同业务场景的需求。本文给出了提供cephfs和RGW两种后端存储机制的nfs集成方案。期望nfs的众多用户可以 Nov 5, 2021 · Behind the NFS Ganesha is the Ceph Filesystem provided by Rook-Ceph. The config file format for these objects is documented in the NFS-Ganesha project. {instance-name}] section Aug 6, 2025 · After add secont nfs export for object bucket nfs pod crash And single export also doesn't work, but no pod crash Environment: OS Talos Linux Rook version 1. active: The number of active NFS servers. io/v1 kind Mar 30, 2020 · What should the feature do: Ceph's NFS-Ganesha should have adjustable config so that NFS-Ganesha server instances can be tuned for workloads. This also causes the nfs-ganesha pool to be created with with an The deployment of the nfs-ganesha daemons can also be managed automatically if either the Cephadm or Rook orchestrators are enabled. placement: Kubernetes placement restrictions to apply to NFS server Pod (s). Oct 17, 2021 · CephFS高可用的NFS-Ganesha网关 Posted by elrond on October 17, 2021 Aug 24, 2020 · Is this a bug report or feature request? Bug Report Deviation from expected behavior: In the rook previous versions until 1. These backends are called FSALs (which stands for "File System Abstraction Layer"). I am able to mount the nfs share folder on any linux based OS. NFS-Ganesha is an NFSv3,v4,v4. 0-20190410 Cluster running on two nodes with bluestore and ceph filesystem with following configs: apiVersion: ceph. The ceph_nfs field for the nfs-ganesha server are used in step 2. 2 and rook out of the master branch. what's the problem? Oct 7, 2020 · This article covers how to migrate an NFS server from kernel space to userspace, which is based on Glusterfs and nfs-ganesha. nfs RADOS pool and watches the common config for changes. NFS storage may be especially useful for leveraging an existing Rook cluster to provide NFS storage for legacy applications that assume an NFS client connection. The deployment of the nfs-ganesha daemons can also be managed automatically if either the Cephadm or Rook orchestrators are enabled. , Pacemaker). oc get pods -n openshift-storage | grep rook-ceph-nfs oc describe pod <name of the rook-ceph-nfs pod> | grep ceph_nfs For example: oc describe pod rook-ceph-nfs-ocs Aug 26, 2022 · CephNFS: spins up a NFS Ganesha server to export NFS shares of a CephFilesystem or CephObjectStore. We would like to allow users to manage NFS exports using this interface. See NFS-Ganesha Management for details on how to enable this functionality. Important Background: Cephadm and rook start each nfs-ganesha daemon with a minimal bootstrap configuration file that pulls from a shared common configuration stored in the . oc get pods -n openshift-storage | grep rook-ceph-nfs oc describe pod <name of the rook-ceph-nfs pod> | grep ceph_nfs For example: oc describe pod rook-ceph-nfs-ocs May 6, 2019 · Operator version: v0. It glosses over some important bits (like securing the thing properly) but it shows what is possible with Rook+Ceph+nfs-ganesha. This article will cover how one would deploy a Ceph cluster, CephFS and finally an NFS gateway using rook. Manually Configuring an NFS-Ganesha Instance Each NFS RGW instance is an NFS-Ganesha server instance embedding a full Ceph RGW instance. The config file format for these objects is documented in the Jul 10, 2023 · Can we record client ip in nfs ganesha log? For example, the time of nfs client connection and disconnection, etc. oc get pods -n openshift-storage | grep rook-ceph-nfs oc describe pod <name of the rook-ceph-nfs pod> | grep ceph_nfs For example: oc describe pod rook-ceph-nfs-ocs Without this configured, NFS-Ganesha will be unable to map the Kerberos principal to an uid/gid and will instead use the configured anonuid/anongid (default: -2) when accessing the local filesystem. It managed to export it as nfs folder. Configure and manage NFS Ganesha exports for use with the Ceph Object Gateway. This will spin up a cluster of NFS Ganesha servers that coordinate with one another via shared RADOS objects. Therefore, the RGW NFS configuration includes Ceph and Ceph Object Gateway-specific configuration in a local ceph. This is The config file format for these objects is documented in the NFS-Ganesha project. conf file as the underlying ConfigMap would be overwritten by the reconciliation of Rooks ceph-operator? The config file format for these objects is documented in the NFS-Ganesha project. 1? Dec 17, 2023 · Is this a bug report or feature request? Bug Report Deviation from expected behavior: NFS Ganesha throws Errors at Deployment Expected behavior: When I try to setup NFS on a arm64 Kubernetes Cluste Manually configuring an NFS-Ganesha Instance Each NFS RGW instance is an NFS-Ganesha server instance embedding a full Ceph RGW instance. 0 (16063ff2 The config file format for these objects is documented in the NFS-Ganesha project. 7k 551 The config file format for these objects is documented in the NFS-Ganesha project. As the deployment is done using cephadm or rook. 7 a new pool named nfs-ganesha was created in my cluster without an application type set, which causes a health w The deployment of the nfs-ganesha daemons can also be managed automatically if either the Cephadm or Rook orchestrators are enabled. conf format documented in its man pages. 7 a new pool named nfs-ganesha was created in my cluster without an appli Feb 6, 2019 · Hello, I am using rook and I am getting the following, what is the cause? Thanks ok-nfs-pv Feb 6 22:19:49 ceph-2 kubelet: Output: Running scope as unit run-17427. This file follows the krb5. 17. Only one of its members may be specified. @Blain Rook Ceph DocumentationNFS Settings Server The server spec sets configuration for Rook-created NFS-Ganesha server pods. ceph. radosgw. nfsd process in the nfs-ganesha container for the CephNFS pod. 0-172. g284f8ebe395 Jan 29, 2023 · Is this a bug report or feature request? Bug Report Deviation from expected behavior: env:ceph 17. May 13, 2025 · Hmm, you're getting something way out of sync: 07/05/2025 07:41:37 : epoch 681afc18 : rook-ceph-nfsssd-5 : nfs-ganesha-1 [svc_1120] nfs4_Check_Stateid :STATE :DEBUG :Check CLOSE stateid found OLD stateid OTHER=0x0300000018fc1a6809000000 { {CLIENTID Epoch=0x681afc18 Counter=0x00000003} StateIdCounter=0x00000009} seqid=29288, expected seqid 38607 Using 4. You need to fetch the value of the ceph_nfs field for the nfs-ganesha server. Ceph uses NFS-Ganesha servers. We can use YAML manifest for both of them, and the manifests are usually very tediously long. The dashboard interface continues to work when upgrading to Pacific v16. 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. NFS-Ganesha is a user space NFS server that is well integrated with CephFS and RGW backends. 3 (dff484dfc9e19a9819f375586300b3b79d80034d) quincy (stable) Kubernetes version (use kubectl version): v1. Jul 25, 2019 · I'm seeing rook-ceph-nfs CrashLoopBackOff on the nfs-ganesha containers running OCP 4. NFS ¶ CephFS namespaces can be exported over NFS protocol using the NFS-Ganesha NFS server. 4c71ef3a is a key generated by the nfs mgr module when the NFS export is created. With NFS Ganesha, you can plug in your own storage mechanism—such as Ceph—and access it from any NFS client. This is 3. It is suitable for a standalone NFS-Ganesha server, or an active/passive configuration of NFS-Ganesha servers managed by some sort of clustering software (e. Recommendations: - Rook configures Kerberos to log to stderr. The key gives NFS-Ganesha permissions to read/write the CephFS path (/ here). Use Ceph's rados tool from the toolbox to interact with the configuration object. Users can modify the configuration object for each CephNFS cluster if they wish to customize the configuration. 5 by rook 1. The configuration for NFS is stored in the nfs-ganesha pool and exports are managed via the Command-Line-interface (CLI) commands and through the Ceph dashboard. As with typical Kubernetes resources in controller pattern, Ceph by Rook needs an operator along with custom resources. But some investigation is still necessary. Requirements Ceph file system libcephfs2, nfs-ganesha and nfs-ganesha-ceph packages on NFS server host machine. The operator allows you to set ownership/permissions, autoexpand the PVC size, and enable RWX storage from them. Is this a bug report or feature request? Bug Report Deviation from expected behavior: Upon upgrading from rook 1. Jan 12, 2021 · 2、通过ceph dashboard配置NFS-GANESHA 为了在Ceph仪表板中启用NFS-Ganesha exports的管理,我们需要告诉仪表板RADOS池和存储配置对象的名称空间。 然后,Ceph仪表板可以通过遵循命名约定来访问它们 dashboard配置如下 The config file format for these objects is documented in the NFS-Ganesha project. As the deployment is done using cephadm or rook Configuring NFS-Ganesha to export CephFS ¶ NFS-Ganesha provides a File System Abstraction Layer (FSAL) to plug in different storage backends. Rook already orchestrates Ceph filesystem and Object store (or RGW) on Kubernetes (k8s). 3. The underlying storage could be anything provided by the cloud/on-prem which meet the Ceph requirements. g. nfs. Apr 18, 2016 · I just came across nfs-ganesha during a recent round of updates and find the idea of being able to provide cleaner access to cephfs to other clients through nfs rather than installing the full ceph system or relying on the ceph-dokan implementation to be very appealing. I'm happy to clarify any specific questions. For each NFS-Ganesha export, FSAL_CEPH uses a libcephfs client, user-space CephFS client, to mount the CephFS path that NFS-Ganesha exports. Problem Description I am trying to mount a RGW using Rook and Ganesha. The servers will be configured for NFSv4. If one NFS server in a cluster is offline, other servers may block client requests until the offline server returns, which may not always happen due to the Kubernetes scheduler. conf ¶ Required ceph. Within this article, I’m going to show how we can create a CephFS shared file system and later how we can expose it as a NFS Ganesha NFS shared volume. a kerberos domain name which will be used to map kerberos credentials to uid/gid domain name that NFS-Ganesha will use to authenticate with the Nov 5, 2019 · After using a Rook-provisioned NFS server for a while, we have observed the memory usage growing very large - over 4GB in one case. conf configuration for RGW NFS includes: valid [client. 10. FSAL_CEPH is the plugin FSAL for CephFS. Overview of the Dashboard Landing Page Oct 21, 2021 · The new nfs mgr module in Ceph makes managing NFS exports much easier from the CLI. Oct 27, 2022 · I believe the documentation is clear about how multiple active NFS servers can be configured and about what limitations users can expect. Ganesha grace period handling is coarse at best, and the CephFS backend provides no support for moving NFSv4 clients from Mar 9, 2023 · The problem is fixed when we add the secType=krb5 directive to the export and then send a HUP to ganesha. 10 (and others) arm64 image doesn't contain the ganesha. 8 -> 1. Sep 19, 2018 · Hit this while testing at the NFS bakeathon: $ kubectl -n rook-ceph logs rook-ceph-ganesha-my-nfs-a-5659554f68-9whsw -f 2018-09-19 12:43:36. NFS Storage Overview NFS storage can be mounted with read/write permission from multiple pods. Rook supports creating more than one active NFS server, but cannot guarantee high availability. Feb 6 22:19:49 ceph-2 kubelet: mount. CACHEINODE will affect NFS performance, as it includes cache settings; changing this config is a must. It can export Ceph's filesystem namespaces and Object gateway namespaces over NFSv4 protocol. for ceph do ceph -v): ceph version 17. 7 Ceph/container version 19. The simplest and preferred way of managing NFS-Ganesha clusters and CephFS exports is using ceph nfs commands. 3. Jan 25, 2021 · Is this a bug report or feature request? Feature Request What should the feature do: Currently the docs on the Ceph NFS CRD describe how to spin up a ganesha server. Rook Ceph DocumentationRepresents the source of a volume to mount. Sep 26, 2024 · Is this a bug report or feature request? Bug Report Deviation from expected behavior: The Smoke suite in Rook CI is failing consistently starting today in all PRs, master, and release-1. See full list on rook. This is not the nfs-ganesha server itself, but the rook binary in the same container. Oct 27, 2021 · Is this a bug report or feature request? Feature Request What should the feature do: Detect hung ganesha server instances What is use case behind this feature: In my production env, I have encountererd ganesha pods which have hung (nfs v Procedure After the nfs flag is enabled, singe-server CephNFS is deployed by Rook. It seams nfs need period to sync with rgw. my-nfs. If neither are in use (e. 24. For installation instructions, see Section 8. 15 branch b Sep 15, 2025 · Above, client. conf. oc get pods -n openshift-storage | grep rook-ceph-nfs oc describe pod <name of the rook-ceph-nfs pod> | grep ceph_nfs For example: oc describe pod rook-ceph-nfs-ocs Rook Ceph DocumentationNFS Settings Server The server spec sets configuration for Rook-created NFS-Ganesha server pods. Setting up NFS-Ganesha with CephFS, involves setting up NFS-Ganesha’s Without this configured, NFS-Ganesha will be unable to map the Kerberos principal to an uid/gid and will instead use the configured anonuid/anongid (default: -2) when accessing the local filesystem. nfsd binary, causing the NFS container to fail to start. 141+0000 7fd29e510200 0 ceph version 19. 7. 3 Log: The config file format for these objects is documented in the NFS-Ganesha project. NFS Ganesha is an NFS server that runs in a user address space instead of as part of the operating system kernel. gb999605 Cluster ceph version: v14. 1+ access only, as serving earlier protocols can inhibit responsiveness after a server restart. Jan 10, 2023 · When an active NFS server fails, we should ensure that a replacement is able to come online quickly, and if it can't, Rook should make sure the overall NFS cluster is still able to serve client requests and ensure clients connected to a downed server are rerouted to an active server. 6, “Deploying NFS Ganesha”. The NFS-Ganesha project is now working with the CephFS team on a feature called "transparent state migration" that will allow NFSv4 clients to be moved from server to server without interruption -- transparently. This document provides information on configuring NFS-Ganesha clusters manually. nfs: Connection refused Feb 6 2 Procedure After the nfs flag is enabled, singe-server CephNFS is deployed by Rook. 1 Storage backend version (e. 093383 I | rookcmd: starting Rook v0. , Ceph is deployed via an external orchestrator like Ansible or Puppet), the nfs-ganesha daemons must be manually deployed; for more information, see Manual Ganesha deployment. Shown errors: Request to /api/nfs-ganesha/daemon from dashboard returns 504 While opening the NFS tab of the dashboard the mgr logs these errors multiple times: Rook version (use rook version inside of a Rook Pod): v1. Rook and Ceph will have to coordinate together how to rotate these export keys and subsequently restart NFS-Ganesha after rotation (s). myfs. I am running a 200 OSD 7 node cluster and have a huge performance difference between NFS mounts and a kernel mount. Can it be done by setting parameters of ganesha? Thanks. This is a subset of the full Kubernetes API’s VolumeSource that is reduced to what is most likely to be useful for mounting config files/dirs into Rook pods. We should Jun 22, 2021 · When this mount didn't work I removed the CR and added it again later. 1 fileserver that runs in user mode on most UNIX/Linux systems C 1. conf, as well as NFS-Ganesha-specific configuration in the NFS-Ganesha config file, ganesha. a keytab file that provides credentials for the service principal that NFS-Ganesha will use to authenticate with the Kerberos server. 0 or 4. See rook/rook#7671 for the full Aug 14, 2023 · Rook, Ceph, Ceph CSI, and NFS-Ganesha communities have discussed how Rook can provide active-active HA for CephNFSes. Mar 6, 2019 · I recently wrote a post for the Ceph community blog on how to use Rook to deploy a CephFS cluster with an NFS gateway on top. a kerberos domain name which will be used to map kerberos credentials to uid/gid domain name that NFS-Ganesha will use to authenticate with the Methods of providing the configuration files are documented in the NFS CRD security section. Oct 27, 2024 · In a previous article, we looked into how to setup Rook Ceph within our Kubernetes setup. For values greater than 1, see the known issue below. Is this a bug report or feature request? Bug Report Bug Report What happened: The ceph-v15. Ceph Manager Modules: Enable and disable Ceph Manager modules, manage module-specific configuration settings. 2. Procedure After the nfs flag is enabled, singe-server CephNFS is deployed by Rook. scope. Aug 14, 2023 · What should the feature do: Current CephNFS provides active-active Ganesha servers. When ganesha pod starts it shows the following logs: 2025-01-15T12:00:35. NFS-Ganesha server host connected to the Ceph public network NFS Server CRD Overview Rook allows exporting NFS shares of a CephFilesystem or CephObjectStore through the CephNFS custom resource definition. Cephadm and rook start each nfs-ganesha daemon with a minimal bootstrap configuration file that pulls from a shared common configuration stored in the . Rook Ceph DocumentationNFS Settings Server The server spec sets configuration for Rook-created NFS-Ganesha server pods. 6. More importantly, when lots of disk intensive jobs are running on our computational grid against the ceph cluster NFS will slow to the point that it is unusable (a simple 'ls The NFS service is deployed with Ceph Object Storage backend using Cephadm. Coordinating grace periods across the NFS cluster during server reboots is challenging due to the stateful nature of both NFS and CephFS protocols. The mount is now still setup by rook, but can't be configured anymore. Jul 25, 2019 · the another proble: when I use mc cp xxxx host/bucket/ which upload the file to ceph rgw, all is OK with s3 client access, but on the side of NFS mountpoint, after a few minutes, I can get the file. rook. But now I have a ganesha server Rook Ceph DocumentationNFS Settings Server The server spec sets configuration for Rook-created NFS-Ganesha server pods. , for log auditing. This is . We saw the PRs that fixed the docs just a few days ago to allow creati Aug 2, 2022 · In Rook, our NFS-Ganesha pod already uses the sidecar pattern to run DBus (required by Ganesha) alongside the Ganesha server daemon with a shared socket mount for communication. 6) I have always followed the ceph nfs manual to create a NFS export via NFS-GANESHA and ther The config file format for these objects is documented in the NFS-Ganesha project. Without this configured, NFS-Ganesha will be unable to map the Kerberos principal to an uid/gid and will instead use the configured anonuid/anongid (default: -2) when accessing the local filesystem. All CephNFS daemons are configured using shared RADOS objects stored in a Ceph pool named . Setting up NFS-Ganesha with CephFS, involves setting up NFS-Ganesha’s NFS: Manage NFS exports of CephFS file systems and RGW S3 buckets via NFS Ganesha. I would expect that the kernel mount would be faster but I am seeing it be about three times as fast. Jul 2, 2021 · An introduction to the NFS Operator for Kubernetes, a tool that simplifies the deployment of NFSv4 Ganesha servers in Kubernetes clusters. See CephFS & RGW Exports over NFS for more details. 9 (with ceph 14. Rook NFS storage can provide access to the same Apr 1, 2021 · Hi guys, we set up a CephFileSystem with rook and want to use NFS Ganesha to expose this cluster, but just can't make it work. NOTE: Since this command also brings up NFS Ganesha daemons using a ceph-mgr orchestrator module (see Orchestrator CLI) such as “mgr/cephadm”, at least one such module must be enabled for it to work. ekdxjv ayor smgre hfc pqxoiy ecvqb hzsqxqnb oobdo aomhpy vzsd