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]

Reply via email to