It contains the following topics:
Oracle Exalogic is a multihomed system where multiple IP addresses are configured on the InfiniBand network interface. NFSv4 addresses file locking problems on multihomed systems, such as Exalogic. The file locking problem occurs when NFSv3 is used.
NFSv3 is a stateless protocol. NFS clients do not maintain the state between requests; the clients rely on the Network Lock Manager (NLM) protocol to support file locking. There are known limitations on the NLM based locking, and NFSv3 it can cause lock ownership issues under certain multihomed system configurations, where the source IP addresses are not deterministic between lock and unlock requests.
Unlike NFSv3, NFSv4 is a stateful protocol. An NFS client obtains a client ID assigned during the initial negotiation phase and uses it for all subsequent requests. With the use of Client ID, the client IP address is not used in the file locking process. Therefore, the file locking problem on Exalogic does not occur when NFSv4 is used. In addition, with locking built into the protocol, NFSv4 provides better lock performance than NFSv3.
NFSv4 requires a naming service, such as Network Information Service (NIS) or LDAP, for ID mapping. You can continue to use the naming service on your existing network. The naming service is not related to the file locking problem.
It is assumed that you have a working NIS or LDAP service on your network. This chapter does not describe how to set up the NIS or LDAP service.
To verify the NIS setting in your storage appliance, complete the following steps:
Log in to the Browser User Interface (BUI) of the storage appliance in your Exalogic machine.
Click Configuration > SERVICES > NIS. NIS Server configuration information is displayed, as shown in Figure 9-1.
Note down the domain name and the server IP address listed on the page. You require this information when setting up NIS clients on Exalogic compute nodes. If you do not see configuration information on this page, it means that you should install an NIS Server. Figure 9-1 uses an example NIS domain
You must configure two services in the storage appliance for using NFSv4 on Exalogic:
Log in to the browser user interface (BUI) of the storage appliance, and configure the NFS service as follows:
Click Configuration on the home page.
Expand Services on the left navigation menu.
Click NFS. The NFS service configuration page is displayed, as shown in Figure 9-2.
Enter information in the fields as follows:
Minimum supported version:
Maximum supported version:
Use DNS domain as NFSv4 identity domain: Ensure that the option is not selected.
Use custom NFSv4 identity domain: Enter the domain name of the NIS service you are using.
Enable NFSv4 delegation: Select this option.
Log in to the browser user interface (BUI) of the storage appliance, and configure the NIS service. For example, in Figure 9-3 the domain
nisdomain.example.com is entered.
The NIS service must be up and running. For Server, select the Use listed servers option, and enter the host name or IP address of the NIS server.
Configure an Exalogic Linux compute node as follows:
Log in to the compute node as
/etc/idmapd.conf configuration file:
Set the domain value, as in the following example:
Domain = us.myexample.com
service rpcidmapd restart
/etc/yp.conf configuration file, and set the correct domain value, as in the following example:
Add the following line:
domain us.myexample.com server <NIS_Server_hostname_or_IP>
us.myexample.com is the example domain and <NIS_Server_hostname_or_IP> is the host name or IP address of the NIS server. You must replace these sample values with values appropriate for your environment.
Set NIS domain name on the command line:
# domainname <NIS_DOMAIN_NAME>
# domainname nisdomain.example.com
/etc/nsswitch.conf configuration file:
Change the following entries:
#passwd: files passwd: files nis #shadow: files shadow: files nis #group: files group: files nis automount: files nis nisplus aliases: files nis nisplus
# service rpcidmapd restart
ypbind service by running the following command:
service ypbind restart
yp service by running this command:
Verify if you can access Oracle user accounts:
# ypcat passwd
ypbind to your boot sequence, so that it starts automatically after rebooting.
# chkconfig ypbind on
Create NFSv4 mount points on Oracle Linux as follows:
Create a new share on the storage appliance. In this example, it is assumed that the new share is accessible as
el01sn01:/export/common/patches. This mount point is mounted on the compute node as
On the compute node, create a new directory as follows:
# mkdir -p /u01/common/patches
/etc/fstab configuration file:
Add the following line, and enter the correct values for nfs4 and proto=tcp
el01sn01:/export/common/patches /u01/common/patches nfs4 rw,bg,hard,nointr,rsize=131072,wsize=131072,proto=tcp
Mount all shared volumes by running the following command:
# mount -a