In this Blog post I will share how your newly created Oracle ZFS Storage VMware Simulator can be used to deliver storage for an Oracle 12c database via dNFS and also support HCC (Hybrid Columnar Compression).
Hopefully you have followed Part I of my Blog post on Getting Started with the Oracle ZFS Storage VMware Simulator and already have a working Virtual Machine, if not probably a good time to visit Part I and try to build the simulator.
If you have not set-up or used Oracle dNFS before, you may want to check-out a couple of my previous posts on Oracle dNFS, Using Oracle dNFS Multi-Path and also Oracle dNFS Throughput Testing as these provide some useful background and some additional information.
On my Oracle 12c Linux database server I have created an a directory for the mount point and an oranfstab file in $ORACLE_HOM/dbs thus:
local: 192.168.56.10 path: 172.16.148.133
export: /export/oradata mount: /u02/app/oracle/oradata
The parameters used in my oranfstab are described below:
The NFS server name, this can be anything and is used for information rather than any network lookups.
Up to four paths on the database host, specified by IP address or by name.
Up to four network paths to the NFS server, specified either by IP address, or by name.
The exported path from the NFS server.
The corresponding local mount point for the exported volume.
Specifies the NFS protocol version used by Direct NFS Client. Possible values are NFSv3, NFSv4, NFSv4.1, and pNFS. The default version is NFSv3. If you select NFSv4.x, then you must configure the value in oranfstab for nfs_version. Specify nfs_version as pNFS, if you want to use Direct NFS with Parallel NFS.
Verify Oracle dNFS Usage
Restart your Oracle 12c database and view the Oracle Alert file, if you have successfully configured your environment you should see that Oracle is reporting that the Oracle dNFS library is in use as it’s version.
Oracle instance running with ODM: Oracle Direct NFS ODM Library Version 4.0
If you are not seeing any reference to the use of Oracle Direct NFS you may need to enable it using the steps detailed here.
We should also be able to see that we are using a single channel, IP addresses and the optional server name from our oranfstab.
Direct NFS: channel id  path [172.16.148.133] to filer [zfsa] via local [192.168.56.10] is UP
From the alert log file we can also confirm thatOracle is using our oranfstab file rather than the /etc/mtab, if your oranfstab is not correct your will see defined in mtab rather than defined in oranfstab, time to go back and fix-it.
Direct NFS: attempting to mount /export/oradata on filer zfsa defined in oranfstab
Additionaly, you can query the database using the v$dnfs_servers view to confirm the configuration.
SQL> COLUMN svrname FORMAT A20
SQL> COLUMN dirname FORMAT A50
SQL> SELECT svrname, dirname, nfsversion FROM v$dnfs_servers;
SVRNAME DIRNAME NFSVERSION
————— ———————- ———-
zfsa /export/oradata NFSv3.0
SNMP (Simple Network Management Protocol)
Finally, before we can start to use Oracle HCC (Hybrid Columnar Compression) within our Oracle 12c database we need to check that our simulator has been configured to use SNMP.
From our Oracle ZFS Storage VMware simulator check the status of services.
And if green, use snmpget to check the response from our simulator, providing the IP address and the Oracle MIB (Management Information Bases) below.
snmpget -v1 -c public 172.16.148.133 220.127.116.11.18.104.22.168.22.214.171.124.0
If all OK, snmpget should return a Sun Storage string, this is required to allow us to use the HCC features which are limited to Oracle Exadata / storage platforms.
SNMPv2-SMI::enterprises.126.96.36.199.4.2.0 = STRING: “Sun Storage 7000”
If you have successfully built your simulator and configured your Oracle 12c environment you are now ready to try to try out some of the HCC features.
In the next Blog post we will attempt to create database objects within and outside of our Oracle ZFS Storage VMware simulator to check our Oracle 12c database is able to use HCC data.
[twitter-follow screen_name=’RonEkins’ show_count=’yes’]