erste erfahrung mit nfsv4 auf hp-ux 11 · wer sind wir? lyubomir valnarov, 24 • b. sc. -...

20
IT-Symposium 2007 19.04.2007 www.hp-user-society.de 1 Erste Erfahrung mit NFSv4 auf HP-UX 11.31 Stefan Mirevski Lyubomir Valnarov Global Delivery Solution Center Sofia Technology Solutions Group Hewlett Packard Stefan Mirevski, 27 B.Sc. (Informatik), Sofioter Uni M.Sc. (Mathematik), Uni Karlsruhe Ab 2006: Doktorand (Mathematik), Uni Karlsruhe 5 Jahre Informatik Tutor 4 Jahre HiWi, FZI Karlsruhe Coach in Programmier-Contests Wer sind wir? Lyubomir Valnarov, 24 • B. Sc. - Informatik, TU Sofia • ab 2005 - Masterstudium Informatik, TU Sofia • 2001-2005 Systembetreuer • 2005 – Praktikum am Fraunhofer IITB • Seit 2006 bei HP - Software und Network Support

Upload: others

Post on 18-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 1

Erste Erfahrung mitNFSv4 auf

HP-UX 11.31

Stefan MirevskiLyubomir Valnarov

Global Delivery Solution Center SofiaTechnology Solutions Group

Hewlett Packard

Stefan Mirevski, 27• B.Sc. (Informatik), Sofioter Uni• M.Sc. (Mathematik), Uni

Karlsruhe• Ab 2006: Doktorand

(Mathematik), Uni Karlsruhe• 5 Jahre Informatik Tutor• 4 Jahre HiWi, FZI Karlsruhe• Coach in Programmier-Contests

Wer sind wir?

Lyubomir Valnarov, 24• B. Sc. - Informatik, TU Sofia• ab 2005 - Masterstudium

Informatik, TU Sofia• 2001-2005 Systembetreuer • 2005 – Praktikum am Fraunhofer

IITB• Seit 2006 bei HP - Software und

Network Support

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 2

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 3

HP Global Delivery Solution Center Sofia (HP GDSCS)

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 4

Agenda

• Einführung in NFS

• Änderungen in NFS v4

• NFSv4 Konfiguration

• Diskussion

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 3

Einführung in NFS

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 6

Was ist NFS

Das Network File System (NFS) ist ein Verteiltes Dateisystem,das den Zugriff auf Dateien über ein Netzwerk ermöglicht.

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 4

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 7

NFS Basics

• Zugriff auf Dateisysteme durch Systemaufrufe (open/close, read/write, create/unlink, mkdir/rmdir, readdir, usw.)

• Vom Netzwerkdateisystem als Netzwerkpakete gesendet

• Antwort vom Server

• UDP (verbindungslos) und TCP

• Lock- und Mount-Operationen über zusätzliche Protokolle

• Unix-Dateiattributen (z.B. uid)

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 8

Die NFS Internet Standards

Sun Microsystems, Inc. IETF

NFSv4 RFC 3530

NFSv4 Design RFC 2624

NFSv3 RFC 1813

NFSv2 RFC 1094

1989 1995 1999 2003

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 5

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 9

NFS Protokolle

NFS im OSI-Schichtenmodell

Anwendung NFS

Darstellung XDR

Sitzung (Sun-)RPC

Transport UDP + TCP

Netzwerk IP

Netzzugang Ethernet, Token Ring, FDDI, ...

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 10

Remote Procedure Call Modell

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 6

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 11

Schematischer Ablauf derDatenübertragung

NFS Client NFS Serverrpc.mountd port?

rpc.mountd port = 4046

/directory filehandle?

filehandle 0

nfsd port?

nfsd port = 2049

LOOKUP filehandle 0 & “File1“

filehandle 1

READ filehandle 1

“File1“ contents

rpcbind (portmapper)

rpc.mountd

rpcbind (portmapper)

nfsd

nfsd

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 12

Design Vorteile von NFS v3

Einfaches Design:• Verbindungsloses UDP Protokoll• Zustandsloser Server

