Direct NFS Client
NAS storage devices use
the Network File System (NFS) to access data. In Oracle Database 10g, NAS
devices were accessed using operating system–specific kernel NFS drivers. This
required that you tune many parameters, and the configuration varied across the
platforms. The NFS clients tended to be inconsistent across the different
operating system platforms. Manageability wasn’t easy because you had to contend
with over 20 configuration parameters.
In Oracle Database 11g, the Oracle NFS
implements the NFS Version 3 protocol in the Oracle RDBMS kernel. Implementing
the Oracle Direct NFS offers the following benefits:
Avoids the bottlenecks
and resource constraints by avoiding the kernel NFS layer.
Provides a common
NFS interface for Oracle for use on all operating system platforms and supported
NFS servers.
Provides load balancing across multiple connections to the NFS
servers, thus improving performance.
Performance is predictable because the
Oracle NFS implementation enables you to completely control the input/output
path to the Network File Servers.
Easier management including simpler
configuration and superior diagnosability.
Configuring Direct
NFS
You don’t have to configure much to implement Oracle
Direct NFS Client. Direct NFS searches for the mount point entries in the
following
order:
$ORCLE_HOME/dbs/oranfstab
/etc/orafnstab
/etc/mtab
The
database uses the first match as the mount point. Oracle always requires that
even when you use Direct NFS, the kernel NFS system must perform the mounting.
For this reason, Oracle will always crosscheck the information about mount
points in the oranfstab file with the operating system NFS mount points. If
there’s a mismatch, Direct NFS can’t act as a client to the NFS server and stops
serving the NFS server.
Enabling Direct
NFS
You must follow these steps to enable Direct
NFS:
1.You must mount all NFS mount points with your kernel NFS client. You
must make sure you mount any file systems you plan on using through ODM NFS and
make the file systems available to Oracle over regular NFS mounts.
2.If you
want to specify Oracle-specific options to Direct NFS, you’ll need an oranfstab
file. This is an optional step. The oranfstab file must have the following
attributes so the database can access all NFS servers through Direct
NFS:
server: Provides the NFS server name.
mount: Provides the local mount
point for the NFS server.
export: Provides the exported path from the NFS
server.
path: Provides the network path to the NFS server. You can specify up
to four network paths with an IP address or by name. Using multiple network
paths enables the Direct NFS client to use an alternate path if the current path
fails. Multiple paths also enable the client to perform load
balancing.
Mnt_timeout: Specifies (in seconds) the time Direct NFS Client
should wait for a successful mount before timing out. This parameter is
optional. The default timeout is 10 minutes (600).
Dontroute: Specifies that
outgoing messages should not be routed by the operating system, but instead sent
using the IP address to which they are bound. Note that this POSIX option
sometimes does not work on Linux systems with multiple paths in the same
subnet.
A typical oranfstab file looks similar to the
following:
server: TestServer1
path:
130.33.34.11
export: /vol/oradata1
mount:
/mnt/oradata1
In order to remove an NFS path that the database is
using currently, you must restart the database.
3. You must replace the
standard ODM library, libnfsodm10.so, with the ODM NFS library, as shown
here:
$ cd $ORACLE_HOME/lib
$ cp libodmll.so
libodmll.so_stub
$ ln -s libnfsodm11.so
libodm11.so
You can disable the Direct NFS client by using any of the
following three methods.
Delete the oranfstab file.
Replace the ODM NFS
library with the stub libodm11.so file.
Modify the oranfstab file by deleting
the specific NFS server or the network paths to the NFS server.
If the
database can’t open the NFS server using Direct NFS, it will use the operating
system kernel client instead.
Monitoring Direct NFS
You can query the
following views in order to manage Direct NFS:
V$DNFS_STATS Shows performance
statistics for Direct NFS.
V$DNFS_SERVERS Shows servers accessed by Direct
NFS.
V$DNFS_FILES Shows files currently using Direct NFS.
V$DNFS_CHANNELS
Shows the open network paths being used by Direct NFS.
参考至:
《McGraw.Hill.OCP.Oracle.Database.11g.New.Features.for.Administrators.Exam.Guide.Apr.2008》
http://docs.oracle.com/cd/E11882_01/install.112/e41961/storage.htm#CWLIN279
http://czmmiao.iteye.com/blog/1965839