Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
Release Notes for HP-UX 10.20: HP 9000 Computers > Chapter 4 Major Changes for HP-UX 10.0 and 10.01

NFS Diskless

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

As of 10.01, HP has replaced its proprietary technology for "diskless" clusters, commonly known as "DUX" (Distributed HP-UX), with the de facto UNIX standard, NFS Diskless. But HP is retaining the SAM system management tool as the mechanism for cluster management. SAM extends the base feature set of NFS Diskless so as to retain a key strength of "DUX": easy administration from a single seat. This set of enhancements is called Single Point Administration, or SPA for short.

Other Documents

  • For information on upgrading a "DUX" cluster to NFS Diskless, see Upgrading from HP-UX 9.x to 10.x.

  • For an introduction to NFS Diskless concepts, and important background on system administration, see the NFS Diskless Concepts and Administration White Paper, which is on your 10.x system in PostScript format in /usr/share/doc/NFSD_Concepts_Admin.ps. This file is also available in the "HP-UX Upgrade Tools for 9.x to 10.x" package.

  • For information on optimizing NFS client/server configurations, refer to the NFS Client/Server Configuration, Topology, and Performance Tuning Guide White Paper, which is on your 10.x system in PostScript format in /user/share/doc/NFS_Client_Server.ps.

  • For information on setting up and running a new cluster see Chapter 11, "Setting Up and Administering an HP-UX NFS Cluster," in the 10.01 version of the HP-UX System Administration Tasks manual, and the online help in SAM.

What Is NFS Diskless?

NFS Diskless is the industry standard technology for sharing file-system and other hardware and software resources amongst a group of computers connected by one or more LANs (Local Area Networks).

NFS Diskless is like HP's proprietary "DUX" technology (obsolete as of 10.0) in that it:

  • Allows clients to boot remotely from a kernel stored on a remote server

  • Allows the sharing of the root file system

  • Allows the sharing of other resources such as:

    • Swap

    • Non-root file systems

    • Spooled printers

But the underlying mechanisms are different:

  Feature                  "DUX" Mechanism                 NFS Diskless Mechanism

  =======                  ===============                 ======================



  Shared file system       Proprietary global mount        NFS mounts 

      

  Private kernel,          Context-Dependent Files         HP-UX 10.0 File System      

  device files, etc.       (CDFs)                          Layout

  

  Remote boot              RMP                             BOOTP/TFTP

  

  Remote swap              Device swap                     File-system swap

  

  Client/server            Link-level LAN address          NFS/TCP-IP 

  communication  

For more details, see “"DUX" versus NFS Diskless: Summary of Key Differences”.

Reasons for the Change

  • Provides industry-standard file-sharing and remote boot technology

  • Provides basis for future sharing of heterogeneous operating systems and releases (but HP only, current release only, at 10.x)

  • Allows much greater flexibility in configuring and distributing hardware

New Features and Capabilities

  • A server can support clients on multiple LANs

  • A client can boot from a server on a different subnet

  • Any system running HP-UX 10.01 or later can swap to any NFS-mounted file system

  • Clients boot using standard BOOTP/TFTP protocols

    (Existing Series 700 clients with RMP in boot ROM will still boot correctly)

  • Clients can mount local CD-ROM file systems

  • Series 800 systems can be servers

New Parameter

The kernel parameter page_text_to_local controls whether, and where, executable code is swapped. How you set this parameter can affect the performance of an NFS Diskless client:

  • If page_text_to_local is off (0), executable code pages will not be swapped out, but must be re-read from disk if they have been cleared out of memory.

    This is the default.

  • If page-text-to-local is on (1), executable code pages will be swapped out, to the local disk, when they are cleared out of memory.

From this you can see that a client that swaps to its local disk, but executes applications that are not on the local disk, will perform much better if you turn page_text_to_local on (set it to 1).

