Sample configurations
Basic NFSRestart configuration
include "types.cf"
cluster vcs_test (
)
system sysA (
)
system sysB (
)
group NFSgrp1 (
SystemList = { sysA = 0, sysB = 1 }
AutoStartList = { sysA, sysB }
)
DiskGroup dg01 (
DiskGroup = dg01
StartVolumes = 0
StopVolumes = 0
)
IP ip1 (
Device = lan0
Address = "11.123.175.11"
NetMask = "255.255.248.0"
)
Mount Mount_dir1 (
MountPoint = "/dir1"
BlockDevice = "/dev/vx/dsk/dg01/vol01"
FSType = vxfs
MountOpt = "ioerror=mwdisable,largefiles,qio,delaylog"
FsckOpt = "-n"
)
NFS nfs1 (
Nservers = 8
LockFileTimeout= 360
)
NFSRestart nfsres1 (
LocksPathName = "/dir2"
NFSLockFailOver = 1
NFSRes = nfs1
)
NIC nic1 (
Device = lan0
NetworkHosts = {"11.123.170.107"}
)
Share Share_dir1 (
PathName = "/dir1"
)
Volume dg01_vol01 (
Volume = vol01
DiskGroup = dg01
)
ip1 requires nic1
ip1 requires Share_dir1
Mount_dir1 requires dg01_vol01
nfsres1 requires ip1
Share_dir1 requires Mount_dir1
Share_dir1 requires nfs1
dg01_vol01 requires dg01
Enhanced NFS lock failover configuration
For enhanced NFS lock failover, modify the configurations for the NFSRestart agent to include a DNS resource. This DNS resource depends on the IP resource, and the NFSRestart resource depends on the DNS resource.
These dependencies are shown in the following extract from a sample configuration for the NFSRestart resource. The sample configuration also
includes the DNS resource definition for use with the NFSRestart agent.
DNS dnsres (
Domain = "marketing.db.com"
StealthMasters = {"11.123.10.10"}
ResRecord@sysA = {sysA= "11.123.175.11"}
ResRecord@sysB = {sysB= "11.123.175.11"}
TSIGKeyFile="/var/tsig/Kveritas.com.+157+00000.private"
)
ip1 requires nic1
ip1 requires Share_dir1
Mount_dir1 requires dg01_vol01
nfsres1 requires dnsres
dnsres requires ip1
Share_dir1 requires Mount_dir1
Share_dir1 requires nfs1
dg01_vol01 requires dg01
The DNS record enables NFS clients to identify the associated NFS server node in a cluster. The NFS clients that require lock recovery must be able to map this virtual IP address to hostname.
For NFS lock recovery:
NFSRestart nfsrestart (
NFSRes = nfsres
LocksPathName="/shared_mnt/lockinfo"
NFSLockFailover = 1
)
For no NFS lock recovery:
NFSRestart nfsrestart (
NFSRes = nfsres
)
include "types.cf"
cluster nfsclus (
UserNames = { admin = joe }
Administrators = { admin }
)
system sysA (
)
system sysB (
)
group nfsres_grp (
SystemList = { sysA = 0, sysB = 1 }
)
DiskGroup dg (
DiskGroup = nfsr_dg
)
IP ip (
Device = bge0
Address = "11.152.6.155"
NetMask = "255.255.240.0"
)
Mount mnt (
MountPoint = "/nfsr_mnt"
BlockDevice = "/dev/vx/dsk/nfsr_dg/nfsr_vol"
FSType = vxfs
MountOpt = rw
FsckOpt = "-y"
)
NFS nfs (
)
NFSRestart nfsres (
LocksPathName = "/nfsr_mnt"
NFSLockFailover = 1
NFSRes = "nfs"
)
Share share (
PathName = "/nfsr_mnt"
Options = "-o rw"
)
Volume vol (
Volume = nfsr_vol
DiskGroup = nfsr_dg
)
ip requires share
mnt requires vol
nfsres requires ip
share requires mnt
share requires nfs
vol requires dg
// resource dependency tree
//
// group nfsres_grp
// {
// NFSRestart nfsres
// {
// IP ip
// {
// Share share
// {
// Mount mnt
// {
// Volume vol
// {
// DiskGroup dg
// }
// }
// NFS nfs
// }
// }
// }
// }