Oracle VM

Oracle VM 3.4.6 : Part 6 – OVM Block Storage

Oracle VM Block Storage

In my last Blog post I presented NFS storage to my Oracle VM Server, in this post I will show how block storage can also be configured for use with OVM.

Create Pure FlashArray volume

Our first step is to create a volume and connect it to our Oracle VM Server. In this example I have created a 1TB volume on one of my lab Pure Storage FlashArrays and connected it to my OVM Server.

Create Volume
Volume details
Connected Hosts

Configure OVM – SAN Servers

Before we present our new Pure Storage block device to our Oracle VM Server we first need to update the /etc/multipath.conf file to include any vendor specific settings and restart the multipath service. Below is the entry for a Pure Storage FlashArray.

        device {
                vendor                "PURE"
                product               "FlashArray"
                path_selector         "queue-length 0"
                path_grouping_policy  group_by_prio
                path_checker          tur
                fast_io_fail_tmo      10
                dev_loss_tmo          60
                no_path_retry         0
                hardware_handler      "1 alua"
                prio                  alua
                failback              immediate
                user_friendly_names   no
[root@z-ovm ~]# service multipathd reload

You can check that your changes have been applied with the multipathd show config command. You man find it useful to direct output to a file and then using view to search for your device. e.g.

[root@z-ovm ~]# multipathd show config > r.r
[root@z-ovm ~]# view r.r
        device {
                vendor "PURE"
                product "FlashArray"
                path_grouping_policy group_by_prio
                getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
                path_selector "queue-length 0"
                path_checker tur
                features "0"
                hardware_handler "1 alua"
                prio alua
                failback immediate
                rr_weight uniform
                no_path_retry fail
                rr_min_io 1000
                rr_min_io_rq 1
                fast_io_fail_tmo 10
                dev_loss_tmo 60
                user_friendly_names no

Now Logon to your Oracle VM Manager and refresh your previously created SAN Server to discover our newly created volume(s).

Refresh SAN Servers

Click OK to confirm Refresh, the new LUN(s) should now be visible in Oracle VM Manager Storage tab.

As I have presented the block storage over iSCSI we can see IQN (iSCSI Qualified Name) in the Storage Targets, this was set-up in Part 4 OVM Storage.

ID: is the UUID is a universally unique identifier that Oracle VM Manager assigns to a physical disk.

Page83 ID: The unique SCSI identifier for the physical disk, for a Pure Storage FlashArray this will be set as the Vendor ID + lowercase volume serial number e.g 3624a9370 + 513519106E354B37002EB1D1.

NOTE: Oracle VM does not currently support User Friendly Names (see extract from /etc/multipath.conf.

## IMPORTANT for OVS this must be no. OVS does not support user friendly
## names and instead uses the WWIDs as names.
defaults {
        user_friendly_names no
        getuid_callout "/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/%n"
        no_path_retry 10

Therefore the User Friendly Name will be same as the Page83 ID.

An optional step now is to Right Click the volume, and select Edit to provide a more meaningful Name and Description. Once updated Right Click again and this time select Refresh.

Updated volume names

Create Oracle VM Repository

From the Repository tab click on the Green Plus to create a new Repository, enter a Repository Name, select Physical Disk, Description, for non-Clustered deployments select Server Pool None and click on the Magnifying Glass to select the Physical Disk previously added. Then click Next.

Select SAN Server and Name, check the User Friendly Name is as expected.

Create a Repository: Select Physical Disk

Oracle VM Server

If we now logon to the Oracle VM Server as root we should now see our newly created volume(s).

[root@z-ovm ~]# multipath -ll
3624a9370513519106e354b37002eb1d1 dm-1 PURE,FlashArray
size=1.0T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='queue-length 0' prio=1 status=active
  |- 47:0:0:1 sdb 8:16 active ready running
  |- 48:0:0:1 sdc 8:32 active ready running
  |- 49:0:0:1 sdd 8:48 active ready running
  `- 50:0:0:1 sde 8:64 active ready running
[root@z-ovm ~]# ls -l /dev/mapper/
total 0
lrwxrwxrwx 1 root root       7 Jan  3 15:26 3624a9370513519106e354b37002eb1d1 -> ../dm-1

Each repository contains the following directory structure /OVS/Repositories/*/

  • Assemblies
    • Contains pre-configured sets of virtual machines.
  • ISOs
    • Contains ISO images which can be used by VM’s
  • Templates
    • Contains virtual machine templates
  • VirtualDisks
    • Contains dedicated or shared virtual disks
  • VirtualMachines
    • Contains virtual machine configuration files

However before we logoff our Oracle VM server lets use findmnt to check that our NFS and OCFS2 filesystems mounts look OK. In the example below we can see both our NFS export and block devices as expected.

[root@z-ovm mapper]# findmnt -t nfs
TARGET                                             SOURCE                      FSTYPE OPTIONS
/OVS/Repositories/0004fb00000300009e6780edf21a0ee5 nfs    rw,relatime,vers=3,rsize=52

[root@z-ovm mapper]# findmnt -t ocfs2
TARGET                                            SOURCE                                       FSTYPE OPTIONS
/OVS/Repositories/0004fb0000030000b72890166aa11f29                                                   /dev/mapper/3624a9370513519106e354b37002eb1d1                                                                                              ocfs2  rw,relatime

You can read-up on OCFS2 at:

Oracle VM

Oracle VM 3.4.6 : Part 5 – OVM NFS Storage

Oracle VM NFS Storage

If you been following my series of Blog Post on OVM you should by now have a working OVM Server and Manager. However, if you a new to this series you can catch-up using the links below:

Pure Storage FlashBlade

In this Blog post we will create our first OVM Repository for Oracle VM images using NFS storage.

Our first step is to create an NFS File System and export it to our OVM Server. In the example I am creating a 5TB file system on one of my lab Pure Storage FlashBlades with snapshots enabled and access limited to my OVM Server.

Create File System

Oracle VM Manager File Server

Logon to your Oracle VM Manager and refresh your previously created NFS File Server to discover our newly created NFS export.

Refresh File Server

Click OK to confirm Refresh, our new file system should now be visible in Oracle VM Manager Storage tab.

File System – Default Name

An optional step now is to Right Click the file system, and select Edit to provide a more meaning full name and description. Once updated Right Click again and this time select Refresh.

Updated and refreshed File System

Create Oracle VM Repository

Click on the Green Plus to create a new Repository, enter a Repository Name, default Network File Server, Description and click on the Magnifying Glass to select the Network File System previously added. Then click Next.

Repository Information
Create a Repository: Select Network File System

Select OVM Server and move it to Present to Server(s) and click Finish.

Present to Servers

Oracle VM Server

If we now logon to the Oracle VM Server as root we can now see our newly created NFS mount point, and the Oracle VM created directory structure e.g.

- Assemblies
- ISOs
- Templates
- VirtualDisks
- VirtualMachines
z-ovm_images – 5TB FlashBlade File System
Repository directory structure

In my next Blog I will create another Oracle VM repository for my planned Oracle VM VirtualMachine but this time using iSCSI block storage.

Oracle VM

Oracle VM 3.4.6 : Part 4 – OVM Storage

Configuring OVM Storage

If you have followed Part 1, Part 2 and Part 3 you should now have a working networked OVM Server and Manager ready to have storage presented to it.

Before you start, logon to the OVM Server and add your NFS and / or iSCSI fully qualified domain named servers to the /etc/host file to avoid hitting OVMRU_000082E.

Can Not Add NFS Server To Oracle VM Manager: OVMRU_000082E Either the hostname or IP address is invalid (Doc ID 2294262.1)

Navigate to the Storage tab, from here we can configure SAN Servers (Block) and File Servers (NFS)

Storage – File Servers

NFS Storage

To add NFS Storage, select File Servers and click the folder icon with the green plus, this should show the Discover File Server.. tag.

Enter NFS Server Name, storage network IP address, Description

File Server Parameters

Move OVM server(s) to Selected Admin Server(s) and click Next.

Add Admin Servers

Move OVM server(s) to Selected Refresh Server(s) and click Next.

Select Refresh Servers

Block Storage (iSCSI)

Storage – SAN Servers

Enter SAN Server Name and Description, as I am planning to use iSCSI there is no need to change Storage Type, click Next.

Check you do not have any leading or trailing spaces in your description, otherwise you will encounter an OVMRU_000096E error.

OVMRU_000096E Cannot set attribute Description of object IscsiStorageArray to value [ xxx ]. Leading or trailing spaces are not allowed.

Enter Access Host(s) and Click Next.

Create Access Host

Repeat above step for multipathing, and then click Next

Access Information

Select OVM Server(s) and click Next

Add Admin Servers

Select the Default access group and click the pencil icon to edit Access Group.

Manage Access Group

Click on the Storage Initiators tab and move the generic Oracle storage initiator to Selected Storage Initiators and click OK.

Edit Access Group

Now click Finish to complete the set-up.

Oracle VM

Creating Oracle support diagnostics for OVM 3.4.6

Using vmpinfo3

VMPinfo3 is an Oracle support tool for capturing log files and other details from Oracle VM 3.x Manager and Servers. To use it ssh to you Oracle VM Manager as root and execute as below:

The Oracle Support Document VMPinfo3 Diagnostic Tool For Oracle VM 3.2, 3.3 and 3.4 Troubleshooting (Doc ID 1521931.1) directs you to /u01/app/oracle/ovm-manager-3/ovm_shell/tools/vmpinfo/ however in 3.4.6 has been relocated to /u01/app/oracle/ovm-manager-3/ovm_tools/support/

First, start by using the listservers option to report the OVM Servers known by your OVM Manager e.g.

[root@z-ovmm ~]# cd  /u01/app/oracle/ovm-manager-3/ovm_tools/support
[root@z-ovmm support]# ./ --username=admin listservers
Enter OVM Manager Password: 

The following server(s) are owned by this manager: ['z-ovm']

Next, re-run vmpinfo3 this time with the servers option providing the server(s) listed, note if you have multiple OVM servers use a comma delimiter e.g. servers=server1,server2,server3

[root@z-ovmm support]# ./ --username=admin servers=z-ovm
Enter OVM Manager Password: 

Starting data collection
Gathering files from servers: z-ovm. This process may take some time.
Gathering OVM Model Dump files
Gathering sosreports from servers
The following server(s) will get info collected: [z-ovm]
Gathering sosreport from z-ovm
Data collection complete
Gathering OVM Manager Logs
Clean up metrics
Copying model files
Copying DB backup log files
Running lightweight sosreport
Archiving vmpinfo3-20181220-121620
 Please send /tmp/vmpinfo3- to Oracle support

You can now upload the compressed tar file to your open SR.

LINUX · Oracle VM

Oracle VM 3.4.6 : Part 3 – OVM Networks

Configuring OVM Networks

Before we can present our iSCSI and NFS storage to our Oracle VM Server we need to configure a network. Oracle VM Manager provides a simple to use interface which can maintain the /etc/sysconfig/networking-scripts without the need of manual editing.

In my lab I have a number of VLAN’s configure on an Arista switch, in this Blog I will using an iSCSI VLAN and my NFS VLAN.

Logon to Oracle VM Manager and select the Networking Tab, then VLAN Interfaces.

Drill down to your OVM server, is this example mine is called z-ovm, here you will be presented with a list of available network interfaces on your selected server. Select your interface and click Next.

Create VLAN

Add your VLAN ID and click Next.

Change Addressing to Static and enter IP Address and Netmask, click Finish to Configure IP Address.

Now navigate to the Networks tab and click the green + to Create a Network entry.

Create Network

In the Blog we will create 2 Network’s one for NFS and the other for iSCSI, enter Name, Description and select Network Uses e.g Storage

As we have already configure a VLAN we can click Next, and go straight to Select VLAN Interfaces.

Select available VLAN and click Next.

Now it click Finish to complete setup.

We can now see our new NFS storage network. 

I repeated the above steps for my iSCSI VLAN and network.

You can validate and review your check network configuration changes by logging to your OVM sever and navigating to the network-scripts directory e.g. 

[root@z-ovm ~]# cd /etc/sysconfig/network-scripts/
[root@z-ovm network-scripts]# 

From here we can see the network files have been updated by Oracle VM Manager and configured to use our VLAN’s

[root@z-ovm network-scripts]# cat ifcfg-eth1.3
#This file was dynamically created by Oracle VM Manager. Please do not edit
[root@z-ovm network-scripts]# ifconfig eth1.3
eth1.3    Link encap:Ethernet  HWaddr EC:F4:BB:C7:9B:F2  
          inet addr:  Bcast:  Mask:
          RX packets:1777 errors:0 dropped:31 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:93802 (91.6 KiB)  TX bytes:672 (672.0 b)

E-Business Suite

Oracle EBS R12.2.6 on Virtual Box Pt2

If you followed my previous post Oracle E-Business Suite R12.2.6 on Virtual Box you will have already downloaded the 19 required zip files, and be ready to go.

Ok, change directory to the location of the downloaded files, unzip and concatenate them into a single OVA file using the following:

$ unzip ‘V*.zip’

$ cat Oracle-E-Business-Suite-12.2.6_VISION_INSTALL.ova.* > Oracle-E-Business-Suite-12.2.6_VISION_INSTALL.ova

Getting started – Virtual Box

Start Virtual Box and navigate to File -> Import Appliance

Click on ‘Expert Mode’ and edit the ‘Virtual Disk Image’ path to a location with adequate space (~500GB), in this example I am using my Samsung Portable SSD T1 1TB dive mounted at ‘/Volumes/Samsung_T1’


Click ‘Import’, go to lunch or grab a coffee and watch the progress bar if you prefer, the remaining time will re-calulate periodically.


Once complete, start up your new Oracle EBS R12.2.6 VM from within Oracle VirtualBox

Oracle E-Business Suite R12.2.6


The initial boot will prompt you to change the ‘root’, ‘oracle’ and ‘applmgr’ passwords, the process will continue to start and configure an Oracle database called ‘EBSDB’.


Use ifconfig -a’ to determine your VM’s IP address from you VirtualBox console before using SSH from your host to connect using your preferred client.

Add the IP address to your local ‘/etc/host’ file so your browser can resolve your Oracle EBS VISION sandbox environment. e.g.

# apps

Change directory to ‘/u01/install/APPS/scripts’ to access the database and application stop / start scripts and run ‘’ and ‘’



[oracle@apps scripts]$ ./
Logfile: /u01/install/APPS/12.1.0/appsutil/log/EBSDB_apps/addlnctl.txt

You are running version 120.4

Starting listener process EBSDB …

LSNRCTL for Linux: Version – Production on 15-AUG-2017 07:42:19

Copyright (c) 1991, 2014, Oracle. All rights reserved.

Starting /u01/install/APPS/12.1.0/bin/tnslsnr: please wait…

TNSLSNR for Linux: Version – Production
System parameter file is /u01/install/APPS/12.1.0/network/admin/EBSDB_apps/listener.ora
Log messages written to /u01/install/APPS/12.1.0/admin/EBSDB_apps/diag/tnslsnr/apps/ebsdb/alert/log.xml

Version TNSLSNR for Linux: Version – Production
Start Date 15-AUG-2017 07:42:19
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
Listener Parameter File /u01/install/APPS/12.1.0/network/admin/EBSDB_apps/listener.ora
Listener Log File /u01/install/APPS/12.1.0/admin/EBSDB_apps/diag/tnslsnr/apps/ebsdb/alert/log.xml
Listening Endpoints Summary…
Services Summary…
Service “EBSDB” has 1 instance(s).
Instance “EBSDB”, status UNKNOWN, has 1 handler(s) for this service…
The command completed successfully exiting with status 0 check the logfile /u01/install/APPS/12.1.0/appsutil/log/EBSDB_apps/addlnctl.txt for more information …

You are running version 120.1

Starting the database EBSDB …

SQL*Plus: Release Production on Tue Aug 15 07:42:19 2017

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to an idle instance.
ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
ORACLE instance started.

Total System Global Area 2147483648 bytes
Fixed Size 2926472 bytes
Variable Size 1308625016 bytes
Database Buffers 822083584 bytes
Redo Buffers 13848576 bytes
Database mounted.
Database opened.
Disconnected from Oracle Database 12c Enterprise Edition Release – 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options exiting with status 0

[oracle@apps scripts]$ ./ 
Starting the Oracle E-Business Suite Application Tier Services
You are running version 120.24.12020000.11

All enabled services for this node are started. Exiting with status 0 check the logfile /u01/install/APPS/fs1/inst/apps/EBSDB_apps/logs/appl/admin/log/adstrtal.log for more information …

Before you can logon you will need to enable SYSADMIN and the Demo accounts, Oracle have provided scripts to do this  e.g.

[oracle@apps scripts]$ ./

This script will let you set a new password for the SYSADMIN EBS Applications User, the default password most likely was “sysadmin”, so pick a different one now.

Enter new password for SYSADMIN:
Re-enter password for SYSADMIN:
Changing password for SYSADMIN
Log filename : L7583909.log
Report filename : O7583909.out
[oracle@apps scripts]$

[oracle@apps scripts]$ ./

Enter a new password for the EBS Applications Users, the default password
most likely was “welcome”, so pick a different one now…

Enter new password for DEMO users:
Re-enter password for DEMO users:
Setting password for DEMO users…
Log filename : L7583911.log

[oracle@apps scripts]$

Oracle EBS R12 Dashboard

You should now be able to logon as ‘SYSADMIN’ or explore your Oracle EBS R12.2.6 VISION sandbox environment using the Demo users (see below) and the password defined above at:


Sales Dashboard – LJONES


Oracle EBS Cloning with Delphix 5.0

History of Delphix and Oracle

Oracle EBS non-Production environments often have complex topologies, usually with separate database and application tiers, often with multiple Application servers. The recent Delphix v5.0 releases addressed this challenging requirement with the introduction of support for multiple Application Servers ‘Multi-Node’.

I thought it was a good time to revisit how Delphix virtualises a complete Oracle EBS environment including dbTech stack, Database and AppsTier and also provide a brief overview of Delphix EBS capabilities per release.

Below is a diagram I frequently use to describe the Delphix EBS Architecture, step-by-step virtualisation details can be found at one of my previous posts Virtualising Oracle EBS R12.1 using Delphix

Delphix EBS Virtulisation


Delphix v4.0

Delphix v4.0 was the first release to provide full stack Oracle EBS R12.1.x cloning, R12.1 was selected as it remains one of the most widely EBS deployed versions even though it’s getting quite long in the tooth now as you can see from below.

Amazing to think R12.1 was GA (Generally Available) May 2009.

Oracle EBS Releases

Delphix v4.2

Delphix v4.2 was another important release extending support to include the terminal release of 11i ( and R12.2.x and it’s use of the WebLogic Application Server.

The latest version of Oracle EBS R12.2.5 went GA Oct 2015, this is also fully supported by Delphix.

Delphix v4.3

Delphix v4.3 provided access to JetStream automation, with it’s Ordered Containers environment level management was now possible as you could specify the sequence of operations e.g.

1) dbTechStack
2) Database
3) AppsTier

Delphix v5.0

Delphix v5.0 now provides Out-of-the-Box support for multiple Application servers ‘Multi-Node’, this has previously been possible but required some development effort outside of Delphix.

You can now add additional Application servers to a Delphix Managed Oracle EBS environment from with the Delphix UI with a few extra clicks during initial provisioning or later on during configuration changes.

Configure as normal then click on the green ‘+’

Adding Additional Node


Provide Environment, OS User, Hostname, required Services and Display variable details, the Port Pool will be inherited from the primary Apps server

OS User must the same UID (User ID) and GID (Group ID) as the primary Apps server.

Adding additional Node

Click ‘Next and complete the Wizard to finish to your EBS Multi-Node deployment

Fast Backups and Restores

I recently came across an excellent post on Mike Swings’ Blog which does a great job is detailing the impact Delphix can have on Oracle EBS deployments, suggest you check it out – Fast Backups and Restores are Critical during EBS Upgrades, Testing and Development


Virtualising Oracle EBS R12.1 using Delphix v.4.1

Oracle EBS R12.1 Virtualisation

Since v4.0 Delphix has had the ability to Virtualise Oracle E-Business Suite (EBS) environments – (Database, Database Tech Stack & Apps Tier), in this post I will provide a quick walkthrough on how you can configure Delphix to Virtualise your EBS environment.

For this walkthrough I have built an R12.1.1 VIS environment running on a non-RAC Database server and single Application server with the directory structure below.

EBS R12.1
Oracle EBS R12.1 Directory Structure

Before you can begin Virtualising your EBS environment you need to register the Source & Target EBS Database and Application Server and Operating System user accounts within Delphix, you can do this by using the Delphix UI thus:

Manage -> Environments -> Add Environments providing your Oracle EBS database (oracle) and Application owner (applmgr) accounts details for the Source and Target Servers.

Virtualising Oracle EBS Database Tech Stack

We are now ready to start Virtualising the Oracle EBS environment, in this example I am going to start with the EBS dbTech Stack.

As you can see below I have set the Data Type to ‘builtin:ebs-db’, this lets Delphix know that you are planning to manage an EBS Oracle Home,  the ‘Environment User’ is set to my Oracle EBS database owner and ‘Data Path’ to the top level directory.

Delphix provides the ability to exclude directories from the dSource, as I have my Oracle database files located under my top level directory I have excluded db/apps_st/data (relative path) as my datafiles will be managed by the database dSource and do not want to import them twice.

I have also excluded ‘bump’, ‘cdump’, ‘udump’ and the ‘diag’ directories as I do not want the log files in my Virtual clones

Add dSource - Source
Add dSource – Source












Check your entries and if OK click ‘Next’

It’s good practice to give your dSource a meaningful name, I have included the environment name and type in the dSource name to help with the description

Add dSource - dSource Configuration
Add dSource – dSource Configuration














Select your ‘Target Group’ and then click ‘Next’

Add dSource - Summary
Add dSource – Summary















Review the summary screen and if OK click ‘Finish’

Delphix will now kick off a Job to ingest the Oracle Tech Stack, the time taken will be dependent upon your network and infrastructre. My 9.28GB Oracle Tech Stack compressed down to 5.57GB (1.6:1 ratio)

Virtualising Oracle EBS Database

If you have used Delphix to Virtualise a Database before you will be familar with the next steps but I have included them here for completeness.

Click on ‘Add dSource’ select your source EBS Database, and enter the Delphix database username and password.









Verify the credentials and if all OK click ‘Next’








Select ‘Target Group’ and click ‘Next’








Take defaults to perform an immediate Load







Review the settings and click ‘Finish’, Delphix will now kick of a Job to ingest the Oracle Database, the time taken will be dependent upon database size, network and infrastructure.

Virtualising Oracle EBS Apps Tier

It’s now time to Virtualise the Oracle EBS apps Tier.

Here I have set the Data Type to ‘builtin:ebs-app’, this lets Delphix know that you are planning to manage an EBS Oracle Apps Tier the ‘Environment User’ is set to my Oracle EBS Application owner and ‘Data Path’ to the top level directory.

As the Oracle post clone process will recreate the $INST_TOP we can exclude that from the Apps Tier dSource, provide the relative path to $INST_TOP if located under your top level directory.














Check you ‘Environment User’, ‘Data Path’ and ‘Paths to exlude’ and click ‘Next’

Enter a meaningful dSource Name and select Group as before














Review and click ‘Next’














Click ‘Next’ to take the defaults













Review the summary screen and if all OK click ‘Finish’

Delphix will now kick of a Job to ingest the Oracle Apps Tier, the time taken will be dependent upon your network and infrastructre.

We have now Virtualised our entire Oracle EBS environment (DB Tech Stack, Database and Apps Tier) within Delphix, in my next post I will walkthrough how can use it to create multiple Virtual Oracle EBS environments on premises or in the Cloud.