Old ("DUX") Features No Longer Supported

  • Context-Dependent Files (CDFs)

    NFS Diskless uses the mechanisms provided in the 10.0 file system layout to separate private from shared files (see “The HP-UX 10.0 File System Layout”.)

    Under 10.x, any CDFs left over from your 9.x system will appear as regular directories that have the SUID bit set.

  • Support for Series 300 and 400 systems as clients and servers

    HP-UX 10.x does not support Series 300 and 400 computers. See the Upgrading from HP-UX 9.x to 10.x manual for more information.

  • Automatic cluster-wide sharing of mounted file systems

    File systems must be shared explicitly (for example via NFS), but SAM-SPA provides global management services.

  • Cluster-wide shutdown

  • POSIX-compliant file system

  • Remote device swap

    NFS diskless uses file-system swap.

  • LAN break detection

    But clients will not panic if the LAN goes down; they will simply wait for communication to be re-established.

  • Support for configuring and reviewing Access Control Lists on (ACLs) on NFS clients

    Commands such as chacl(1) and setacl(1) will fail on an NFS-mounted (imported) file system. But you can still set up ACLs on the NFS server and they will be enforced on the NFS clients.

  • Distributed named pipes

    "DUX" allowed one client to read a named pipe written by another; NFS Diskless does not.

  • Global PIDs (Process Identifiers)

    PIDs are managed on an NFS Diskless node just as they are on a standalone machine.

  • Automatic clock synchronization.

    You must synchronize the client's clock with the cluster time when you add the client via SAM.

  • Certain tunable parameters. (See “Details of Changes for NFS Diskless”.)

For more information:

"DUX" versus NFS Diskless: Summary of Key Differences

The following table summarizes the differences between "DUX" and NFS Diskless clusters, and shows how the SAM-SPA system management tool both extends base NFS functionality and makes it easier to manage.

  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  Series 700      Series 700                                 

  can be clients  can be clients

  or servers      or servers

  Series 300/400  Series 300/400                             Series 300/400

  systems can be  not supported                              cannot upgrade to

  clients                                                    10.x and cannot 

                                                             boot remotely from

                                                             10.xut

                                                             can import and

                                                             and export file

                                                             systems.



  Series 800      Series 800                                 Series 800 can be

  systems not     supported as                               cluster server, can

  supported       servers only                               import and export

  at 9.0                                                     file systems and 

                                                             swap remotely,

                                                             but cannot boot

                                                             from remote server


  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  Proprietary     bootp/tftp                                 Supported on S700

  remote boot                                                only (S800s can be

  (RMP)                                                      servers).

                                                             rbootd(1M) modified

                                                             so existing S700s

                                                             can boot via NFS.

                                                             Clients can boot

                                                             across subnet.

                             

                                                             Server can support

                                                             clients on more than

                                                             one LAN card.



  File sharing    File sharing via     Global file system    HP-UX now uses

  via global      NFS                  management services   industry-standard

  mount                                                      NFS mechanism but

                                       Temporary mounts      allows global man-

                                       (not entered in       agement via SAM-SPA

                                       /etc/fstab) not

                                       supported by this 

                                       service. 

  

  Shared/private  V.4 file system                            CDFs no longer   

  file separ-     layout separates                           supported

  ation via CDFs  private from                                    

  (context-       shared directories.                                         

  dependent                               

  files)


  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  Remote or       Remote dynamic                             Remote device swap

  local device    swap or local                              not supported.

  or dynamic      device or                                  

  swap            dynamic swap                               Any node can

                                                             swap dynamically

                                                             to any remote 

                                                             system (not just to

                                                             those with common

                                                             cluster server).

                  

                                                             Server does not

                                                             have to swap to own

                                                             disk space.

                                                                         

                                                             Swap files not

                                                             freed on reboot.

  CDROM            Mounts supported                          CDROM volumes

  file system      on any node                               can be mounted

  (CDFS)                                                     on any 10.x system.

  support for

  mounts on 

  server only


  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  POSIX-compliant None                                       The NFS diskless

  file system                                                file system is not

                                                             POSIX-compliant.



  Shared          None               Global printer 

  spooling and                       management services

  printing                           permit sharing

  

  Cluster-wide    (Can NFS-mount     Cluster-wide backup     Service runs on

  backup          all file systems   service backs up        cluster server only,

                  to one server)     all private roots       though shared

                                     and all shared          file systems can

                                     file systems.           be backed up

                                                             from any node.





  Shared mail     None               Mail service            New "private" mail

                                     supports both           management service

                                     cluster-wide            (for a single node)

                                     and private             gives greater

                                     mail management.        flexibility than

                                                             before.


  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  Cluster-        (NIS)              Support for             "Private" option 

  wide user                          global user and         is new.

  and group                          group id's and

  id's                               home directories.       Global id's depend

                                     "Private" id's          on symbolic links

                                     can also be             to group and 

                                     configured.             password files;

                                                             be careful not to 

                                                             unlink.



  Cluster-        None               Support for             Clocks do not

  wide time                          synchronizing           synchronize automat-

  synchron-                          cluster time            ically as before;

  ization                            via NTP                 must be configured

                                                             (via SAM) when 

                                                             client is config-

                                                             ured.

  Distributed     None                                       Distributed named

  named pipes                                                pipes not supported.


  "DUX" Feature   NFSD equivalent    SAM-SPA enhancement     9.x-10.x change

  ===============================================================================

  Global Process  None                                       Each node will

  Identifiers                                                manage its own PIDs

  (PIDs)



  Shared /tmp     /tmp can be                                Must NFS mount /tmp

                  NFS mounted                                explicitly if you

                                                             need to share it.

  Shared Access   None                                       ACLs cannot be 

  Control Lists                                              configured on 

  (ACLs)                                                     clients, but will

                                                             work on clients

                                                             when configured on 

                          server.





  Menu-driven     None               Similar menus 

  cluster 

  config. 

                                     

                                     Remote Task             New SAM feature

                                     Monitor                 for clusters.

