Oracle Database Appliance: ODA X8 19.11 Hands-On Lab Manual (OCI)
Oracle Database Appliance: ODA X8 19.11 Hands-On Lab Manual (OCI)
Oracle Database Appliance: ODA X8 19.11 Hands-On Lab Manual (OCI)
2
Step 4: Review Network Status ................................................................................... 76
Troubleshooting ............................................................................................................. 78
Restarting ODA Simulator in a Container. Note this for instructor led training environment
only. .......................................................................................................................... 78
BUI Agent Certificate Issue .......................................................................................... 79
Title and Copyright Information ...................................................................................... 83
3
ODA X8 19.11 OCI Simulator Labs in Oracle Cloud Infrastructure (OCI)
We will use a container-based Oracle Database Appliance (ODA) simulator to complete these
labs. Performing deployment and patching on an actual ODA would require you to have your
own system, and would take a rather long time. The simulator will provide a very similar
experience, but is faster, and you get your own simulator to complete the labs. The simulator
simulates an ODA X8 single node or an HA (2-node) database appliance.
If you are using the simulator in the OCI Marketplace with an “Always Free OCI Account”, the
memory is limited to 1GB. In this case, set up the simulator with single node option due to
memory limitation (see the readme document.) You can skip steps in the lab that involves two
nodes.
Keep in mind this is a simulation. Not all features are supported by the simulator, and no
database is actually created and running. The simulator may be more forgiving than a real
ODA if you enter invalid data, and some of the detailed output and screen shots it provides
may not be completely accurate.
Some command line operations will require entering long UUIDs or file names. Use
copy/paste to enter long entries. If you accidentally exit the simulator, just reconnect to it. It
will remember your state.
After the ODA Simulator is setup in the OCI VM, you’ll need to log into the ODA Simulator VM
with your credentials/key. You’ll do the labs in this book with both Command Line Interface
(CLI) and a web Browser User Interface (BUI) like you are interfacing with a real ODA.
You need a console on your local system to ssh into the ODA simulator container and be root
(su -s) to run the CLI commands in the labs. Make sure you have the container name(s)
(odasim-1 or oda-1-node0, oda-1-node1, etc.).
You need a web browser on your local system to perform the BUI tasks in the labs. Make sure
you have the public ODA simulator VM IP address and the simulator container port number
(e.g. 7095).
Firefox and Chrome are recommended web browsers for this lab. If you run into a BUI agent
certificate issue. See the Troubleshooting section for details.
For ODA X8 HA 2-node system simulator, you will have access to both node-0 and node-1.
Use node-0 for most of the lab exercises.
4
To connect to the ODA Simulator Command Line Interface (CLI)
Run the following script to connect to the container. This script is usually located in the
simulator directory (e.g. simulator_19.11.0.0.0)
To access the default single node simulator (e.g. odasim-1), run the following command.
# ./connectContainer.sh -n odasim-1
[root@odasim-1 /]#
Or if you have created a 2-node ODA HA simulator, you can access each node independently.
# ./connectContainer.sh -n oda-1-node0
[root@oda-1-node0 /]#
# ./connectContainer.sh -n oda-1-node1
[root@oda-1-node1 /]#
1. You must first complete odacli configure-firstnet and run the odacli update-repository
commands in the Lab 1 (using CLI) before you can start deploying ODA in BUI
2. Use the VM IP address and port number provided to log into ODA BUI
a. Go to https://<IP Address>:xxxx/mgmt/index.html (e.g. 7095)
Note if you run into BUI agent credential issue, please see Troubleshooting section
5
The first thing is to set a new password based on the required rules. For simplicity, you can
use something like “WELcome12##” or come up with your own unique password.
6
This is what you should see after logging into ODA.
Note: Make sure you have BOTH a command line window and a web browser open
for the lab exercises as some require command line input (odacli), and some require
entries in the web browser (BUI).
7
Simulator Labs Overview
Labs will use a mix of command line and web-based administration tools. On the BUI, if you
encounter any certificate warnings, simply accept them. Note in the output examples below,
the text you type is in bold, and the text output in the simulator is not.
Note some examples in the lab may show steps for a 2-node HA simulator, and if you are
running a single node simulator you can ignore the information for the second node.
Go to the command line window (odasim-1) to start the lab. If you are running a 2-node HA
simulator, go to the first node (e.g. oda-1-node0)
On a real ODA, after you first install the ODA into your data center rack, you must configure it
to use the IP address your network administrator has assigned it. The easiest way to do this
is to first configure ILOM via a network or serial connection. The ODA includes a command
called “odacli configure-firstnet” to make it very easy to get the ODA on the network. Once
you’ve put the ODA on the network, you can complete all the rest of the deployment steps
from any networked computer.
Run the network configuration command “odacli configure-firstnet” at the Linux prompt.
Respond to the prompts as in the example below. Since we are only simulating configuring
the network, you can use any IP address (e.g. 192.160.0.100) to complete this step.
8
# odacli configure-firstnet
bonding interface is:
Using bonding public interface (yes/no) [yes]:
Select the Interface to configure the network on () [btbond1]:
Configure DHCP on btbond1 (yes/no) [no]:
INFO: You have chosen Static configuration
Use VLAN on btbond1 (yes/no) [no]:
Enter the IP address to configure : 192.168.0.100
Enter the Netmask address to configure : 255.255.255.0
Enter the Gateway address to configure[192.168.0.1] :
INFO: Restarting the network
Shutting down interface : [ OK ]
Shutting down interface em1: [ OK ]
Shutting down interface p1p1: [ OK ]
Shutting down interface p1p2: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface : [ OK ]
Bringing up interface em1: [ OK ]
Bringing up interface p1p1: Determining if ip address 192.168.16.24 is already in use
for device p1p1... [ OK ]
Bringing up interface p1p2: Determining if ip address 192.168.17.24 is already in use
for device p1p2... [ OK ]
Bringing up interface btbond1: Determining if ip address 192.168.0.100 is already in
use for device btbond1... [ OK ]
INFO: Restarting the DCS agent
If this is an ODA X8-2-HA system, you’ll also need to run configure firstnet on the
second node (node-1). Log into node-1 and run the odacli configure-firstnet again.
You can use 192.168.0.101 for the IP address for node-1.
The ODA does not ship with the database software pre-loaded, due to regulatory concerns.
You must download the Oracle software prior to deployment from My Oracle Support. Go to
the ODA documentation web site, the ODA Patch section of the Release Note will provide links
to the ODA software. Specifically, we need to download the Grid Infrastructure Clone files, the
RDBMS Clone files, and the Server Patch Bundle. We’ve already downloaded simulated
versions of these files in the simulator.
For the labs you’ll first deploy the ODA with ODA 19.10 files, then in the third lab you’ll patch
the ODA and databases to the latest 19.11 release.
The clone files are listed below. The other file in the directory contain patches, and will be
used in the patching lab.
9
Note about file paths: you must specify the full path of the files you pass to the
“odacli update-repository” command.
Filename Description
odacli-dcs-19.10.0.0.0-210119-GI-19.10.0.0.zip Grid Infrastructure 19.10 Clone Files
odacli-dcs-19.10.0.0.0-210119-DB-19.10.0.0.zip DB 19.10 Clone Files
oda-sm-19.11.0.0.0-210420-server.zip ODA 19.11 Patch Bundle (used in lab 3)
odacli-dcs-19.11.0.0.0-210420-GI-19.11.0.0.zip Grid Infrastructure 19.11 Clone Files
(used in lab 3)
odacli-dcs-19.11.0.0.0-210420-DB-19.11.0.0.zip DB 19.11 Clone Files (used in lab 3)
You must update the ODA repository so ODA knows about the files. This is done with the
‘odacli update-repository’ command for each clone file (copy/paste is your friend).
Hint: to reduce amount of manual typing and typing errors, use copy and paste functions to
copy the file name or tab function to auto complete a file name. Also use the up arrow to
repeat the previous command, then edit the file name.
Note: on a real ODA you may have to update the DCS agent first before updating the
repositories. It is release dependent, so check the patching steps in the doc first.
Go to the command line window and entering the following odacli commands.
10
# odacli update-repository -f /opt/oracle/dcs/patchfiles/odacli-dcs-
19.10.0.0.0-210119-GI-19.10.0.0.zip
{
"jobId" : "33f703b6-d8b1-4812-9ea9-b89e631594ce",
"status" : "Running",
"message" : "/opt/oracle/dcs/patchfiles/odacli-dcs-19.10.0.0.0-210119-GI-
19.10.0.0.zip",
"reports" : [ ],
"createTimestamp" : "June 21, 2021 00:28:58 AM UTC",
"resourceList" : [ ],
"description" : "Repository Update",
"updatedTime" : "June 21, 2021 00:28:58 AM UTC"
}
When you run commands using the odacli command line tool, most operations are
asynchronous, meaning they return a job id immediately while the job runs in the background.
This means that in order to get information on long running background jobs, you can query
the status of the job.
At this point, the clone files are all loaded into the repository, so we are ready to deploy the
appliance and create a database.
You can also use the Browser-based User Interface (BUI) to update the ODA repository, by
pasting the complete file path of the patch file or even clone file in the patch bundle location
box of the patch manager in the web BUI. However, it’s not necessary as you have used
command line to update the repository (clone files) already.
11
Step 3: Deploy the Appliance
A customer can deploy the appliance using either the BUI or the command line. The
command line is useful for scripted and silent installations. Most customers (and this lab) will
use the BUI.
After you configured the firstnet and update the repository, go to the unique URL provided by
the instructor to log into ODA BUI (https://<IP Address>:xxxx/mgmt/index.html) using oda-
admin and previously created password (e.g. WELcome12##)
12
This will take you to the appliance tab of the ODA Appliance Manager. It should show that the
appliance has not been deployed as shown below:
Click “Create Appliance” to start the deployment wizard. Fill in the first page of the form as
shown below. Most fields should be self-explanatory. A possible exception is the Data Storage
Percentage. This will affect how much space is allocated for backups. By default, 80% is
allocated for data and 20% is allocated for archive logs. You can also specify a different
percentage. Select Diskgroup Redundancy “Flex”, then you will be able specify individual
database storage redundancy later, either Mirror (double mirroring) or High (triple mirroring).
Create a password. Be aware there is a password complexity test that will reject simple
passwords like “test” and other common variants. However, “WELcome12##” will work if
you’d like to use that password.
You can also load a configuration file (e.g. oda.json) that was saved previously to avoid
manual entries. To create a configuration file, you manually fill in all the information then click
“Save Configuration” at the end.
13
Scroll down to continue. This brings up the Network screen. You can configure the network
for the public “Client Access” network here. You can also configure the ILOM network if you
choose. Enter values for the IP Address, Subnet Mask, Gateway, and specify the interface to
be the public network.
Scroll down to continue. This brings up the Database screen. Specify the database name and
other database related information as shown below. Select DB Version 19.10.0.0.210119.
You can optionally configure ILOM network, customize users & groups, but we are skipping
these for this lab.
14
To configure ASR, specify credentials here. This is also where you can save the configuration
file (e.g. oda.json) for later use.
Click “Submit” to continue and click “yes” in the confirmation box. This will bring up a link to
the job status. Like with odacli, operations are asynchronous, and return immediately with a
job ID. That job ID can then be used to monitor progress. This allows the administrator to
perform other tasks if desired while the operations completes. Click the job ID to see the
status.
15
In the simulation, the deployment job status will complete within 1-2 minutes. You can see
the various steps running, and their status changing to ‘Success’ as they complete. Click the
Refresh button to more quickly refresh the screen. In a real ODA, deployment takes about 60-
90 minutes to complete.
16
Step 4: Validate the Deployment
Next click on the “Database” tab at the top right of the web page. This should show the
deployed database. The web pages refresh every few seconds, so if the database does not
show up at first, be patient. Click on the database name for more detail about the database.
Click on the “Database Home” link in the left-hand column (when viewing the “Database” tab)
to see information about the database home. Note this may take up to a minute to show, so
be patient.
You can also verify the appliance has been properly deployed by clicking the “Appliance” tab to
see more details. It should look similar to the view below (remember this is a simulation):
Step 5: Networking
You can check the network by click on the “Network” tab on the left.
17
You can also create a new VLAN by clicking the “Create Network” button and filled in the
network information below.
You now click on “Create” button, then submit the job. Below shows the backup VLAN has
been created.
18
This concludes Lab 1.
19
Lab 2: Manage Databases
In this lab, we will create and delete additional databases in the appliance. We can do this via
the command line (CLI) or BUI.
On the ODA BUI, click the database tab in the web page.
You should see the database db1 created during deployment. In the upper right-hand corner,
there is a “Create Database” button. Click it. It will bring up the “Create Database” Wizard.
Specify the DB Name like db2, and if you are creating a CDB, a PDB Name. Also remember to
scroll down and enter a password that would (in a real ODA) be used for SYS, SYSTEM, and
PDB Admin. When finished, click on the “Create” Button. Click “yes” to confirm. Beware of
the password complexity checker—“WELcome12##” will pass the test.
20
This will bring up a link to the job status. Like with odacli, operations are asynchronous, and
return immediately with a job ID. That job ID can then be used to monitor progress. This
allows the administrator to perform other tasks if desired while long running operations
complete. Click the job ID to see the status.
In the simulation, the job will complete within 30 seconds. You can see the various steps
running, and their status changing to ‘Success’ as they complete. Click the refresh button to
refresh the screen more quickly. In a real ODA, these steps take about 20 minutes to
complete.
21
Once the operation completes, click on the “Appliance” tab and then “Database” tab at the top
right of the web page. This should show the newly created database. The web pages refresh
every few seconds, so if the database does not show up at first, be patient.
See detailed database information by clicking on the database name (e.g. db2). You can also
view the newly create home by clicking on the “Database Home” link in the left-hand column
of the “Database” tab.
22
Step 2: Delete a Database
You can also delete a database from the “Database” tab. Click the “Appliance” tab and then
“Database Tab” if not at the view that lists databases. Click the “Action” dropdown to the
right of the db1 database, then select “Delete.” Click “yes” to confirm, and then close the
status box. The database list should reflect the deletion. Press “Refresh” if necessary.
You can also manage databases from the command line. Go to the command line window.
Use the odacli list-databases command to view your databases. Then use odacli describe-
database to see the details for a specific database. Be sure to use the database ID show in
the list-database command, not the ID shown in the example.
23
# odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ------------------
----------------------
cc9d7bc3-466c-4dae-86d3-12b033140a62 db2 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 9ee79a37-9368-
444b-b682-05262bdb4c47
There are many options you can specify when using the CLI to create a new database. Type
odacli create-database –h to see the options. Note only the database name is really required.
Create a new database and database home named ‘db3’ as follows. You will be prompted for
a password for SYS, SYSTEM, and PDB Admin. To meet password complexity requirements,
we suggest using WELcome12## for this lab.
24
# odacli create-database -h
Usage: create-database [options]
Options:
--associated-networks, -nn
Associated network names(in format networkName1,networkName2,...)
--backupconfigid, -bi
Backup Config ID
--backupconfigname, -bn
BackupConfig Name
Job details
----------------------------------------------------------------
ID: 430a336e-a964-45af-94ea-a960caf378d4
Description: Database service creation with db name: db3
Status: Created
Created: June 21, 2021 1:08:42 AM UTC
Message:
Job details
----------------------------------------------------------------
ID: 430a336e-a964-45af-94ea-a960caf378d4
Description: Database service creation with db name: db3
Status: Success
Created: June 21, 2021 1:08:42 AM UTC
Message:
In a real ODA, this command would run a job in the background for approximately 40 minutes.
As with the GUI, you can monitor the progress if you choose, but the Linux prompt returns
immediately. Because this is a simulation, you should see your new database and home
almost immediately. Verify creation of the new database using the odacli command:
25
# odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ------------------
----------------------
cc9d7bc3-466c-4dae-86d3-12b033140a62 db2 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 9ee79a37-9368-
444b-b682-05262bdb4c47
da18c417-7960-40dd-9f90-99d9c15c44d4 db3 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 60427a57-bbe3-
4849-a908-0286a182806f
You can also use CLI to delete a database. Run “odacli delete-database” to remove database
db2. Be sure to use the ID of your ‘db2’ database, which is likely different from the one in this
workbook. Note that you can also use the database name in lieu of the ID.
# odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ------------------
----------------------
da18c417-7960-40dd-9f90-99d9c15c44d4 db3 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 60427a57-bbe3-
4849-a908-0286a182806f
26
# odacli create-database -n db4 -v 19.10.0.0
Password for SYS,SYSTEM and PDB Admin:
Job details
----------------------------------------------------------------
ID: dc32bdf4-b707-4a4a-af88-bcc1a907d51e
Description: Database service creation with db name: db4
Status: Created
Created: June 21, 2021 1:14:48 AM UTC
Message:
# odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ------------------
----------------------
da18c417-7960-40dd-9f90-99d9c15c44d4 db3 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 60427a57-bbe3-
4849-a908-0286a182806f
edf5f170-5ab2-4679-b6f3-6e3228e291a9 db4 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 9b612237-ad17-
4c94-a354-34c7603b1fc1
[root@oda-1 patchfiles]#
You can create a CPU pool for a bare-metal database to improve CPU resource management
and quality of service for a database.
Click “CPU Pool” on the left, then click “Create a CPU Pool”
27
Specify the CPU Pool Name “cpupool1”, select CPU Pool Type “Bare Metal”, and Number of
CPU Cores “2”, then click “Create”
You can see CPU Pool cpupool1 has been created below.
28
Step 7: Delete a Database Home
You can delete a database home via BUI or the command line. We will use BUI to delete a
database home. Go to the Database tab, then click on the Database Home to see all the
database homes. Click on Actions, then click on Delete DB Home (for home1).
You can see the home1 database home has been deleted.
29
Step 8: Create Database Backup on local disk, external NFS storage or on the Oracle Cloud
Backing up and restoring Oracle databases in ODA is very simple. There are two simple steps
involved to create a database backup locally or on the Oracle Cloud. These can be done via
web GUI
To back up to an external NFS storage, you must create an NFS mount point first.
To back up to the Oracle Cloud, you must obtain and create Object Store credentials first.
There’s a default backup policy associated with the database, to create a new backup policy,
click on “Backup Policy” tab and then “Create Backup Policy”
30
Then name the Backup Policy (i.e. DiskBackup), Backup Destination (Internal FRA/Local Disk
or External FRA/External NFS Storage or Object Store/Oracle Cloud), and Recovery
Window in days, then click “Create”. To back a database to an external NFS storage, you
need to specify a mount point such as /u03/app/oracle/oradata/nfs_backup.
31
Next you select the database (i.e. db4) you want to backup. The db4 database has the
default backup policy, so we will need to modify the database first by clicking ”Modify” under
Actions. We will also assign a cpu pool to db4 at the same time.
Select “DiskBackup” as the Backup Policy and “cpupool1” as the cpu pool for db4, then click
“Modify”
Once the job is completed, you can verify the backup policy is listed under “Database
Information” of the database (i.e. db4). You can also see a cpu pool is assigned to db4. Once
this is done, ODA will start backing up the database to the disk regularly and produce backup
reports.
32
You can see the backup reports under the “Backups” heading below.
You can also click “Manual Backup”, then “Start” to back up a database manually.
33
You can see the details of the Backup Report by clicking on the Backup Report ID.
In addition to backing up to local disk, you can back up to the Oracle Cloud. To backup
databases in ODA to the Oracle Cloud, you must obtain Object Store credentials first. Once
that’s done, you can click “Object Store” tab, then “Create Object Store Credential”
34
Enter the required Object Store Credentials including the name. Once that’s done, then you
can create a backup policy, attached a database to the policy, and specify the Object Store as
the backup destination. ODA will then start backing up the database to the Oracle Cloud
regularly.
35
Lab 3: Patch and Update
If you just completed lab 2, the simulator should have two databases, db3 and db4.
You will use the CLI to update the repository and BUI to update the ODA infrastructure
including the server.
You will also use the web BUI to update a database home (update database 19.10 to 19.11)
and upgrade a database (from 18.13 to 19.11)
Starting with ODA Software 19.11, all patching are done out-of-place. The new GI home will
be placed on the local system/book drive, and all new database homes will be placed ACFS file
system on the data drive(s). In an ODA HA system, the database homes will be put on the
shared storage.
Note: on a real ODA you may have to update the DCS agent first before updating the
repositories. This is release dependent, so check the patching steps in the documentation
first.
Patches for ODA are posted in the Oracle Database Appliance Release Notes. There you will
find the links to the patches. You must update the repositories with the latest GI and
database, as well as additional applicable database clone files. For example, if you plan to
patch Oracle database from 19.10 to 19.11, you must update the repository with 19.11 GI and
database clone files first.
You also need to download the server patch file. The server patch will patch the firmware and
OS. You must patch the server before you patch the databases. When patching databases,
you can choose to patch a subset if required (although we recommend all databases be kept
current on patching). We have downloaded simulated 19.11.0.0.0 patches for the server, GI,
and databases (clone files) to your simulator.
Before you start patching the server, you can check the current installed components from the
web console. Go to Appliance tab, click on Patch Manager on the left and click the “Update
Server/Storage tab. Note all the installed 19.10.0.0 components. Since you have not updated
the repository to 19.11.0.0, everything is shown up to date.
36
The server patch is oda-sm-19.11.0.0.0-210420-server.zip. You may need to update the DCS
agent first (check the Patching section in the documentation)
You also need to update repository with the 19.11 GI and database clone files if you want to
create a 19.11 database.
Type the following to update the ODA repository with these patches. You must use the full
path for the file names
37
# odacli update-repository -f /opt/oracle/dcs/patchfiles/oda-sm-
19.11.0.0.0-210420-server.zip
{
"jobId" : "c03ef27e-c7dd-4e01-a0a1-d756359fedf3",
"status" : "Waiting",
"message" : "/opt/oracle/dcs/patchfiles/oda-sm-19.11.0.0.0-210420-server.zip",
"reports" : [ ],
"createTimestamp" : "June 23, 2021 17:39:19 PM UTC",
"resourceList" : [ ],
"description" : "Repository Update",
"updatedTime" : "June 23, 2021 17:39:20 PM UTC"
}
After you update the repository, you can use the web console to see the 19.11.0.0.0 available
component versions.
38
We recommend that you run the precheck for OS, ILOM, and GI before patching by click the
“Precheck” button. (Note simulator output maybe different)
The next step is to update the DCS Agent (on both nodes for an HA system) with the web
console before actually updating the server. The DCS Agent is the Oracle Database Appliance
software that provides the intelligence and automation. Select “Update Server” radio button,
select “Apply Patch”, then Submit, then click OK on Updating DCS Agent.
39
From the BUI, go to the Appliance tab, Patch Manager, Refresh button to verify that the DCS
Agent is up-to-date.
The next step is to update the server. This includes firmware, operating system, and GI
updates.
After the job is completed, you can refresh the browser to see that the node0 has all
19.11.0.0.0 components installed, and everything is up-to-date.
40
Patching a real ODA will take some time, the simulator speeds up the whole process. The
Linux prompt returns immediately and the patch runs in the background. You can monitor the
progress of the patch job by checking the Activity tab.
Because we may not want to patch all databases at once, we must first identify which
database home corresponds to which database.
To use the BUI to identify the database homes, go to the Database tab, and …
41
…click on the database name (e.g. db4) to identify the database home ID for patching.
42
Note either the Home ID, or the Home location. You will need this to patch the database by
pointing it to a home.
You can use either CLI ‘odacli update-dbhome’ command or BUI to update the database
homes, and thus the databases, running on the appliance. Each home is updated
independently, giving you control over when you patch your databases.
The ‘odacli list-databases’ command will list each database, its ID and its database home ID.
Those database homes will be the ones we will patch by supplying the database home ID to
the patching command. You can also see more information, such as the name of the
database home, using the ‘odacli list-dbhomes’ command.
# odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ -------------------
---------------------
da18c417-7960-40dd-9f90-99d9c15c44d4 db3 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 60427a57-bbe3-4849-
a908-0286a182806f
edf5f170-5ab2-4679-b6f3-6e3228e291a9 db4 SI 19.10.0.0.210119 false OLTP odb1 ASM CONFIGURED 9b612237-ad17-4c94-
a354-34c7603b1fc1
# odacli list-dbhomes
ID Name DB Version Home Location Status
---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------
155fbf2b-a1e0-46e5-bc53-7a3ef60887fd OraDB19000_home2 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_2 CONFIGURED
9ee79a37-9368-444b-b682-05262bdb4c47 OraDB19000_home3 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_3 CONFIGURED
60427a57-bbe3-4849-a908-0286a182806f OraDB19000_home4 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_4 CONFIGURED
9b612237-ad17-4c94-a354-34c7603b1fc1 OraDB19000_home5 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_5 CONFIGURED
Use the clipboard to copy the DB Home ID for db4. Then use that with the ‘odacli update-
dbhome’ command to update the home for db4. Verify the job has completed successfully
using ‘odacli describe-job’.
43
# odacli update-dbhome -i 9b612237-ad17-4c94-a354-34c7603b1fc1 -v
19.11.0.0.0
{
"jobId" : "fe0d6839-3b45-493b-9fbd-aa0d2217c0fd",
"status" : "Created",
"message" : null,
"reports" : [ ],
"createTimestamp" : "June 23, 2021 21:21:23 PM UTC",
"resourceList" : [ ],
"description" : "DB Home Patching: Home Id is 9b612237-ad17-4c94-a354-34c7603b1fc1",
"updatedTime" : "June 23, 2021 21:21:23 PM UTC"
}
Verify that the db4 database home has been updated to latest (210420) You can use either
the BUI or CLI (odacli list-dbhomes).
# odacli list-dbhomes
ID Name DB Version Home Location Status
---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------
155fbf2b-a1e0-46e5-bc53-7a3ef60887fd OraDB19000_home2 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_2
CONFIGURED
9ee79a37-9368-444b-b682-05262bdb4c47 OraDB19000_home3 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_3
CONFIGURED
60427a57-bbe3-4849-a908-0286a182806f OraDB19000_home4 19.10.0.0.210119 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_4
CONFIGURED
9b612237-ad17-4c94-a354-34c7603b1fc1 OraDB19000_home5 19.11.0.0.210420 /u01/app/odaorahomebase/oracle/product/19.0.0.0/dbhome_5
CONFIGURED
You can also use the GUI web console to update the database homes by clicking “Patch” on
the left panel, then select Apply in the Patch drop-down. We already updated the db4
database by pointing to a new home via command line already.
44
Step 5: Upgrading Database
To upgrade a database from 18.x to 19.x, we must first have an Oracle 18.x database.
We can create an Oracle 18.14 database (db5). Select “Create a Database”, then click “Next”
45
You can see an Oracle database 18.14 (db5) is created.
Now we will upgrade database db5 from 18.14 to 19.10 by click “Actions” button and select
“Upgrade.”
46
Then select a new database home (e.g. OraDB19000_home2). Database upgrade is also an
out-of-place operation, which means the database’s existing home is not touched.
Below you can see db5 has been upgraded from Oracle database 18.14 to 19.10
47
This concludes Lab 3.
48
Lab 4: Virtualization: Create Application and Database KVMs
Virtualization provides many benefits to customers such as cost savings through consolidation
and better resource utilization, Virtual Machine (VM) isolation that provides better security, and
KVM license hard partitioning support. Kernel-based VM (KVM) is an industry standard
virtualization technology that is also used in Oracle Cloud and other public clouds.
It’s easy to create a KVM in the ODA. You will use ODA BUI to create an application KVM
(called Compute Instance in ODA) and a database KVM (called Database System in ODA).
To create an application KVM in ODA, you first need to create the following:
CPU Pool
VM Storage
Virtual Disk
Virtual Network
You’ll also need a guest Operating System (Linux or Windows) ISO image to create the
application KVM instance. After that, you’ll need to configure the guest OS networking (set IP
address) so you can access the VM to install applications. You can also modify and delete an
application KVM.
You’ll first create a CPU Pool for the application KVM by selecting “CPU Pool” and click “Create
CPU Pool” and enter the following information, then click “Create”.
49
You can see the App1 CPU Pool has been created. A cpu pool is optional and not required to
create an application KVM.
Now you’ll create VM Storage by select the “VM Storage” tab, then click “Create VM Storage”.
Enter vmstorage1 information below, then click “Create”. VM Storage can be used by different
application KVMs.
50
You can see vmstorage1 has been created.
Now you’ll create a virtual disk (vdisk) to be used by the application KVM. Select the “Virtual
Disks” tab and click “Create Virtual Disk”.
51
Select “Create Virtual Disk”, then click “Next”
52
You can see vdisk1 has been created.
Now you’ll create a virtual network for the KVM. Select the “Virtual Networks” tab, then click
“Create Virtual Network”
53
Enter the Virtual Network information, then click “Create”
You’ll now create an application KVM (Compute Instance). Select “VM Instances” tab, click
“Create VM Instance”.
54
Select “Create VM Instance”, then click “Next”
Enter all the AppKVM1 information, then click “Create”. Note the “Source Installation” path to
the Linux ISO image. Also the 10GB VM disk size. VM disk is the local system boot disk where
the Linux image is installed.
55
You can see AppKVM1 instance has been created.
You can see the AppKVM1 detailed information by click on “AppKVM1”. Note there’s no CPU
Pool, Virtual Disk, and Virtual Networks information.
56
Now you’ll modify the VM instance by adding virtual disk and virtual network information to
the KVM.
On the “VM Instance” tab, for AppKVM1, click “Actions” dropdown and click “Modify”.
57
Now select “Preferred Node” oda0, select “Attach Virtual Disks” vdisk1, select “Attach Virtual
Network” vmnet1, then click “Modify”.
58
You can see the VM instance has been modified.
59
To delete an application KVM, go to “VM Instances” tab, click “Actions” dropdown, click
“Delete”.
60
Step 2: Create a Database KVM (Database System)
To create a database KVM (Database System) in ODA, you must first download the dbsystem
image (database VM template) into ODA, then run the update repository command so ODA
knows about the database VM template.
61
Select the “DB Systems” on the left and click “Create DB System”, then click “Create”.
62
Enter all the System Information, Network Information, CPU Pool and Database Information,
then click “Create”.
Note the database shape selected will determine the number of CPU cores assigned to the
database. A database CPU Pool will be automatically created or a database CPU Pool can be
selected. A default network will also be automatically assigned to the database or a network
can be selected.
63
You can see a database KVM dbsystem1 has been created. You can find dbsystem1 details by
clicking on it.
64
Now you can modify the DB System by click “Actions” and select “Modify”
65
You can change the database shape from odb2 (2 cores) to odb4 (4 cores).
Click DB Systems tab on the left to verify that dbsystem1 has 4 cores now.
66
Lab 5: Monitoring and Administration
It’s easy to monitor ODA hardware, storage, and feature usage through both command line
and web BUI. There’s also an Oracle Enterprise Manager (OEM) plug-in available for ODA
monitoring for customers who use OEM to monitor their IT infrastructure.
This lab will show only ODA monitoring with BUI and odacli.
The BUI shows ODA hardware status and tracks feature usage including High Water Marks.
67
Hardware Status
Storage
68
Hardware View
Currently the simulator is not showing Feature Tracking and High Water Marks properly.
Below are sample output.
Feature Tracking
69
High Water Marks
70
The Oracle Appliance Manager command line interfaces (odacli, odaadmcli) are tools that can
also be used to install, configure, and interrogate the status of ODA. They are free with the
Oracle Database Appliance to assist in the fast deployment and easy management of the
Oracle Database Appliance, and the fast deployment, patching and maintenance of Oracle.
Some basic odaadmcli commands to explore the ODA configuration are outlined in the
following sections.
Below are sample output. Please see ODA Documentation for details.
Show the server/node status, including ILOM IP address, firmware version, power
consumption, etc. This is helpful for an at-a-glance view of basic server/node information.
Power State : On
Open Problems : 0
Model : ODA X7-2-HA
Type : Rack Mount
Part Number : ODA X7-2-HA
Serial Number : 1750XD0003
Primary OS : Not Available
ILOM Address : 10.145.203.81
ILOM MAC Address : 00:10:E0:DA:CD:66
Description : Oracle Database Appliance X7-2 High Availability 1750XD0003
Locator Light : Off
Actual Power Consumption : 302 watts
Ambient Temperature : 20.250 degree C
Open Problems Report : System is healthy
odacli describe-system
71
$ sudo odacli describe-system
Appliance Information
----------------------------------------------------------------
ID: oda
Platform:
Data Disk Count: 9
CPU Core Count: 36
Created: July 19, 2019 8:25:14 PM GMT
System Information
----------------------------------------------------------------
Name: oda
Domain Name: example.com
Time Zone: GMT
DB Edition: EE
DNS Servers: 1.1.1.1
NTP Servers:
This command displays information about the cpus running in the system.
72
$ sudo odaadmcli show memory
NAME HEALTH HEALTH_DETAILS PART_NO. SERIAL_NO. LOCATION MANUFACTURER MEMORY_SIZE CURR_CLK_SPEED ECC_Errors
NAME HEALTH HEALTH_DETAILS PART_NO. SERIAL_NO. LOCATION INPUT_POWER OUTPUT_POWER INLET_TEMP EXHAUST_TEMP
Power_Supply_0 OK - 7333459 465824T+1647D30456 PS0 Present 135 watts 20 degrees C 42.500 degree C
Power_Supply_1 OK - 7333459 465824T+1647D30762 PS1 Present 146 watts 20 degrees C 51.500 degree C
This command is helpful for getting a view into the device mapping and current state of the
hard disks. The output lists the drives in the ODA X7-2-HA.
73
$ sudo odaadmcli show disk
NAME PATH TYPE STATE STATE_DETAILS
List ASM diskgroups that have been configured by Appliance Manager on the ODA’s storage.
DiskGroups
----------
DATA
FLASH
RECO
REDO
odaadmcli show fs
74
$ sudo odaadmcli show fs
Type Total Space Free Space Total DG Space Free DG Space Diskgroup Mount Point
ext3 30109M 25254M - - /
ext3 476M 405M - - /boot
ext3 60347M 22117M - - /opt
ext3 100665M 72839M - - /u01
acfs 5120M 4625M 112116480M 111977204M DATA /opt/oracle/dcs/commonstore
List the details on the ODA X8 file systems, including total Space, Free Space, Disk Group, etc.
Note: Due to a simulator bug, your output will look slightly different. The output
below is what you should really see.
75
$ sudo odaadmcli show storage
==== BEGIN STORAGE DUMP ========
Host Description: Oracle Corporation:ORACLE SERVER X7-2
Total number of controllers: 2
Id = 0
Serial Num = 500605b00d3e88c0
Vendor = LSI Logic
Model = ORCL-EXT-SAS3
FwVers = 13.00.00.00
strId = mpt3sas:3b:00.0
Id = 1
Serial Num = 500605b00d3e8450
Vendor = LSI Logic
Model = ORCL-EXT-SAS3
FwVers = 13.00.00.00
strId = mpt3sas:5e:00.0
Id = 1
Serial Num = 50800200022f163f
Vendor = ORACLE
Model = DE3-24C
FwVers = 0306
strId = Primary
WWN = 50800200022e447e
76
Show the MAC address, health status and temp of the network ports.
77
Troubleshooting
Restarting ODA Simulator in a Container. Note this for instructor led training environment
only.
If the odacli update-repository commands fails, you can check if the ODA Simulator is running
in the container.
To ensure that the ODA Simulator is running in the container, you can run the following status
command:
# /opt/oracle/dcs/bin/statusOdaStack.sh
78
BUI Agent Certificate Issue
You may run into a BUI agent certificate issue. See the example below.
79
You go through the certificate exception process but still get the following error message.
To fix it, you need to add a certificate exception to the BUI agent port, with is your assigned
port number -1. In this case, it’s 7097-1 or 7096.
80
Go through the certificate exception process and add the exception.
https://<server IP>:7097/mgmt/index.html
81
Go through the certificate exception process again and add the exception. Then you’ll be able
to access the BUI to create the Appliance.
82
Title and Copyright Information
F32288-01
This software and related documentation are provided under a license agreement containing restrictions
on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in
your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast,
modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by
any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law
for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-
free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing
it on behalf of the U.S. Government, then the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated
software, any programs embedded, installed or activated on delivered hardware, and modifications of
such programs) and Oracle computer documentation or other Oracle data delivered to or accessed by
U.S. Government end users are "commercial computer software" or “commercial computer software
documentation” pursuant to the applicable Federal Acquisition Regulation and agency-specific
supplemental regulations. As such, the use, reproduction, duplication, release, display, disclosure,
modification, preparation of derivative works, and/or adaptation of i) Oracle programs (including any
operating system, integrated software, any programs embedded, installed or activated on delivered
hardware, and modifications of such programs), ii) Oracle computer documentation and/or iii) other
Oracle data, is subject to the rights and limitations specified in the license contained in the applicable
contract. The terms governing the U.S. Government’s use of Oracle cloud services are defined by the
applicable contract for such services. No other rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management
applications. It is not developed or intended for use in any inherently dangerous applications, including
applications that may create a risk of personal injury. If you use this software or hardware in dangerous
applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and
other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any
damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks
of their respective owners.
Intel and Intel Inside are trademarks or registered trademarks of Intel Corporation. All SPARC
trademarks are used under license and are trademarks or registered trademarks of SPARC International,
83
Inc. AMD, Epyc, and the AMD logo are trademarks or registered trademarks of Advanced Micro
Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information about content,
products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and
expressly disclaim all warranties of any kind with respect to third-party content, products, and services
unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and
its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use
of third-party content, products, or services, except as set forth in an applicable agreement between you
and Oracle.
84