• Server mit relativ wenig Arbeitsspeicher

• Typische Einsatzgebiete:• Lokale Netzwerke• Einfache Benutzeraktivitäten über das lokale Netzwerk

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 7

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 13

Schwächen früherer NFS Versionen

• request/response nature -> inhärente Ineffizienz imNFS Protokoll

• Stateless operation• file handle – nicht durchsichtig für den Client • file locking & node status - separate Protokolle &

Daemons (rpc.lockd, rpc.statd)• Security – begrenzte Authentifikation ohne

Verschlüsselung

Änderungen in NFS v4

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 8

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 15

Das NFS v4 Konzept

• Neuimplementierung des Protokolls• Nur noch ein Protokoll

• Vereinfachte Firewall-Konfiguration

• Erweiterte Internet Operabilität über TCP

• Compound procedure

• Stateful operation

• Delegation

• Verschiedenen Attributstypen

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 16

Das NFS v4 Konzept (2)

• SecureNFS

• WebNFS

• Client Failover

• Enhanced NFS Logging

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 9

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 17

Single Protocol

• MOUNT, NLM und NSM integriert im Protokoll• Mounting und Locking realisiert durch Opcodes

• Keine externen Lock und Node-Status Daemons

• rpc.lockd & rpc.statd für Rückwärts-Kompatibilität

• OPEN/CLOSE Mechanismus• Access/Deny Semantik (share_access/share_deny)

• Bessere Windows/UNIX Interoperabilität

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 18

Firewall “Friendly” Design

RPCBIND

MOUNT

NFSv2/v3

LOCK/NLM

STATUS

ACL

Port 111

Dynamic

Port 2049

Dynamic

Dynamic

Dynamic

NFSv4Port 2049

TCP

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 10

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 19

The New COMPOUND Procedure

NFSv3

LOOKUP

ACCESS

READ

NFSv4

COMPOUNDPUTFHLOOKUPGETFHGETATTROPENREAD

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 20

COMPOUND Remote Procedure Call

• Zwei NFSv4 Procedures (RPCs)• NULL – keine Funktionalität (empty request)

• COMPOUND – mehrere NFS Operationen in einem RPC

• Reduced Latency - weniger over-the-wire round-trips zwischen Client und Server

• Niedrigerer Transport und Security Overhead

• Fehlerbehandlung – Rückgabe der vor dem Fehlererfolgreich abgeschlossenen Operationen

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 11

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 21

Stateful Operation

• Der NFSv4 Server speichert Information über die Clients, die geöffneten Dateien und Locks

• Locking - anhand einer CLIENTID• Lease-basierend, auch ohne RPC callback Mechanismus

• Einige OPCODEs verlangen vom Client seine Identifikation (CLIENTID) – READ, WRITE, locking

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 22

Delegation• Management von Locks und caching von Daten einer

Datei – auf dem Client• Bei Delegation – weitere OPEN, LOCK, READ, WRITE

und CLOSE Operationen auf der Datei passieren nurbeim Client

• Wann: 1 Client schreibt (write) oder mehrere Clients NUR lesen (read)

• Performance gewinn• Delegations sind lease-basierend, genau wie File-

locking• Delegation recall vom Server – durch callback an dem

Client

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 12

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 23

SecureNFS

• Erweiterte Authentifikation

• Verschlüsselung - Teil der Spezifikation

• Mehrere Security-Schemata (Modes)

• Security Modes können kombiniert werden

• Komplexere Dateisicherheit mit ACLs

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 24

Security Modes

Mode Beschreibungsys Default, benutzt UID/GID UNIX permissions

none Keine Authentifizierung, benutzer loggen sichals “anonymous”

dh Benuzt das Diffie-Hellman Public-key System

krb5 Benutzt Kerberos v5 zur Benutzer-authentifizierung

krb5i KRB5 Authentifizierung mit Integrity Checking

krb5p KRB5 Authentifizierung, Integrity Checking und Privacy Protection (Encryption)

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 13

NFSv4 Konfigurationauf HPUX 11i v3

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 26

Konfigurationsänderungen in 11i v3Bis 11i v2 11i v3