Details of Changes for NFS Diskless

New Commands

The commands dcnodes(1M) and dcnodesd (1M)replace cnodes. dcnodes(3X) is the corresponding library routine. Refer to the dcnodes(1) manpage for more information.

swcluster(1M) manages installing and removing software in NFS Diskless clusters.

Changes to Commands and Files

The following commands have new options to support NFS Diskless:

   Command         Option    Function

   =======         ======    ========



   swapon(1M)       -t       Allows choice of type of swap entry

                             (in /etc/fstab--formerly /etc/checklist)

                             to be processed



   mount(1M)        -Q       Causes mount to ignore file systems

                             already mounted

Commands, Parameters, Options No Longer Supported

The following commands were specific to "DUX" and are no longer supported:

   ccck(1M)

   cdf(4) 

   cfuser(1M)

   cluster(1M)

   cnodes (1)

   context(5)

   cps(1)

   csp(1M)

   cwall(1M)

   getcontext(1)

   makecdf(1M)

   showcdf(1M)

The following commands had "DUX"-specific options that are no longer supported:

   Command              Options

   =======              =======       



   bdf(1M)              -L

   chmod(1)             -H

   fbackup(1M)          -H

   find(1)              -hidden -type H

   ftio(1)              -H

   last(1M)             -c

   ls(1)                -H

   mount(1M)            -L 

   pax(1)               -H

   pwd(1)               -H

   reboot(1M)           -l -b

   sync(1M)             -l

   syncer(1M)           -l

   tar(1)               -H

   umount(1M)           -L 

   users(1)             -c

   who(1)               -c

The following library and system calls are disabled or unsupported:

   cnodes(2)

   cnodeid(2)

   getcontext(2)

   diskless_stats(2)

   endccent(3c)

   fgetccent(3c)

   ftwh(3c)

   getccent(3)

   getccid(3c)

   getccnam(3c)

   getcdf(3c)

   getcontext(2)

   gethcwd(3c)

   hidecdf(3c)

   lsync(2)

   mkrnod(2)

   nftwh(3c)

   setccent(3c)

   setcontext(2)

cnodes and cnodeid return zero if called on 10.01, and getcontext, setcontext, diskless_stats, lsysnc and mkmod return the EOPNOTSUPP error. The remaining calls in the above list are not recognized on 10.01.

The following kernel parameters were specific to "DUX" and are no longer supported:

   num_cnodes

   serving_array_size

   server_node

   using_array_size

   dksless_fsbufsn

   gcsp

   rdu

   server_node

   check_alive_period

   retry_alive_period

   selftest_period

   reboot_option

