If you have been following my Blog for a while you will by now know I am a long term fan of Oracle on NFS and more accurately Oracle Direct NFS (dNFS).
If you need to re-familirise yourself with Oracle dNFS you could do a lot worse than check-out some of my previous Blogs on dNFS.
Using ORION with NFS
In this Blog I am going to share ORION (ORacle IO Number) can be used to test both Kernel NFS and Oracle Direct NFS (dNFS)
ORION supports four storage types, which can be set with the -storax switch, in this Blog I will be using skgfr and odmlib types.
–storaxtype API to use for testing I/O workload. skgfr: Use operating system I/O layer. oss: Use OSS API for I/O with Cell server in an Exadata machine. asmlib: Use ASMLIB disk devices based storage API for I/O. odmlib: Use Direct NFS storage based API for I/O
Interestingly, the -storax option is not shown with ORION 19.3.0 orion -help but it is still available and documented at the Oracle 19c database performance tuning guide.
NFS mount points
As ORION is Oracle dNFS aware, this provides a good way of comparing Kernel NFS and the impact of Oracle dNFS with a single mount point using the previously created files. (see previous Blog post)
[oracle@z-rac1 normal]$ ls -lh /mnt/orion/ total 40G -rw-r--r--. 1 oracle oinstall 9.8G Jul 15 12:42 orion1 -rw-r--r--. 1 oracle oinstall 9.8G Jul 15 12:42 orion2 -rw-r--r--. 1 oracle oinstall 9.8G Jul 15 12:43 orion3 -rw-r--r--. 1 oracle oinstall 9.8G Jul 15 12:43 orion4
Below is the contents of my ORION normal.lun which is pointing to my dNFS mounted Pure Storage FlashBlade files.
[oracle@z-rac1 normal]$ cat normal.lun /mnt/orion/orion1 /mnt/orion/orion2 /mnt/orion/orion3 /mnt/orion/orion4
FYI, ORION supports the use of soft links, so you may want to consider creating a single .lun file and using links to avoid having to maintain multiple .lun files e.g.
[oracle@z-rac1 normal]$ ln -s normal.lun normal_dNFS.lun
Normal Test with Kernel NFS
$ORACLE_HOME/bin/orion \ -run normal \ -testname normal \ -hugenotneeded
The default is skgfr, however if you find yourself using alternative storage options it is probably a good idea to explicitly set it to remind you what storage option you are testing. e.g.
$ORACLE_HOME/bin/orion \ -run normal \ -testname normal \ -hugenotneeded \ -storax skgfr
Normal Test with Oracle dNFS
To use dNFS you must include the -storax odmlib option as shown below.
$ORACLE_HOME/bin/orion \ -run normal \ -testname normal_dNFS \ -hugenotneeded \ -storax odmlib
As you can see from the below, the ORION -storax odmlib option is now in use and Direct NFS is enabled.
ORION: ORacle IO Numbers -- Version RDBMS_126.96.36.199.0DBRU_LINUX.X64_190417 Calibration will take approximately 30 minutes. Using a large value for -cache_size may take longer. Direct NFS: channel id  path [192.168.4.100] to filer [flashblade] via local [192.168.4.3] is UP Direct NFS: channel id  path [192.168.5.100] to filer [flashblade] via local [192.168.5.3] is UP Direct NFS: channel id  path [192.168.6.100] to filer [flashblade] via local [192.168.6.3] is UP Direct NFS: channel id  path [192.168.7.100] to filer [flashblade] via local [192.168.7.3] is UP Direct NFS: attempting to mount /z-rac1_orion1 on filer flashblade defined in oranfstab Direct NFS: channel config is: channel id  local [192.168.4.3] path [192.168.4.100] channel id  local [192.168.5.3] path [192.168.5.100] channel id  local [192.168.6.3] path [192.168.6.100] channel id  local [192.168.7.3] path [192.168.7.100] Direct NFS: mount complete dir /z-rac1_orion1 on flashblade mntport 2049 nfsport 2049 using NFS version 3 Nothing to reap(storax_odmlib_aiowait:odm_io4)
NOTE: The Oracle oranfstab file can be a bit fussy, if you do not see a descriptive filer name or references to Direct NFS you probably need to go back and check the syntax of your oranfstab file.Follow @RonEkins