Filesystem Caching (FS-Cache) Steve Dickson Kernel Engineer
What is FS-Cachefs Caches remote data on local disk Persistent after unmounts and reboots Improves server scalability Reduces network traffic Completely transparent to application
Using FS-Cachefs with NFS The 'fsc' mount option activates the caching Example: mount -o fsc server:/export /mnt/server Only reads are cached. This does NOT mean read-only filesystem Cache disabled when file is open for write. Cachefilesd needs to running user_xattr need to be on the caching directory tune2fs -o user_xattr /dev/hdxN /usr/share/doc/cachefilesd*/howto.txt
RHEL5 Architecture Overview Network NFS CacheFiles FS-Cache ext3
NFS Version 4 Steve Dickson Kernel Engineer
NFSv4 Protocol Feature List Firewall Friendlier Mount and locking protocols are integrated into protocol Compound Procedures Multiple operations sent in one Over-The -Write message. Strings are used for User/Group ids rpc.idmapd – maps user@domain to Linux UIDs on server and client. Integrated Access Control List (ACL) NT style ACLs Pseudo File System Shared server namespace Putfh, lookup, getattr Mandatory locks nohide when exporting client needs to support callbacks for delegation also similar to Opportunistic Locks used by CIFS
NFS Architecture NFS4 Architecture Application mountd idmapd lockd Kernel Space User Level ext3 ext3 ext3 GFS System Call kNFSD NFS4 (-t nfs4) NFS kNFSD4 The components for NFS Note: not rpc.mountd Note: the addition of rpc.idmapd See how Secure NFS is really a RPC thing... RPC/SVC Ethernet
Secure NFS Steve Dickson Kernel Engineer
Used by ALL three NFS versions Use the ‘-o sec=krb5’ mount option Secure NFS Used by ALL three NFS versions Use the ‘-o sec=krb5’ mount option Uses GSS-API cryptographic method. Three Kerberos 5 security levels Authentication, Integrity, Privacy Daemons Handle contexts rpc.gssd – Client contexts rpc.svcgssd – Server contexts krb5, krb5i krb5p
NFS Architecture NFS4 Architecture Secure NFS Application mountd svcgssd gssd idmapd lockd Kernel Space User Level ext3 ext3 ext3 GFS System Call kNFSD NFS4 NFS kNFSD4 The components for NFS Note: not rpc.mountd Note: the addition of rpc.idmapd See how Secure NFS is really a RPC thing... RPC/SVC Secure RPC Ethernet