Upgrading a Cluster to 10.01

HP has provided tools to upgrade a 9.x "DUX" cluster to 10.01 NFS Diskless. You can then upgrade the NFS Diskless cluster. To upgrade from "DUX", you need the package "HP-UX Upgrade Tools for 9.x to 10.x" and the manual Upgrading from HP-UX 9.x to 10.x, which is part of the package.

A Useful Script

The nfsstat command displays statistical information about the NFS and Remote Procedure Call (RPC) interfaces to the kernel. The NFS Client/Server Configuration, Topology, and Performance Tuning Guide White Paper (on your 10.01 system in /usr/share/doc/NFS_Client_Server.ps) provides a script for collecting these statistics. Here is the source for that script.

   #! /usr/bin/ksh

   #

   #This is a sample script that runs the nfsstat command at given

   #intervals and normalizes the output.

   #

   # Get a series of nfsstat reports and normalize over time.

   # Results are reported "per second", whatever the window used.

   #

   # Invoked as: Program-name interval nfsstat_flags runtime

   # All time units are in seconds.

   #

   # Output:

   # The output is similar to the nfsstat format appropriate to the option

   # requested with the addition of a % value which is the percent that

   # particular field is of the number of calls.

   export PATH="/usr/bin/:$PATH"

   if [ "$1" = "-f" ] ; then

           fileinput=1

           shift

           echo using files $*

   else

           if [ "$1" != "" ] ; then

                   window=$1

           else

                   window=${WINDOW:-60}

           fi

           echo Window=$window

           ttime=$3

           if [ "$ttime" = "" ] ; then

                   ttime=9999999

           fi

           starttime=$SECONDS

   fi

   ( if [ "$fileinput" = "" ] ; then

           while [ "$ttime" -gt $SECONDS ] ; do

                   let w2=ttime-starttime

                   if [ "$w2" -le "$window" ] ; then

                           echo Last window = $w2 >&2

                           window=$w2

                   fi

                   echo "elapsedtime: $et"

                   /usr/bin/nfsstat $2

                   echo `--'

                   sleep $window

                   endtime=$SECONDS

                   let et=endtime-starttime

                   starttime=$SECONDS

           done

   else

           echo "elapsedtime: 600" # Assumes data taken over 10 minute interval

           cat $*

   fi

   ) | awk `

   BEGIN                   { firsttime=1 }

   $1 == "--"              { firsttime = 0; next}

   $1 == "elapsedtime:"    {et=$2;print "";

                           if (firsttime == 1 ) { printf ("Started at ")}

                               system("date +%D\ %X"); next}

   /^$/                    {if (firsttime != 1) { print "" };next}

   /^Client |^Server /     {class=$0

                           if (firsttime != 1) { print class }

                                   next}

   /^[a-zA-Z]/             {labelstr=$0

                           for (i=1; i<= NF; i++) {

                                   label[i]=$i

                                   if (label[i] == "calls" ) {

                                           totcalls=deltaval

                                   }

                                   if (firsttime!=1) {printf("%8s/s ",label[i])}

                           } if (firsttime != 1) { print "" }

                           numlabels=NF

                           getline

                           datastr=$0

                           for (i=1;i<=numlabels;i++) {

                                   if (NF == 2*numlabels) {

                                           datapos=i*2-1

                                   }

                                   else {

                                           datapos=i

                                   }

                                   val=$datapos

                                   if (firsttime != 1) {

                                           deltaval=val-lastval[class label[i]]

                                           if (label[i] == "calls" ) {

                                                   totcalls=deltaval

                                                   if (totcalls == 0 )

                  { totcalls=1 }

                                           }

                                           printf ("%6.2f %2d%% ", deltaval/et,\

                                                   int(100*deltaval/totcalls+0.5))

                                   }

                                   lastval[class label[i]]=val

                           }

                           if (firsttime != 1) { print "" }

                           next

                           }

                           {print "error on line: " $0}

`    -
Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© Hewlett-Packard Development Company, L.P.