Kernel Konfiguration(kcmodule)

nfs_client nfs_clientnfs_core nfs_client_pv2nfs_server nfs_client_pv3nfsm nfs_client_pv4

nfssrvnfswrp

Konfigurations-dateien

/etc/default/nfs/etc/exports /etc/dfs/dfstab/etc/xtab /etc/dfs/sharetab/etc/rmtab /etc/rmtab

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 14

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 27

NFS kctune ParameterNFS Tunablesnfs_async_timeoutnfs_disable_rddir_cachenfs_enable_write_behindnfs_exi_cache_timenfs_nacachenfs_nogpagenfs_nrnodenfs_portmonnfs_write_error_intervalnfs_write_error_to_cons_only

NFS v2-Specific Tunablesnfs2_async_clustersnfs2_bsizenfs2_cots_timeonfs2_do_symlink_cachenfs2_dynamicnfs2_lookup_neg_cachenfs2_max_threadsnfs2_nranfs2_shrinkreaddir

NFS v3-Specific Tunablesnfs3_async_clustersnfs3_bsizenfs3_cots_timeonfs3_do_readdirplusnfs3_do_symlink_cachenfs3_dynamicnfs3_jukebox_delaynfs3_lookup_neg_cachenfs3_max_threadsnfs3_max_transfer_sizenfs3_max_transfer_size_cltsnfs3_max_transfer_size_cotsnfs3_nranfs3_pathconf_disable_cache

NFS v4-Specific Tunablesnfs4_async_clustersnfs4_bsizenfs4_cots_timeonfs4_do_symlink_cachenfs4_lookup_neg_cachenfs4_max_threadsnfs4_max_transfer_sizenfs4_max_transfer_size_cotsnfs4_nacachenfs4_nranfs4_nrnodenfs4_pathconf_disable_cache

RPC Tunablesrpc_clnt_idle_timeoutrpc_clnt_max_connsrpc_svc_cltsmaxdupreqsrpc_svc_cotsmaxdupreqsrpc_svc_default_max_same_xprtrpc_svc_idle_timeout

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 28

Konfiguration von NFSKonfigurationsdateien• /etc/rc.config.d/nfsconf

• Aktivieren oder Deaktivieren von NFS Subsysteme• /etc/default/nfs

• Startparameter für die nfsd und lockd Daemons

Parameter• setoncenv(1M)

• Initialisiert, zeigt und entferns Konfigurationsvariablen• kctune Parameter

• Alle “public” kctune Parameter haben man(5) pages

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 15

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 29

Weitere Konfigurationen

• NFSv4 ist disabled per default auf 11i v3

• Zum aktivieren, editieren /etc/default/nfs:• NFS_SERVER_VERSMIN=2

• NFS_SERVER_VERSMAX=4

• NFS_CLIENT_VERSMIN=2

• NFS_CLIENT_VERSMAX=4

• NFS_SERVER_DELEGATION=on

• NFSMAPID_DOMAIN=domain

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 30

NFS in Aktion• Startup/Shutdown Scripts

• /sbin/init.d/nfs.server start/stop• /sbin/init.d/nfs.client start/stop

• Exporting• share• Example: # share –F nfs /tmp• exportfs – nur als Verweis auf share

• Mounting• mount

• Zeigen der mount Optionen• nfsstat -m

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 16

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 31

Sicherheit & ACLsZusammenspiel von den Sicherheitsmodi# share –F nfs –o sec=krb5,rw,sec=sys,ro /tmp• Kerberos v5 Clients are permitted read/write access• AUTH_SYS Clients are permitted read/only access

Access Control Lists• Users auf dem NFS Client: view und modify ACLs durch

getacl(1) und setacl(1)• nfsstat –a listet die GETACL und SETACL Aufrufe

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 32

WebNFS• Durch die Option “public” beim sharing/mounting

• Bypasses rpcbind und rpc.mountd

• NFS Kommunikation direkt zum Port 2049

• Beispiel:• Sharing Dateisysteme für WebNFS Clients# share -F nfs -o public /tmp

