jojochuang opened a new pull request, #11540: URL: https://github.com/apache/ozone/pull/11540
Jira: [HDDS-3001](https://issues.apache.org/jira/browse/HDDS-3001) ## Problem Ozone has no native NFS interface for file-oriented clients. This change prototypes NFSv4.1 access to selected FSO buckets through NFS-Ganesha while keeping namespace and data operations in Ozone's existing OM/client paths. ## Approach - Add a draft NFS-Ganesha OEP defining supported operations, scope, security, identity, durability, recovery, and acceptance criteria. - Add an optional Java NFS gateway and versioned, mutually authenticated gRPC interface for the native FSAL. - Add a Ganesha V5.7 FSAL_OZONE prototype for metadata lookup/listing, ranged reads, new-file writes, directory and rename/remove operations. - Use persistent FSO object identities and OM-owned writer/export leases to fence NFS mutations against OzoneFS and S3 operations. - Keep Ganesha external to the Ozone Maven distribution; Apache review of the Ganesha integration, patches, and packaging is still required. The intended initial scope is NFSv4.1 over Kerberos privacy for explicitly configured FSO bucket exports. This is a draft proposal and prototype, not a production-ready feature. ## Validation - Hosted `nfs-native` workflow [38621762604](https://github.com/jojochuang/ozone/actions/runs/38621762604) passed on commit `edbba6cb6f2`, including the secure mounted NFS/FSO publication and COMMIT contract, S3/NFS writer-lease integration, Java gateway unit tests, native handle and C++/Java mTLS contracts, and pinned Ganesha V5.7 build/handshake. - Secure MiniOzoneCluster/MiniKDC tests cover caller identity and Ozone ACL enforcement. - Mounted secure-cluster tests verify byte-exact OzoneFS readback after NFS writes; replacement-container state reclaim has passed on one Docker host. ## Open acceptance gates - Verify fenced recovery across separate physical hosts with shared durable Ganesha recovery storage, including hard power-off and reverse-direction takeover. - Collect representative performance and packaging/toolchain baselines. - Complete Apache OEP, PMC, and Legal Affairs review before treating the feature or combined runtime packaging as supported. Generated-by: Codex (GPT-6) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
