Pythian Blog: Technical Track

Oracle Direct NFS Configuration File Explained

While Oracle tech folks do their best to explain the meaning of not so many DNFS configuration file (oranfstab) parameters, I still find the official description a bit confusing. Therefore, I decided to share my understanding of the DNFS configuration parameters in hope that it will help someone or that if my understanding is wrong, someone corrects me :) So, if I am wrong please, please, please feel free to comment below.

Reasonably good description from Oracle folks

REF: Oracle® Grid Infrastructure Installation Guide 11g Release 2 (11.2) for Linux Part Number E22489-08
The parameters Enabling Direct NFS Client Oracle Disk Manager Control of NFS

Yury’s explanation

  • Server – Any name you want. This item has no technical impact whatsoever. This is kind of a configuration set’s alias used by instances to report the DNFS channels’ status or channel- related problems.
  • “Local:” & “Path:” –  Both parameters are IPs of a network card through which you want the DNFS traffic to be sent. “Local” is an IP on your database server. “Path” is an IP of a network card on the NFS server. You can configure up to 4 IPs for each parameter (assuming you have 4 different network cards).
  • “Export:” & “Mount:” – This pair of parameters identifies a configuration set in an oranfstab file. You can have as many configuration sets as you want in a single configuration file. Each configuration set is relative to at least one or several pairs of mount points specified by an “Export”/”Mount” pair. “Export” parameter identifies a mount name on the NFS server, while “Mount” identifies the name of a mount point on a database server.
  • Mnt_timeout: If an Oracle session doesn’t receive any response from a DNFS channel for the number of seconds specified by that parameter (default 10 mins), it drops the connection and marks the channel as unavailable. Comment: It sounds a bit too high for me.
  • Dontroute: If specified, no OS TCP/IP routing process is used. The packages got sent to the network interfaces specified by “Local” parameter directly. It sounds logical to me.

oranfstab file example

cat $ORACLE_HOME/dbs/oranfstab

server: nfs_data_cfg_set1 # Remember you can anything here. It doesn't have any tech meaning
local: locIP1 # e.g. local:168.192.1.32
path: nfsIPa # this IP could be different from the one specified in a /etc/mtab
local: locIP2
path: nfsIPb
local: locIP3
path: nfsIPc
local: locIP4
path: nfsIPd
dontroute # Optional
Mnt_timeout: 30 # Oprional
export: /vol/orad1 mount: /ora_nfs_a
export: /vol/orad2 mount: /ora_nfs_b
export: /vol/orad3 mount: /ora_nfs_c # Note that this is where nfs_data_cfg_set1 section ends
server: nfs_fra_cfg_set2
local: locIP5
path: nfsIPf
local: locIP6
path: nfsIPg
local: locIP3
path: nfsIPc
local: locIP4
path: nfsIPd
Mnt_timeout: 120
export: /u01 mount: /fra_nfs_a # this is where nfs_fra_cfg_set2 ends
server: nfs_dpump_cfg_set2
....
export: /vol/interfaces mount: /d_pump_a # this is where nfs_dpump_cfg_set2 ends

Let me know if this post helped you or you found a mistake.

Yury

No Comments Yet

Let us know what you think

Subscribe by email