• Mounting Dateisysteme durch WebNFS# mount -o public nfs://server/ /hp-1

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 17

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 33

Unser Dank geht an

• Unseren Mentoren:• Winfried Knobloch (EMEA Network und Linux)• Thomas Hanselmann (Externer Trainer)• Sven Herbers-Lee (EMEA Applications CC)

• Unseren Managern

• Unseren Kollegen

• Last but not least...

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 34

Thank you!

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 18

Diskussion

© 2006 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice

Vorbereitet von:

Stefan Mirevski ([email protected])Lyubomir Valnarov ([email protected])

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 19

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 37

NFSv3 Procedures• NULL Do nothing• GETATTR Get file attributes• SETATTR Set file attributes• LOOKUP Lookup filename• ACCESS Check access permission• READLINK Read from symbolic link• READ Read from file• WRITE Write to file• CREATE Create a file• MKDIR Create a directory• SYMLINK Create a symbolic link• MKNOD Create a special device• REMOVE Remove a file• RMDIR Remove a directory• RENAME Rename a file or directory• LINK Create link to an object• READDIR Read From directory• READDIRPLUS Extended read from directory• FSSTAT Get dynamic file system information• FSINFO Get static file system information• PATHCONF Retrieve POSIX information• COMMIT Commit cached data on a server to stable storage

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 38

NFSv4 OPCODEs (1)• ACCESS Check Access Rights• CLOSE Close File • COMMIT Commit Cached Data• CREATE Create a Non-Regular File Object• DELEGPURGE Purge Delegations Awaiting Recovery• DELEGRETURN Return Delegation• GETATTR Get Attributes• GETFH Get Current Filehandle• LINK Create Link to a File• LOCK Create Lock• LOCKT Test For Lock• LOCKU Unlock File• LOOKUP Lookup Filename• LOOKUPP Lookup Parent Directory• NVERIFY Verify Difference in Attributes• OPEN Open a Regular File• OPENATTR Open Named Attribute Directory• OPEN_CONFIRM Confirm Open• OPEN_DOWNGRADE Reduce Open File Access

IT-Symposium 2007 19.04.2007

www.hp-user-society.de 20

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 39

NFSv4 OPCODEs (2)• PUTFH Set Current Filehandle• PUTPUBFH Set Public Filehandle• PUTROOTFH Set Root Filehandle• READ Read from File• READDIR Read Directory• READLINK Read Symbolic Link• REMOVE Remove Filesystem Object• RENAME Rename Directory Entry• RENEW Renew a Lease• RESTOREFH Restore Saved Filehandle• SAVEFH Save Current Filehandle• SECINFO Obtain Available Security• SETATTR Set Attributes• SETCLIENTID Negotiate Clientid• SETCLIENTID_CONFIRM Confirm Clientid• VERIFY Verify Same Attributes• WRITE Write to File• RELEASE_LOCKOWNER Release Lockowner State • ILLEGAL Illegal operation

19.04.2007 Mirevski & Valnarov - DECUS 2007 (Nürnberg) - Erste Erfahrung mit NFSv4 auf HP-UX 11.31 40

The NFS Internet Standard (RFCs)RFC 1014 XDR: External Data Representation Standard (June 1987)

RFC 1057 RPC: Remote Procedure Call Protocol Specification Version 2 (June 1988)

RFC 1094 NFS: Network File System Protocol Specification (March 1989)

RFC 1813 NFS Version 3 Protocol Specification (June 1995)

RFC 1831 RPC: Remote Procedure Call Protocol Specification Version 2 (August 1995)

RFC 1832 XDR: External Data Representation Standard (August 1995)

RFC 2339An Agreement Between the Internet Society, the IETF, and Sun Microsystems, Inc. in the matter of NFS v.4 Protocols (May 1998)

RFC 2624 NFS Version 4 Design Considerations (June 1999)RFC 3010 Network File System (NFS) version 4 Protocol (Dec. 2000)RFC 3530 Network File System (NFS) version 4 Protocol (April 2003)RFC 4506 XDR: External Data Representation Standard (May 2006)