Quick and Easy Oracle Database 19c Build – A Git deployment

Here’s a quick and easy (not dirty) why to get Oracle Database 19c up and running.  Its based on a github repository.

Once you run the oracle_19c_install command, you will essentially have the following built out:

  1. All required Linux rpms installed and parameters set
  2. A 19c Oracle DB Home installed
  3. A 19c DB created with a single
  4. CDB will be opened and PDB started in left in OPEN MODE

Warning this is essentially my output listing…. hope its easy to follow along:

First ya need to have git installed, if you dont have it already

[root@git19c ~]# yum -y install git

Loaded plugins: langpacks, ulninfo

Resolving Dependencies

--> Running transaction check

---> Package git.x86_64 0:1.8.3.1-20.el7 will be installed

--> Processing Dependency: perl-Git = 1.8.3.1-20.el7 for package: git-1.8.3.1-20.el7.x86_64

--> Processing Dependency: perl(Term::ReadKey) for package: git-1.8.3.1-20.el7.x86_64

--> Processing Dependency: perl(Git) for package: git-1.8.3.1-20.el7.x86_64

--> Processing Dependency: perl(Error) for package: git-1.8.3.1-20.el7.x86_64

--> Running transaction check

---> Package perl-Error.noarch 1:0.17020-2.el7 will be installed

---> Package perl-Git.noarch 0:1.8.3.1-20.el7 will be installed

---> Package perl-TermReadKey.x86_64 0:2.30-20.el7 will be installed

--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================
Package                                       Arch                                Version                                      Repository                               Size
==============================================================================================================================================================================

Installing:

git                                           x86_64                              1.8.3.1-20.el7                               ol7_latest                              4.4 M

Installing for dependencies:

perl-Error                                    noarch                              1:0.17020-2.el7                              ol7_latest                               31 k

perl-Git                                      noarch                              1.8.3.1-20.el7                               ol7_latest                               55 k

perl-TermReadKey                              x86_64                              2.30-20.el7                                  ol7_latest                               30 k

Transaction Summary

=========================================================================================================================================================

Install  1 Package (+3 Dependent packages)

Total download size: 4.5 M

Installed size: 22 M

Downloading packages:

(1/4): perl-Error-0.17020-2.el7.noarch.rpm                                                                                                             |  31 kB  00:00:00     

(2/4): perl-Git-1.8.3.1-20.el7.noarch.rpm                                                                                                              |  55 kB  00:00:00     

(3/4): perl-TermReadKey-2.30-20.el7.x86_64.rpm                                                                                                         |  30 kB  00:00:00     

(4/4): git-1.8.3.1-20.el7.x86_64.rpm                                                                                                                   | 4.4 MB  00:00:00     

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total                                                                                                                                         7.5 MB/s | 4.5 MB  00:00:00     

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

  Installing : 1:perl-Error-0.17020-2.el7.noarch                                                                                                                          1/4

  Installing : perl-TermReadKey-2.30-20.el7.x86_64                                                                                                                        2/4

  Installing : git-1.8.3.1-20.el7.x86_64                                                                                                                                  3/4

  Installing : perl-Git-1.8.3.1-20.el7.noarch                                                                                                                             4/4

  Verifying  : perl-Git-1.8.3.1-20.el7.noarch                                                                                                                             1/4

  Verifying  : 1:perl-Error-0.17020-2.el7.noarch                                                                                                                          2/4

  Verifying  : git-1.8.3.1-20.el7.x86_64                                                                                                                                  3/4

  Verifying  : perl-TermReadKey-2.30-20.el7.x86_64                                                                                                                        4/4

Installed:

  git.x86_64 0:1.8.3.1-20.el7                                                                                                                                                 

Dependency Installed:

  perl-Error.noarch 1:0.17020-2.el7                       perl-Git.noarch 0:1.8.3.1-20.el7                       perl-TermReadKey.x86_64 0:2.30-20.el7                      

Complete!

[root@git19c ~]# git version

git version 1.8.3.1


Now lets get the database bits from git 
[root@git19c ~]# git clone https://github.com/dockerhelp/docker-oracle-ee-19c.git

Cloning into 'docker-oracle-ee-19c'...

remote: Enumerating objects: 12, done.

remote: Counting objects: 100% (12/12), done.

remote: Compressing objects: 100% (11/11), done.

remote: Total 12 (delta 0), reused 0 (delta 0), pack-reused 0

Unpacking objects: 100% (12/12), done.

[root@git19c ~]# ls -lrt .
total 0
drwxr-xr-x. 4 root root 68 Oct  6 22:57 docker-oracle-ee-19c

./docker-oracle-ee-19c:

drwxr-xr-x. 2 root root 4096 Oct  6 22:57 install

-rw-r--r--. 1 root root  412 Oct  6 22:57 Dockerfile

-rw-r--r--. 1 root root   23 Oct  6 22:57 README.md

./docker-oracle-ee-19c/install:

total 2240

-rw-r--r--. 1 root root     627 Oct  6 22:57 oracle-19c-ee.rsp

-rw-r--r--. 1 root root    3549 Oct  6 22:57 oracle_19c_install.sh

-rw-r--r--. 1 root root    1201 Oct  6 22:57 post_install.sh

-rw-r--r--. 1 root root     495 Oct  6 22:57 tns.sh

-rw-r--r--. 1 root root 2267480 Oct  6 22:57 gosu

-rw-r--r--. 1 root root     441 Oct  6 22:57 netca.rsp

-rw-r--r--. 1 root root     486 Oct  6 22:57 dbca_19c.rsp

Review the oracle_19c_install.sh file and make appropriate changes to reflect your 
environment that you want to build; eg, OHome location and DBname, etc..
[root@git19c install]# more oracle_19c_install.sh

#!/bin/bash

set -e

export INSTALL=$HOME/docker-oracle-ee-19c/install

echo `hostname -I|awk '{print $1}'` `hostname -s` `hostname` >> /etc/hosts

echo "Installing Dependencies"

yum install -y wget unzip binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 \

glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 \

libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 \

libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64 oracle-database-preinstall-19c && yum clean all

rm -rf /var/cache/yum

echo "Creating Directory"

rm -rf /u01

mkdir -p /u01 && mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1 && chown -R oracle:oinstall /u01 && chmod -R 775 /u01

touch /etc/oratab

chmod 777 /etc/oratab

chmod 755 $INSTALL/post_install.sh

echo "Setting ENV"

echo oracle:oracle | chpasswd

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1

export ORACLE_SID=ORCL19 >> /home/oracle/.bash_profile

export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 >> /home/oracle/.bash_profile

export PATH=$ORACLE_HOME/bin:$PATH >> /home/oracle/.bash_profile

#Download oracle database zip

echo "Downloading oracle database zip"

wget -q --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-c

ertificate 'https://docs.google.com/uc?export=download&id=1QinowHmGgiOCdj-OO20qaTQGHfYN2u6M' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1QinowHmGgiOCdj-OO20qaTQ

[root@git19c install]#  chmod u+x $HOME/docker-oracle-ee-19c/install/oracle_19c_install.sh

[root@git19c install]# sh oracle_19c_install.sh

Installing Dependencies

Loaded plugins: langpacks, ulninfo

ol7_UEKR5                                                                                                                                              | 2.8 kB  00:00:00     

ol7_addons                                                                                                                                             | 2.8 kB  00:00:00     

ol7_developer                                                                                                                                          | 2.8 kB  00:00:00     

ol7_developer_EPEL                                                                                                                                     | 3.4 kB  00:00:00     

ol7_ksplice                                                                                                                                            | 2.8 kB  00:00:00     

ol7_latest                                                                                                                                             | 3.4 kB  00:00:00     

ol7_oci_included                                                                                                                                       | 2.9 kB  00:00:00     

ol7_optional_latest                                                                                                                                    | 2.8 kB  00:00:00     

ol7_software_collections                                                                                                                               | 2.8 kB  00:00:00     

(1/19): ol7_addons/x86_64/updateinfo                                                                                                                   |  69 kB  00:00:00     

(2/19): ol7_UEKR5/x86_64/updateinfo                                                                                                                    |  13 kB  00:00:00     

(3/19): ol7_developer_EPEL/x86_64/group_gz                                                                                                             |  87 kB  00:00:00     

(4/19): ol7_developer/x86_64/primary_db                                                                                                                | 434 kB  00:00:00     

(5/19): ol7_addons/x86_64/primary_db                                                                                                                   | 129 kB  00:00:00     

(6/19): ol7_developer_EPEL/x86_64/updateinfo                                                                                                           | 4.9 kB  00:00:00     

(7/19): ol7_ksplice/primary_db                                                                                                                         | 187 kB  00:00:00     

(8/19): ol7_UEKR5/x86_64/primary_db                                                                                                                    | 2.5 MB  00:00:00     

(9/19): ol7_latest/x86_64/group_gz                                                                                                                     | 148 kB  00:00:00     

(10/19): ol7_developer/x86_64/updateinfo                                                                                                               |   71 B  00:00:00     

(11/19): ol7_latest/x86_64/updateinfo                                                                                                                  | 2.6 MB  00:00:00     

(12/19): ol7_developer_EPEL/x86_64/primary_db                                                                                                          |  11 MB  00:00:00     

(13/19): ol7_optional_latest/x86_64/updateinfo                                                                                                         | 853 kB  00:00:00     

(14/19): ol7_ksplice/updateinfo                                                                                                                        | 4.8 kB  00:00:00     

(15/19): ol7_oci_included/x86_64/primary_db                                                                                                            |  48 kB  00:00:00     

(16/19): ol7_latest/x86_64/primary_db                                                                                                                  |  15 MB  00:00:00     

(17/19): ol7_software_collections/x86_64/updateinfo                                                                                                    | 8.7 kB  00:00:00     

(18/19): ol7_optional_latest/x86_64/primary_db                                                                                                         | 4.0 MB  00:00:00     

(19/19): ol7_software_collections/x86_64/primary_db                                                                                                    | 4.7 MB  00:00:00     

Package wget-1.14-18.el7_6.1.x86_64 already installed and latest version

Package unzip-6.0-20.el7.x86_64 already installed and latest version

Package binutils-2.27-41.base.0.1.el7.x86_64 already installed and latest version

Package glibc-2.17-292.0.1.el7.x86_64 already installed and latest version

Package libaio-0.3.109-13.el7.x86_64 already installed and latest version

Package libgcc-4.8.5-39.0.1.el7.x86_64 already installed and latest version

Package libstdc++-4.8.5-39.0.1.el7.x86_64 already installed and latest version

Package 1:make-3.82-24.el7.x86_64 already installed and latest version

Package sysstat-10.1.5-18.el7.x86_64 already installed and latest version

Resolving Dependencies

--> Running transaction check

---> Package compat-libcap1.x86_64 0:1.10-7.el7 will be installed

---> Package compat-libstdc++-33.x86_64 0:3.2.3-72.el7 will be installed

---> Package gcc.x86_64 0:4.8.5-39.0.1.el7 will be installed

--> Processing Dependency: cpp = 4.8.5-39.0.1.el7 for package: gcc-4.8.5-39.0.1.el7.x86_64

--> Processing Dependency: libmpfr.so.4()(64bit) for package: gcc-4.8.5-39.0.1.el7.x86_64

--> Processing Dependency: libmpc.so.3()(64bit) for package: gcc-4.8.5-39.0.1.el7.x86_64

---> Package gcc-c++.x86_64 0:4.8.5-39.0.1.el7 will be installed

---> Package glibc.i686 0:2.17-292.0.1.el7 will be installed

--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.17-292.0.1.el7.i686

--> Processing Dependency: libfreebl3.so for package: glibc-2.17-292.0.1.el7.i686

---> Package glibc-devel.i686 0:2.17-292.0.1.el7 will be installed

--> Processing Dependency: glibc-headers = 2.17-292.0.1.el7 for package: glibc-devel-2.17-292.0.1.el7.i686

--> Processing Dependency: glibc-headers for package: glibc-devel-2.17-292.0.1.el7.i686

---> Package glibc-devel.x86_64 0:2.17-292.0.1.el7 will be installed

---> Package ksh.x86_64 0:20120801-139.0.1.el7 will be installed

---> Package libXi.i686 0:1.7.9-1.el7 will be installed

--> Processing Dependency: libX11 >= 1.5.99.902 for package: libXi-1.7.9-1.el7.i686

--> Processing Dependency: libXext.so.6 for package: libXi-1.7.9-1.el7.i686

--> Processing Dependency: libX11.so.6 for package: libXi-1.7.9-1.el7.i686

---> Package libXi.x86_64 0:1.7.9-1.el7 will be installed

--> Processing Dependency: libXext.so.6()(64bit) for package: libXi-1.7.9-1.el7.x86_64

---> Package libXtst.i686 0:1.2.3-1.el7 will be installed

---> Package libXtst.x86_64 0:1.2.3-1.el7 will be installed

---> Package libaio.i686 0:0.3.109-13.el7 will be installed

---> Package libaio-devel.i686 0:0.3.109-13.el7 will be installed

---> Package libaio-devel.x86_64 0:0.3.109-13.el7 will be installed

---> Package libgcc.i686 0:4.8.5-39.0.1.el7 will be installed

---> Package libstdc++.i686 0:4.8.5-39.0.1.el7 will be installed

---> Package libstdc++-devel.i686 0:4.8.5-39.0.1.el7 will be installed

---> Package libstdc++-devel.x86_64 0:4.8.5-39.0.1.el7 will be installed

---> Package oracle-database-preinstall-19c.x86_64 0:1.0-1.el7 will be installed

--> Processing Dependency: xorg-x11-xauth for package: oracle-database-preinstall-19c-1.0-1.el7.x86_64

--> Processing Dependency: xorg-x11-utils for package: oracle-database-preinstall-19c-1.0-1.el7.x86_64

--> Processing Dependency: psmisc for package: oracle-database-preinstall-19c-1.0-1.el7.x86_64

--> Running transaction check

---> Package cpp.x86_64 0:4.8.5-39.0.1.el7 will be installed

---> Package glibc-headers.x86_64 0:2.17-292.0.1.el7 will be installed

--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.17-292.0.1.el7.x86_64

--> Processing Dependency: kernel-headers for package: glibc-headers-2.17-292.0.1.el7.x86_64

---> Package libX11.i686 0:1.6.7-2.el7 will be installed

--> Processing Dependency: libX11-common >= 1.6.7-2.el7 for package: libX11-1.6.7-2.el7.i686

--> Processing Dependency: libxcb.so.1 for package: libX11-1.6.7-2.el7.i686

---> Package libX11.x86_64 0:1.6.7-2.el7 will be installed

--> Processing Dependency: libxcb.so.1()(64bit) for package: libX11-1.6.7-2.el7.x86_64

---> Package libXext.i686 0:1.3.3-3.el7 will be installed

---> Package libXext.x86_64 0:1.3.3-3.el7 will be installed

---> Package libmpc.x86_64 0:1.0.1-3.el7 will be installed

---> Package mpfr.x86_64 0:3.1.1-4.el7 will be installed

---> Package nss-softokn-freebl.i686 0:3.44.0-5.0.1.el7 will be installed

---> Package psmisc.x86_64 0:22.20-16.el7 will be installed

---> Package xorg-x11-utils.x86_64 0:7.5-23.el7 will be installed

--> Processing Dependency: libdmx.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXxf86vm.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXxf86misc.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXxf86dga.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXv.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXrender.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXrandr.so.2()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

--> Processing Dependency: libXinerama.so.1()(64bit) for package: xorg-x11-utils-7.5-23.el7.x86_64

---> Package xorg-x11-xauth.x86_64 1:1.0.9-1.el7 will be installed

--> Processing Dependency: libXmuu.so.1()(64bit) for package: 1:xorg-x11-xauth-1.0.9-1.el7.x86_64

--> Processing Dependency: libXau.so.6()(64bit) for package: 1:xorg-x11-xauth-1.0.9-1.el7.x86_64

--> Running transaction check

---> Package kernel-headers.x86_64 0:3.10.0-1062.1.2.el7 will be installed

---> Package libX11-common.noarch 0:1.6.7-2.el7 will be installed

---> Package libXau.x86_64 0:1.0.8-2.1.el7 will be installed

---> Package libXinerama.x86_64 0:1.1.3-2.1.el7 will be installed

---> Package libXmu.x86_64 0:1.1.2-2.el7 will be installed

--> Processing Dependency: libXt.so.6()(64bit) for package: libXmu-1.1.2-2.el7.x86_64

---> Package libXrandr.x86_64 0:1.5.1-2.el7 will be installed

---> Package libXrender.x86_64 0:0.9.10-1.el7 will be installed

---> Package libXv.x86_64 0:1.0.11-1.el7 will be installed

---> Package libXxf86dga.x86_64 0:1.1.4-2.1.el7 will be installed

---> Package libXxf86misc.x86_64 0:1.0.3-7.1.el7 will be installed

---> Package libXxf86vm.x86_64 0:1.1.4-1.el7 will be installed

---> Package libdmx.x86_64 0:1.1.3-3.el7 will be installed

---> Package libxcb.i686 0:1.13-1.el7 will be installed

--> Processing Dependency: libXau.so.6 for package: libxcb-1.13-1.el7.i686

---> Package libxcb.x86_64 0:1.13-1.el7 will be installed

--> Running transaction check

---> Package libXau.i686 0:1.0.8-2.1.el7 will be installed

---> Package libXt.x86_64 0:1.1.5-3.el7 will be installed

--> Processing Dependency: libSM.so.6()(64bit) for package: libXt-1.1.5-3.el7.x86_64

--> Processing Dependency: libICE.so.6()(64bit) for package: libXt-1.1.5-3.el7.x86_64

--> Running transaction check

---> Package libICE.x86_64 0:1.0.9-9.el7 will be installed

---> Package libSM.x86_64 0:1.2.2-2.el7 will be installed

--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================================================================
Package                                                Arch                           Version                                       Repository                          Size
=========================================================================================================================================================
Installing:
compat-libcap1                                         x86_64                         1.10-7.el7                                    ol7_latest                          17 k
compat-libstdc++-33                                    x86_64                         3.2.3-72.el7                                  ol7_latest                         190 k
gcc                                                    x86_64                         4.8.5-39.0.1.el7                              ol7_latest                          16 M
gcc-c++                                                x86_64                         4.8.5-39.0.1.el7                              ol7_latest                         7.2 M
glibc                                                  i686                           2.17-292.0.1.el7                              ol7_latest                         4.3 M
glibc-devel                                            i686                           2.17-292.0.1.el7                              ol7_latest                         1.1 M
glibc-devel                                            x86_64                         2.17-292.0.1.el7                              ol7_latest                         1.1 M
ksh                                                    x86_64                         20120801-139.0.1.el7                          ol7_latest                         883 k
libXi                                                  i686                           1.7.9-1.el7                                   ol7_latest                          40 k
libXi                                                  x86_64                         1.7.9-1.el7                                   ol7_latest                          40 k
libXtst                                                i686                           1.2.3-1.el7                                   ol7_latest                          20 k
libXtst                                                x86_64                         1.2.3-1.el7                                   ol7_latest                          20 k
libaio                                                 i686                           0.3.109-13.el7                                ol7_latest                          24 k
libaio-devel                                           i686                           0.3.109-13.el7                                ol7_latest                          12 k
libaio-devel                                           x86_64                         0.3.109-13.el7                                ol7_latest                          12 k
libgcc                                                 i686                           4.8.5-39.0.1.el7                              ol7_latest                         110 k
libstdc++                                              i686                           4.8.5-39.0.1.el7                              ol7_latest                         318 k
libstdc++-devel                                        i686                           4.8.5-39.0.1.el7                              ol7_latest                         1.5 M
libstdc++-devel                                        x86_64                         4.8.5-39.0.1.el7                              ol7_latest                         1.5 M

oracle-database-preinstall-19c                         x86_64                         1.0-1.el7                                     ol7_latest                          18 k

Installing for dependencies:

cpp                                                    x86_64                         4.8.5-39.0.1.el7                              ol7_latest                         6.0 M

glibc-headers                                          x86_64                         2.17-292.0.1.el7                              ol7_latest                         689 k

kernel-headers                                         x86_64                         3.10.0-1062.1.2.el7                           ol7_latest                         8.7 M

libICE                                                 x86_64                         1.0.9-9.el7                                   ol7_latest                          66 k

libSM                                                  x86_64                         1.2.2-2.el7                                   ol7_latest                          39 k

libX11                                                 i686                           1.6.7-2.el7                                   ol7_latest                         610 k

libX11                                                 x86_64                         1.6.7-2.el7                                   ol7_latest                         606 k

libX11-common                                          noarch                         1.6.7-2.el7                                   ol7_latest                         164 k

libXau                                                 i686                           1.0.8-2.1.el7                                 ol7_latest                          28 k

libXau                                                 x86_64                         1.0.8-2.1.el7                                 ol7_latest                          28 k

libXext                                                i686                           1.3.3-3.el7                                   ol7_latest                          38 k

libXext                                                x86_64                         1.3.3-3.el7                                   ol7_latest                          38 k

libXinerama                                            x86_64                         1.1.3-2.1.el7                                 ol7_latest                          13 k

libXmu                                                 x86_64                         1.1.2-2.el7                                   ol7_latest                          70 k

libXrandr                                              x86_64                         1.5.1-2.el7                                   ol7_latest                          27 k

libXrender                                             x86_64                         0.9.10-1.el7                                  ol7_latest                          25 k

libXt                                                  x86_64                         1.1.5-3.el7                                   ol7_latest                         172 k

libXv                                                  x86_64                         1.0.11-1.el7                                  ol7_latest                          18 k

libXxf86dga                                            x86_64                         1.1.4-2.1.el7                                 ol7_latest                          18 k

libXxf86misc                                           x86_64                         1.0.3-7.1.el7                                 ol7_latest                          19 k

libXxf86vm                                             x86_64                         1.1.4-1.el7                                   ol7_latest                          17 k

libdmx                                                 x86_64                         1.1.3-3.el7                                   ol7_latest                          15 k

libmpc                                                 x86_64                         1.0.1-3.el7                                   ol7_latest                          49 k

libxcb                                                 i686                           1.13-1.el7                                    ol7_latest                         229 k

libxcb                                                 x86_64                         1.13-1.el7                                    ol7_latest                         213 k

mpfr                                                   x86_64                         3.1.1-4.el7                                   ol7_latest                         198 k

nss-softokn-freebl                                     i686                           3.44.0-5.0.1.el7                              ol7_latest                         214 k

psmisc                                                 x86_64                         22.20-16.el7                                  ol7_latest                         141 k

xorg-x11-utils                                         x86_64                         7.5-23.el7                                    ol7_latest                         114 k

xorg-x11-xauth                                         x86_64                         1:1.0.9-1.el7                                 ol7_latest                          29 k

Transaction Summary

=========================================================================================================================================================
Install  20 Packages (+30 Dependent packages)
Total download size: 53 M

Installed size: 121 M

Downloading packages:

(1/50): compat-libcap1-1.10-7.el7.x86_64.rpm                                                                                                           |  17 kB  00:00:00     

(2/50): compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm                                                                                                    | 190 kB  00:00:00     

(3/50): cpp-4.8.5-39.0.1.el7.x86_64.rpm                                                                                                                | 6.0 MB  00:00:00     

(4/50): gcc-c++-4.8.5-39.0.1.el7.x86_64.rpm                                                                                                            | 7.2 MB  00:00:00     

(5/50): gcc-4.8.5-39.0.1.el7.x86_64.rpm                                                                                                                |  16 MB  00:00:00     

(6/50): glibc-2.17-292.0.1.el7.i686.rpm                                                                                                                | 4.3 MB  00:00:00     

(7/50): glibc-devel-2.17-292.0.1.el7.i686.rpm                                                                                                          | 1.1 MB  00:00:00     

(8/50): glibc-devel-2.17-292.0.1.el7.x86_64.rpm                                                                                                        | 1.1 MB  00:00:00     

(9/50): glibc-headers-2.17-292.0.1.el7.x86_64.rpm                                                                                                      | 689 kB  00:00:00     

(10/50): ksh-20120801-139.0.1.el7.x86_64.rpm                                                                                                           | 883 kB  00:00:00     

(11/50): libICE-1.0.9-9.el7.x86_64.rpm                                                                                                                 |  66 kB  00:00:00     

(12/50): libSM-1.2.2-2.el7.x86_64.rpm                                                                                                                  |  39 kB  00:00:00     

(13/50): libX11-1.6.7-2.el7.i686.rpm                                                                                                                   | 610 kB  00:00:00     

(14/50): libX11-1.6.7-2.el7.x86_64.rpm                                                                                                                 | 606 kB  00:00:00     

(15/50): libX11-common-1.6.7-2.el7.noarch.rpm                                                                                                          | 164 kB  00:00:00     

(16/50): libXau-1.0.8-2.1.el7.i686.rpm                                                                                                                 |  28 kB  00:00:00     

(17/50): libXau-1.0.8-2.1.el7.x86_64.rpm                                                                                                               |  28 kB  00:00:00     

(18/50): kernel-headers-3.10.0-1062.1.2.el7.x86_64.rpm                                                                                                 | 8.7 MB  00:00:00     

(19/50): libXext-1.3.3-3.el7.i686.rpm                                                                                                                  |  38 kB  00:00:00     

(20/50): libXext-1.3.3-3.el7.x86_64.rpm                                                                                                                |  38 kB  00:00:00     

(21/50): libXi-1.7.9-1.el7.i686.rpm                                                                                                                    |  40 kB  00:00:00     

(22/50): libXi-1.7.9-1.el7.x86_64.rpm                                                                                                                  |  40 kB  00:00:00     

(23/50): libXinerama-1.1.3-2.1.el7.x86_64.rpm                                                                                                          |  13 kB  00:00:00     

(24/50): libXmu-1.1.2-2.el7.x86_64.rpm                                                                                                                 |  70 kB  00:00:00     

(25/50): libXrandr-1.5.1-2.el7.x86_64.rpm                                                                                                              |  27 kB  00:00:00     

(26/50): libXrender-0.9.10-1.el7.x86_64.rpm                                                                                                            |  25 kB  00:00:00     

(27/50): libXt-1.1.5-3.el7.x86_64.rpm                                                                                                                  | 172 kB  00:00:00     

(28/50): libXtst-1.2.3-1.el7.i686.rpm                                                                                                                  |  20 kB  00:00:00     

(29/50): libXtst-1.2.3-1.el7.x86_64.rpm                                                                                                                |  20 kB  00:00:00     

(30/50): libXv-1.0.11-1.el7.x86_64.rpm                                                                                                                 |  18 kB  00:00:00     

(31/50): libXxf86dga-1.1.4-2.1.el7.x86_64.rpm                                                                                                          |  18 kB  00:00:00     

(32/50): libXxf86misc-1.0.3-7.1.el7.x86_64.rpm                                                                                                         |  19 kB  00:00:00     

(33/50): libXxf86vm-1.1.4-1.el7.x86_64.rpm                                                                                                             |  17 kB  00:00:00     

(34/50): libaio-0.3.109-13.el7.i686.rpm                                                                                                                |  24 kB  00:00:00     

(35/50): libaio-devel-0.3.109-13.el7.i686.rpm                                                                                                          |  12 kB  00:00:00     

(36/50): libaio-devel-0.3.109-13.el7.x86_64.rpm                                                                                                        |  12 kB  00:00:00     

(37/50): libdmx-1.1.3-3.el7.x86_64.rpm                                                                                                                 |  15 kB  00:00:00     

(38/50): libgcc-4.8.5-39.0.1.el7.i686.rpm                                                                                                              | 110 kB  00:00:00     

(39/50): libmpc-1.0.1-3.el7.x86_64.rpm                                                                                                                 |  49 kB  00:00:00     

(40/50): libstdc++-4.8.5-39.0.1.el7.i686.rpm                                                                                                           | 318 kB  00:00:00     

(41/50): libstdc++-devel-4.8.5-39.0.1.el7.i686.rpm                                                                                                     | 1.5 MB  00:00:00     

(42/50): libstdc++-devel-4.8.5-39.0.1.el7.x86_64.rpm                                                                                                   | 1.5 MB  00:00:00     

(43/50): libxcb-1.13-1.el7.i686.rpm                                                                                                                    | 229 kB  00:00:00     

(44/50): libxcb-1.13-1.el7.x86_64.rpm                                                                                                                  | 213 kB  00:00:00     

(45/50): mpfr-3.1.1-4.el7.x86_64.rpm                                                                                                                   | 198 kB  00:00:00     

(46/50): nss-softokn-freebl-3.44.0-5.0.1.el7.i686.rpm                                                                                                  | 214 kB  00:00:00     

(47/50): oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm                                                                                           |  18 kB  00:00:00     

(48/50): psmisc-22.20-16.el7.x86_64.rpm                                                                                                                | 141 kB  00:00:00     

(49/50): xorg-x11-utils-7.5-23.el7.x86_64.rpm                                                                                                          | 114 kB  00:00:00     

(50/50): xorg-x11-xauth-1.0.9-1.el7.x86_64.rpm                                                                                                         |  29 kB  00:00:00     

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total                                                                                                                                         133 MB/s |  53 MB  00:00:00     

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

  Installing : libX11-common-1.6.7-2.el7.noarch                                                                                                                          1/50

  Installing : kernel-headers-3.10.0-1062.1.2.el7.x86_64                                                                                                                 2/50

  Installing : libaio-devel-0.3.109-13.el7.x86_64                                                                                                                        3/50

  Installing : libstdc++-devel-4.8.5-39.0.1.el7.x86_64                                                                                                                   4/50

  Installing : libgcc-4.8.5-39.0.1.el7.i686                                                                                                                              5/50

  Installing : glibc-2.17-292.0.1.el7.i686                                                                                                                               6/50

  Installing : nss-softokn-freebl-3.44.0-5.0.1.el7.i686                                                                                                                  7/50

  Installing : mpfr-3.1.1-4.el7.x86_64                                                                                                                                   8/50

  Installing : libmpc-1.0.1-3.el7.x86_64                                                                                                                                 9/50

  Installing : libICE-1.0.9-9.el7.x86_64                                                                                                                                10/50

  Installing : glibc-headers-2.17-292.0.1.el7.x86_64                                                                                                                    11/50

  Installing : glibc-devel-2.17-292.0.1.el7.x86_64                                                                                                                      12/50

  Installing : libXau-1.0.8-2.1.el7.x86_64                                                                                                                              13/50

  Installing : libxcb-1.13-1.el7.x86_64                                                                                                                                 14/50

  Installing : libX11-1.6.7-2.el7.x86_64                                                                                                                                15/50

  Installing : libXext-1.3.3-3.el7.x86_64                                                                                                                               16/50

  Installing : libXi-1.7.9-1.el7.x86_64                                                                                                                                 17/50

  Installing : libXrender-0.9.10-1.el7.x86_64                                                                                                                           18/50

  Installing : libXrandr-1.5.1-2.el7.x86_64                                                                                                                             19/50

  Installing : libXtst-1.2.3-1.el7.x86_64                                                                                                                               20/50

  Installing : libdmx-1.1.3-3.el7.x86_64                                                                                                                                21/50

  Installing : libXinerama-1.1.3-2.1.el7.x86_64                                                                                                                         22/50

  Installing : libXv-1.0.11-1.el7.x86_64                                                                                                                                23/50

  Installing : libXxf86vm-1.1.4-1.el7.x86_64                                                                                                                            24/50

  Installing : libXxf86misc-1.0.3-7.1.el7.x86_64                                                                                                                        25/50

  Installing : libXxf86dga-1.1.4-2.1.el7.x86_64                                                                                                                         26/50

  Installing : xorg-x11-utils-7.5-23.el7.x86_64                                                                                                                         27/50

  Installing : libSM-1.2.2-2.el7.x86_64                                                                                                                                 28/50

  Installing : libXt-1.1.5-3.el7.x86_64                                                                                                                                 29/50

  Installing : libXmu-1.1.2-2.el7.x86_64                                                                                                                                30/50

  Installing : 1:xorg-x11-xauth-1.0.9-1.el7.x86_64                                                                                                                      31/50

  Installing : cpp-4.8.5-39.0.1.el7.x86_64                                                                                                                              32/50

  Installing : gcc-4.8.5-39.0.1.el7.x86_64                                                                                                                              33/50

  Installing : psmisc-22.20-16.el7.x86_64                                                                                                                               34/50

  Installing : compat-libcap1-1.10-7.el7.x86_64                                                                                                                         35/50

  Installing : ksh-20120801-139.0.1.el7.x86_64                                                                                                                          36/50

  Installing : compat-libstdc++-33-3.2.3-72.el7.x86_64                                                                                                                  37/50

  Installing : libstdc++-4.8.5-39.0.1.el7.i686                                                                                                                          38/50

  Installing : libstdc++-devel-4.8.5-39.0.1.el7.i686                                                                                                                    39/50

  Installing : libaio-0.3.109-13.el7.i686                                                                                                                               40/50

  Installing : libaio-devel-0.3.109-13.el7.i686                                                                                                                         41/50

  Installing : libXau-1.0.8-2.1.el7.i686                                                                                                                                42/50

  Installing : oracle-database-preinstall-19c-1.0-1.el7.x86_64                                                                                                          43/50

  Installing : gcc-c++-4.8.5-39.0.1.el7.x86_64                                                                                                                          44/50

  Installing : glibc-devel-2.17-292.0.1.el7.i686                                                                                                                        45/50

  Installing : libxcb-1.13-1.el7.i686                                                                                                                                   46/50

  Installing : libX11-1.6.7-2.el7.i686                                                                                                                                  47/50

  Installing : libXext-1.3.3-3.el7.i686                                                                                                                                 48/50

  Installing : libXi-1.7.9-1.el7.i686                                                                                                                                   49/50

  Installing : libXtst-1.2.3-1.el7.i686                                                                                                                                 50/50

  Verifying  : libXext-1.3.3-3.el7.x86_64                                                                                                                                1/50

  Verifying  : libXi-1.7.9-1.el7.x86_64                                                                                                                                  2/50

  Verifying  : libdmx-1.1.3-3.el7.x86_64                                                                                                                                 3/50

  Verifying  : libICE-1.0.9-9.el7.x86_64                                                                                                                                 4/50

  Verifying  : libaio-devel-0.3.109-13.el7.i686                                                                                                                          5/50

  Verifying  : libXinerama-1.1.3-2.1.el7.x86_64                                                                                                                          6/50

  Verifying  : libXrender-0.9.10-1.el7.x86_64                                                                                                                            7/50

  Verifying  : libXv-1.0.11-1.el7.x86_64                                                                                                                                 8/50

  Verifying  : libXext-1.3.3-3.el7.i686                                                                                                                                  9/50

  Verifying  : cpp-4.8.5-39.0.1.el7.x86_64                                                                                                                              10/50

  Verifying  : libXxf86vm-1.1.4-1.el7.x86_64                                                                                                                            11/50

  Verifying  : libXt-1.1.5-3.el7.x86_64                                                                                                                                 12/50

  Verifying  : libstdc++-devel-4.8.5-39.0.1.el7.i686                                                                                                                    13/50

  Verifying  : libxcb-1.13-1.el7.i686                                                                                                                                   14/50

  Verifying  : libstdc++-devel-4.8.5-39.0.1.el7.x86_64                                                                                                                  15/50

  Verifying  : libXi-1.7.9-1.el7.i686                                                                                                                                   16/50

  Verifying  : glibc-devel-2.17-292.0.1.el7.x86_64                                                                                                                      17/50

  Verifying  : xorg-x11-utils-7.5-23.el7.x86_64                                                                                                                         18/50

  Verifying  : libXau-1.0.8-2.1.el7.i686                                                                                                                                19/50

  Verifying  : libXtst-1.2.3-1.el7.x86_64                                                                                                                               20/50

  Verifying  : oracle-database-preinstall-19c-1.0-1.el7.x86_64                                                                                                          21/50

  Verifying  : libaio-0.3.109-13.el7.i686                                                                                                                               22/50

  Verifying  : libX11-1.6.7-2.el7.i686                                                                                                                                  23/50

  Verifying  : libX11-1.6.7-2.el7.x86_64                                                                                                                                24/50

  Verifying  : libXxf86misc-1.0.3-7.1.el7.x86_64                                                                                                                        25/50

  Verifying  : psmisc-22.20-16.el7.x86_64                                                                                                                               26/50

  Verifying  : libX11-common-1.6.7-2.el7.noarch                                                                                                                         27/50

  Verifying  : libXtst-1.2.3-1.el7.i686                                                                                                                                 28/50

  Verifying  : libxcb-1.13-1.el7.x86_64                                                                                                                                 29/50

  Verifying  : glibc-headers-2.17-292.0.1.el7.x86_64                                                                                                                    30/50

  Verifying  : nss-softokn-freebl-3.44.0-5.0.1.el7.i686                                                                                                                 31/50

  Verifying  : compat-libcap1-1.10-7.el7.x86_64                                                                                                                         32/50

  Verifying  : glibc-devel-2.17-292.0.1.el7.i686                                                                                                                        33/50

  Verifying  : libaio-devel-0.3.109-13.el7.x86_64                                                                                                                       34/50

  Verifying  : libmpc-1.0.1-3.el7.x86_64                                                                                                                                35/50

  Verifying  : 1:xorg-x11-xauth-1.0.9-1.el7.x86_64                                                                                                                      36/50

  Verifying  : glibc-2.17-292.0.1.el7.i686                                                                                                                              37/50

  Verifying  : ksh-20120801-139.0.1.el7.x86_64                                                                                                                          38/50

  Verifying  : gcc-c++-4.8.5-39.0.1.el7.x86_64                                                                                                                          39/50

  Verifying  : libstdc++-4.8.5-39.0.1.el7.i686                                                                                                                          40/50

  Verifying  : libSM-1.2.2-2.el7.x86_64                                                                                                                                 41/50

  Verifying  : libXxf86dga-1.1.4-2.1.el7.x86_64                                                                                                                         42/50

  Verifying  : mpfr-3.1.1-4.el7.x86_64                                                                                                                                  43/50

  Verifying  : compat-libstdc++-33-3.2.3-72.el7.x86_64                                                                                                                  44/50

  Verifying  : gcc-4.8.5-39.0.1.el7.x86_64                                                                                                                              45/50

  Verifying  : libXau-1.0.8-2.1.el7.x86_64                                                                                                                              46/50

  Verifying  : libXrandr-1.5.1-2.el7.x86_64                                                                                                                             47/50

  Verifying  : libgcc-4.8.5-39.0.1.el7.i686                                                                                                                             48/50

  Verifying  : kernel-headers-3.10.0-1062.1.2.el7.x86_64                                                                                                                49/50

  Verifying  : libXmu-1.1.2-2.el7.x86_64                                                                                                                                50/50

Installed:

  compat-libcap1.x86_64 0:1.10-7.el7  compat-libstdc++-33.x86_64 0:3.2.3-72.el7  gcc.x86_64 0:4.8.5-39.0.1.el7              gcc-c++.x86_64 0:4.8.5-39.0.1.el7                 

  glibc.i686 0:2.17-292.0.1.el7       glibc-devel.i686 0:2.17-292.0.1.el7        glibc-devel.x86_64 0:2.17-292.0.1.el7      ksh.x86_64 0:20120801-139.0.1.el7                 

  libXi.i686 0:1.7.9-1.el7            libXi.x86_64 0:1.7.9-1.el7                 libXtst.i686 0:1.2.3-1.el7                 libXtst.x86_64 0:1.2.3-1.el7                      

  libaio.i686 0:0.3.109-13.el7        libaio-devel.i686 0:0.3.109-13.el7         libaio-devel.x86_64 0:0.3.109-13.el7       libgcc.i686 0:4.8.5-39.0.1.el7                    

  libstdc++.i686 0:4.8.5-39.0.1.el7   libstdc++-devel.i686 0:4.8.5-39.0.1.el7    libstdc++-devel.x86_64 0:4.8.5-39.0.1.el7  oracle-database-preinstall-19c.x86_64 0:1.0-1.el7

Dependency Installed:

  cpp.x86_64 0:4.8.5-39.0.1.el7          glibc-headers.x86_64 0:2.17-292.0.1.el7     kernel-headers.x86_64 0:3.10.0-1062.1.2.el7     libICE.x86_64 0:1.0.9-9.el7            

  libSM.x86_64 0:1.2.2-2.el7             libX11.i686 0:1.6.7-2.el7                   libX11.x86_64 0:1.6.7-2.el7                     libX11-common.noarch 0:1.6.7-2.el7     

  libXau.i686 0:1.0.8-2.1.el7            libXau.x86_64 0:1.0.8-2.1.el7               libXext.i686 0:1.3.3-3.el7                      libXext.x86_64 0:1.3.3-3.el7           

  libXinerama.x86_64 0:1.1.3-2.1.el7     libXmu.x86_64 0:1.1.2-2.el7                 libXrandr.x86_64 0:1.5.1-2.el7                  libXrender.x86_64 0:0.9.10-1.el7       

  libXt.x86_64 0:1.1.5-3.el7             libXv.x86_64 0:1.0.11-1.el7                 libXxf86dga.x86_64 0:1.1.4-2.1.el7              libXxf86misc.x86_64 0:1.0.3-7.1.el7    

  libXxf86vm.x86_64 0:1.1.4-1.el7        libdmx.x86_64 0:1.1.3-3.el7                 libmpc.x86_64 0:1.0.1-3.el7                     libxcb.i686 0:1.13-1.el7               

  libxcb.x86_64 0:1.13-1.el7             mpfr.x86_64 0:3.1.1-4.el7                   nss-softokn-freebl.i686 0:3.44.0-5.0.1.el7      psmisc.x86_64 0:22.20-16.el7           

  xorg-x11-utils.x86_64 0:7.5-23.el7     xorg-x11-xauth.x86_64 1:1.0.9-1.el7        

Complete!

Loaded plugins: langpacks, ulninfo

Cleaning repos: ol7_UEKR5 ol7_addons ol7_developer ol7_developer_EPEL ol7_ksplice ol7_latest ol7_oci_included ol7_optional_latest ol7_software_collections

Creating Directory

Setting ENV

Downloading oracle database zip

Extracting oracle database zip

setting up Response files

Installing Oracle Binaries

Launching Oracle Database Setup Wizard...

The response file for this session can be found at:

/u01/app/oracle/product/19.0.0/dbhome_1/install/response/db_2019-10-06_11-16-39PM.rsp

You can find the log of this install session at:

/tmp/InstallActions2019-10-06_11-16-39PM/installActions2019-10-06_11-16-39PM.log

As a root user, execute the following script(s):

1. /u01/app/oraInventory/orainstRoot.sh

2. /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

Execute /u01/app/oraInventory/orainstRoot.sh on the following nodes:

[git19c]

Execute /u01/app/oracle/product/19.0.0/dbhome_1/root.sh on the following nodes:

[git19c]

Successfully Setup Software.

Moved the install session logs to:

/u01/app/oraInventory/logs/InstallActions2019-10-06_11-16-39PM

Done

Last login: Sun Oct  6 23:16:39 GMT 2019 on pts/0

uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54330(racdba) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

SQL*Plus: Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

Default 19c database install with PDB

Prepare for db operation

8% complete

Copying database files

31% complete

Creating and starting Oracle instance

32% complete

36% complete

40% complete

43% complete

46% complete

Completing Database Creation

51% complete

53% complete

54% complete

Creating Pluggable Databases

58% complete

77% complete

Executing Post Configuration Actions

100% complete

Database creation complete. For details check the logfiles at:

/u01/app/oracle/cfgtoollogs/dbca/ORCL19.

Database Information:

Global Database Name:ORCL19

System Identifier(SID):ORCL19

Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/ORCL19/ORCL19.log" for further details.

Starting default listener

Parsing command line arguments:

    Parameter "silent" = true

    Parameter "responsefile" = /u01/app/oracle/product/19.0.0/dbhome_1/netca.rsp

Done parsing command line arguments.

Oracle Net Services Configuration:

Configuring Listener:LISTENER_ORCL19

Listener configuration complete.

Oracle Net Listener Startup:

    Running Listener Control:

      /u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl start LISTENER_ORCL19

    Listener Control complete.

    Listener started successfully.

Profile configuration complete.

Oracle Net Services configuration successful. The exit code is 0

Configuring the TNS

Testing Database

Last login: Sun Oct  6 23:33:31 GMT 2019 on pts/0

SQL*Plus: Release 19.0.0.0.0 - Production on Sun Oct 6 23:33:33 2019

Version 19.3.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

SQL>

System altered.

SQL>

NAME   OPEN_MODE

--------- --------------------

ORCL19   READ WRITE

SQL>

    CON_ID CON_NAME   OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

2 PDB$SEED  READ ONLY  NO

3 PDB19C  READ WRITE NO

SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0

Cleaning up

DataBase Installed!!!

Database Name: ORCL19 with one pluggable database PDB19C has default password Welcome_1. Just switch to oracle user and login to database.

Oracle Autonomous Data Warehouse (ADW) vs AWS RedShift a side-by-side comparison..kinda or sorta Benchmark

Emerging information technology trends in the Cloud have the power to transform organizations. In the data management and analytics space, many key Cloud service offerings have arrived that touch on this theme including Amazon’s Redshift, Snowflake, Google’s Bigquery, and Oracle’s Autonomous Data Warehouse Cloud.

The performance along with price, of a data warehouse or decision support system plays an integral role in the decision of a company to implement that solution. Such decisions must be based on information that compares the performance and price of database management systems of different vendors.

In this paper, we share our findings from a series of Data Warehouse Cloud benchmarks; comparing  Oracle Autonomous Data Warehouse Cloud is based and AWS RedShift.

The purpose of the benchmark is to provide crucial information with which to measure these important factors. Benchmarks that measure data warehouse performance, typically involve large data set query benchmarks with dimensional data models. Note, this paper does not cover Cloud configuration, manageability or on-going supportability. This will be included in a follow-up document.

ADW Redshift Comparing DataWarehouse

AWS CLI setup and test

This is the second part of the CLI series.   In the 1st post we covered Oracle OCI CLI install, configure and use.  In this post, we’ll do the same for AWS.  This is not a compartive Blog post….so no wagering please.

Firstly we install PIP.  PIP,  is a package-management system used to install and manage software packages written in Python.  Check here for details https://pypi.org/project/pip/

Run and install PIP to pull the rest of the packages down.  Set it in your PATH .

[root@nishanconsult ~]# python --version
Python 2.7.5

[root@nishanconsult ~]# curl -O https://bootstrap.pypa.io/get-pip.py
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 1669k  100 1669k    0     0  2221k      0 --:--:-- --:--:-- --:--:-- 2223k
[root@nishanconsult ~]# python get-pip.py --user
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting pip
Downloading https://files.pythonhosted.org/packages/5c/e0/be401c003291b56efc55aeba6a80ab790d3d4cece2778288d65323009420/pip-19.1.1-py2.py3-none-any.whl (1.4MB)
|████████████████████████████████| 1.4MB 3.4MB/s
Collecting wheel
Downloading https://files.pythonhosted.org/packages/bb/10/44230dd6bf3563b8f227dbf344c908d412ad2ff48066476672f3a72e174e/wheel-0.33.4-py2.py3-none-any.whl
Installing collected packages: pip, wheel
WARNING: The script wheel is installed in '/root/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-19.1.1 wheel-0.33.4

 

Lets add this to our PATH

[root@nishanconsult ~]# export PATH=$PATH:/root/.local/bin
[root@nishanconsult ~]# which pip
/root/.local/bin/pip

[root@nishanconsult ~]# pip --version
pip 19.1.1 from /root/.local/lib/python2.7/site-packages/pip (python 2.7)

Noe that we have python installated with PIP.  Lets install the awscli and check it once its done installing 

[root@nishanconsult ~]# pip install awscli --upgrade --user
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting awscli
Downloading https://files.pythonhosted.org/packages/1b/ea/62e3e65da5016f9641b9edee0f459e87eb813ed276f996aceb76f3ddd140/awscli-1.16.167-py2.py3-none-any.whl (1.6MB)
|████████████████████████████████| 1.6MB 3.1MB/s
Collecting colorama<=0.3.9,>=0.2.5 (from awscli)
Downloading https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl
Collecting rsa<=3.5.0,>=3.1.2 (from awscli)
Downloading https://files.pythonhosted.org/packages/e1/ae/baedc9cb175552e95f3395c43055a6a5e125ae4d48a1d7a924baca83e92e/rsa-3.4.2-py2.py3-none-any.whl (46kB)
|████████████████████████████████| 51kB 11.3MB/s
Collecting docutils>=0.10 (from awscli)
Downloading https://files.pythonhosted.org/packages/50/09/c53398e0005b11f7ffb27b7aa720c617aba53be4fb4f4f3f06b9b5c60f28/docutils-0.14-py2-none-any.whl (543kB)
|████████████████████████████████| 552kB 11.6MB/s
Collecting s3transfer<0.3.0,>=0.2.0 (from awscli)
Downloading https://files.pythonhosted.org/packages/d7/de/5737f602e22073ecbded7a0c590707085e154e32b68d86545dcc31004c02/s3transfer-0.2.0-py2.py3-none-any.whl (69kB)
|████████████████████████████████| 71kB 13.0MB/s
Requirement already satisfied, skipping upgrade: PyYAML<=3.13,>=3.10 in /usr/lib64/python2.7/site-packages (from awscli) (3.10)
Collecting botocore==1.12.157 (from awscli)
Downloading https://files.pythonhosted.org/packages/e5/cb/4eaa777b18010d0419a23c4332b0ff9f9d14b8de251be942b02a79108b91/botocore-1.12.157-py2.py3-none-any.whl (5.4MB)
|████████████████████████████████| 5.4MB 8.0MB/s
Collecting pyasn1>=0.1.3 (from rsa<=3.5.0,>=3.1.2->awscli)
Downloading https://files.pythonhosted.org/packages/7b/7c/c9386b82a25115cccf1903441bba3cbadcfae7b678a20167347fa8ded34c/pyasn1-0.4.5-py2.py3-none-any.whl (73kB)
|████████████████████████████████| 81kB 15.1MB/s
Requirement already satisfied, skipping upgrade: futures<4.0.0,>=2.2.0; python_version == "2.6" or python_version == "2.7" in /usr/lib/python2.7/site-packages (from s3transfer<0.3.0,>=0.2.0->awscli) (3.1.1)
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.12.157->awscli)
Downloading https://files.pythonhosted.org/packages/83/94/7179c3832a6d45b266ddb2aac329e101367fbdb11f425f13771d27f225bb/jmespath-0.9.4-py2.py3-none-any.whl
Collecting python-dateutil<3.0.0,>=2.1; python_version >= "2.7" (from botocore==1.12.157->awscli)
Downloading https://files.pythonhosted.org/packages/41/17/c62faccbfbd163c7f57f3844689e3a78bae1f403648a6afb1d0866d87fbb/python_dateutil-2.8.0-py2.py3-none-any.whl (226kB)
|████████████████████████████████| 235kB 14.4MB/s
Collecting urllib3<1.26,>=1.20; python_version == "2.7" (from botocore==1.12.157->awscli)
Downloading https://files.pythonhosted.org/packages/e6/60/247f23a7121ae632d62811ba7f273d0e58972d75e58a94d329d51550a47d/urllib3-1.25.3-py2.py3-none-any.whl (150kB)
|████████████████████████████████| 153kB 12.3MB/s
Requirement already satisfied, skipping upgrade: six>=1.5 in /usr/lib/python2.7/site-packages (from python-dateutil<3.0.0,>=2.1; python_version >= "2.7"->botocore==1.12.157->awscli) (1.9.0)
Installing collected packages: colorama, pyasn1, rsa, docutils, jmespath, python-dateutil, urllib3, botocore, s3transfer, awscli
Successfully installed awscli-1.16.167 botocore-1.12.157 colorama-0.3.9 docutils-0.14 jmespath-0.9.4 pyasn1-0.4.5 python-dateutil-2.8.0 rsa-3.4.2 s3transfer-0.2.0 urllib3-1.25.3

[root@nishanconsult ~]# aws --version
aws-cli/1.16.167 Python/2.7.5 Linux/3.10.0-957.el7.x86_64 botocore/1.12.157


[root@nishanconsult ~]# which aws
/root/.local/bin/aws

AWS requires that all incoming requests are cryptographically signed. The AWS CLI does this for you. The “signature” includes a date/time stamp. Therefore, you must ensure that your computer’s date and time are set correctly. If you don’t, and the date/time in the signature is too far off of the date/time recognized by the AWS service, then AWS rejects the request.

Configure AWS connectivity using the Secret Access Key and Access Key ID.  You can get this info from AWS Console in User section

[root@nishanconsult ~]# aws configure
AWS Access Key ID [None]: AKIA2RO2NWVAM5ITKXXX
AWS Secret Access Key [None]: 5E/h2VbDuHDdHUg5yuEJKC8PJat0u0qwRNZXXX
Default region name [None]:
Default output format [None]: JSON

Lets check to make sure it all works okay.  When you get a AWS account you get a default VPC.

But we will create a non-default VPC with some of the fixins’.   We will create a IGW, a route and Security Group.

Yes …I know we could/should do this in CloudFormation or Terrform, but this is just for illustration.

aws ec2 create-vpc --cidr-block 10.0.0.0/16 --region us-west-1 --profile nitin
VPC    10.0.0.0/16    dopt-346b3353    default    False    724696937792    pending    vpc-085b96a3dd54738xxx
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-04df232af2dafeXXX    10.0.0.0/16
CIDRBLOCKSTATE    associated

aws ec2 describe-vpcs  --region us-west-1 --profile nitin
VPCS    172.31.0.0/16    dopt-346b3353    default    True    724696937792    available    vpc-33e1c854
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-49352421    172.31.0.0/16
CIDRBLOCKSTATE    associated
VPCS    10.0.0.0/16    dopt-346b3353    default    False    724696937792    available    vpc-085b96a3dd5473844
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-04df232af2dafe795    10.0.0.0/16
CIDRBLOCKSTATE    associated

[root@nishanconsult .aws]# aws ec2 create-vpc --cidr-block 10.0.0.0/16 --region us-west-1 --profile nitin
VPC    10.0.0.0/16    dopt-346b3353    default    False    724696937792    pending    vpc-085b96a3dd5473844
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-04df232af2dafe795    10.0.0.0/16
CIDRBLOCKSTATE    associated
[root@nishanconsult .aws]# aws ec2 describe-vpcs  --region us-west-1 --profile nitin
VPCS    172.31.0.0/16    dopt-346b3353    default    True    724696937792    available    vpc-33e1c854
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-49352421    172.31.0.0/16
CIDRBLOCKSTATE    associated
VPCS    10.0.0.0/16    dopt-346b3353    default    False    724696937792    available    vpc-085b96a3dd5473844
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-04df232af2dafe795    10.0.0.0/16
CIDRBLOCKSTATE    associated
VPCS    10.0.0.0/16    dopt-346b3353    default    False    724696937792    available    vpc-0accf1cb4c0eb5ad5
CIDRBLOCKASSOCIATIONSET    vpc-cidr-assoc-053aa12740df8d995    10.0.0.0/16
CIDRBLOCKSTATE    associated

[root@nishanconsult .aws]# aws ec2 describe-subnets --region us-west-1 --profile nitin
SUBNETS    False    us-west-1c    usw1-az1    4091    172.31.16.0/20    True    True    724696937792    available    arn:aws:ec2:us-west-1:724696937792:subnet/subnet-a5d7cfc2    subnet-a5d7cfc2    vpc-33e1c854
SUBNETS    False    us-west-1b    usw1-az3    4091    172.31.0.0/20    True    True    724696937792    available    arn:aws:ec2:us-west-1:724696937792:subnet/subnet-fe1226a5    subnet-fe1226a5    vpc-33e1c854




[root@nishanconsult .aws]# aws ec2 create-subnet --vpc-id vpc-085b96a3dd5473844  --cidr-block 10.0.1.0/24 --region us-west-1 --profile nitin
SUBNET    False    us-west-1c    usw1-az1    251    10.0.1.0/24    False    False    724696937792    pending    arn:aws:ec2:us-west-1:724696937792:subnet/subnet-0df0209f63ed935dd    subnet-0df0209f63ed935dd    vpc-085b96a3dd5473844

[root@nishanconsult .aws]# aws ec2  attach-internet-gateway --vpc-id  vpc-085b96a3dd5473844 --internet-gateway-id  igw-0524c6ff9c8a4c486  --profile nitin --region us-west-1

aws ec2 describe-internet-gateways
INTERNETGATEWAYS    igw-0524c6ff9c8a4c486    724696937792
ATTACHMENTS    available    vpc-085b96a3dd5473844
INTERNETGATEWAYS    igw-65a38c01    724696937792
ATTACHMENTS    available    vpc-33e1c854

aws ec2 create-key-pair --key-name nishanKeyPair --query 'KeyMaterial' --output text > nishanKey.pem
[root@nishanconsult .aws]# chmod 400 nishanKey.pem

# aws ec2 create-security-group --group-name mySSHaccess --description "Security group for SSH access" --vpc-id vpc-085b96a3dd5473844
sg-02db6271b0da23b68
[root@nishanconsult .aws]# aws ec2 authorize-security-group-ingress --group-id sg-02db6271b0da23b68 --protocol tcp --port 22 --cidr 0.0.0.0/0

 

I’ll continue to add more use cases here…like creating a MariaDB or MongoDB

Oracle OCI CLI setup and basics

To be honest, this blog is really more for me, cause I cant seem to remeber how to setup OCI CLI each time I need.  So effectively this is a cheat-sheet, for me and anyone else who needs it to support Oracle CLI.  I will be doing a similiar post for AWS CLI.  Its was not meant to compare/contrast….so no wagering please.

Th main parts of this process is the following:

  1. Install CLI bits (ensure your want this python version).  Install of python3x is outside of this scope.  I have purposely kept all the details from the installation.  Its so well illustrated, its worth walking thru it.
  2. Configure for OCI tenancy (get tenancy, compartment details) including setting credentials
  3. Test oci cli commands

Note, this install is being done on OEL, but its pretty much the same on any plaform.

  1. First, we need to download/acquire the CLI bits.  We do this by running curl get:

bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13968  100 13968    0     0  22391      0 --:--:-- --:--:-- --:--:-- 22384

    ******************************************************************************
    You have started the OCI CLI Installer in interactive mode. If you do not wish
    to run this in interactive mode, please include the --accept-all-defaults option.
    If you have the script locally and would like to know more about
    input options for this script, then you can run:
    ./install.sh -h
    If you would like to know more about input options for this script, refer to:
https://github.com/oracle/oci-cli/blob/master/scripts/install/README.rst
    ******************************************************************************
Downloading Oracle Cloud Infrastructure CLI install script from https://raw.githubusercontent.com/oracle/oci-cli/v2.5.15/scripts/install/install.py to /tmp/oci_cli_install_tmp_L7tU.
######################################################################## 100.0%
Python3 not found on system PATH
Running install script.
python /tmp/oci_cli_install_tmp_L7tU 
-- Verifying Python version.
-- Python version 2.7.5 okay.

===> In what directory would you like to place the install? (leave blank to use '/home/nitin/lib/oracle-cli'): 
-- Creating directory '/home/nitin/lib/oracle-cli'.
-- We will install at '/home/nitin/lib/oracle-cli'.

===> In what directory would you like to place the 'oci' executable? (leave blank to use '/home/nitin/bin'): 
-- Creating directory '/home/nitin/bin'.
-- The executable will be in '/home/nitin/bin'.

===> In what directory would you like to place the OCI scripts? (leave blank to use '/home/nitin/bin/oci-cli-scripts'): 
-- Creating directory '/home/nitin/bin/oci-cli-scripts'.
-- The scripts will be in '/home/nitin/bin/oci-cli-scripts'.

===> Currently supported optional packages are: ['db (will install cx_Oracle)']
What optional CLI packages would you like to be installed (comma separated names; press enter if you don't need any optional packages)?: 
-- The optional packages installed will be ''.
-- Downloading virtualenv package from https://github.com/pypa/virtualenv/archive/15.0.0.tar.gz.
-- Downloaded virtualenv package to /tmp/tmpq_dJj9/15.0.0.tar.gz.
-- Checksum of /tmp/tmpq_dJj9/15.0.0.tar.gz OK.
-- Extracting '/tmp/tmpq_dJj9/15.0.0.tar.gz' to '/tmp/tmpq_dJj9'.
-- Executing: ['/usr/bin/python', 'virtualenv.py', '--python', '/usr/bin/python', '/home/nitin/lib/oracle-cli']
Already using interpreter /usr/bin/python
New python executable in /home/nitin/lib/oracle-cli/bin/python
Installing setuptools, pip, wheel...done.
-- Executing: ['/home/nitin/lib/oracle-cli/bin/pip', 'install', '--cache-dir', '/tmp/tmpq_dJj9', 'oci_cli', '--upgrade']
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting oci_cli
  Downloading https://files.pythonhosted.org/packages/46/b3/8aa896440efaa39c4d000c2e35a8dde6efa6c140dfc1e2df116d381d6c5d/oci_cli-2.5.15-py2.py3-none-any.whl (4.0MB)
     |████████████████████████████████| 4.0MB 3.2MB/s 
Collecting idna<2.7,>=2.5 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/27/cc/6dd9a3869f15c2edfab863b992838277279ce92663d334df9ecf5106f5c6/idna-2.6-py2.py3-none-any.whl (56kB)
     |████████████████████████████████| 61kB 14.8MB/s 
Collecting arrow==0.10.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/54/db/76459c4dd3561bbe682619a5c576ff30c42e37c2e01900ed30a501957150/arrow-0.10.0.tar.gz (86kB)
     |████████████████████████████████| 92kB 10.7MB/s 
Collecting jmespath==0.9.3 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/b7/31/05c8d001f7f87f0f07289a5fc0fc3832e9a57f2dbd4d3b0fee70e0d51365/jmespath-0.9.3-py2.py3-none-any.whl
Collecting configparser==3.5.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/7c/69/c2ce7e91c89dc073eb1aa74c0621c3eefbffe8216b3f9af9d3885265c01c/configparser-3.5.0.tar.gz
Collecting oci==2.2.14 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/da/5b/c56236eb269a95a6cdc055764d983d16c4f2ae9addceb696c5b534fe1b49/oci-2.2.14-py2.py3-none-any.whl (2.1MB)
     |████████████████████████████████| 2.1MB 9.9MB/s 
Collecting httpsig-cffi==15.0.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/93/f5/c9a213c0f906654c933f1192148d8aded2022678ad6bce8803d3300501c6/httpsig_cffi-15.0.0-py2.py3-none-any.whl
Collecting cryptography==2.4.2 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/7f/ba/383b51cc26e3141c689ce988814385c7659f5ba01c4b5f2de38233010b5f/cryptography-2.4.2-cp27-cp27mu-manylinux1_x86_64.whl (2.1MB)
     |████████████████████████████████| 2.1MB 6.0MB/s 
Collecting terminaltables==3.1.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/9b/c4/4a21174f32f8a7e1104798c445dacdc1d4df86f2f26722767034e4de4bff/terminaltables-3.1.0.tar.gz
Collecting click==6.7 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/34/c1/8806f99713ddb993c5366c362b2f908f18269f8d792aff1abfd700775a77/click-6.7-py2.py3-none-any.whl (71kB)
     |████████████████████████████████| 71kB 4.1MB/s 
Collecting retrying==1.3.3 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/44/ef/beae4b4ef80902f22e3af073397f079c96969c69b2c7d52a57ea9ae61c9d/retrying-1.3.3.tar.gz
Collecting pytz==2016.10 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/f5/fa/4a9aefc206aa49a4b5e0a72f013df1f471b4714cdbe6d78f0134feeeecdb/pytz-2016.10-py2.py3-none-any.whl (483kB)
     |████████████████████████████████| 491kB 10.8MB/s 
Collecting PyYAML==3.13 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/9e/a3/1d13970c3f36777c583f136c136f804d70f500168edc1edea6daa7200769/PyYAML-3.13.tar.gz (270kB)
     |████████████████████████████████| 276kB 11.1MB/s 
Collecting certifi (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/69/1b/b853c7a9d4f6a6d00749e94eb6f3a041e342a885b87340b79c1ef73e3a78/certifi-2019.6.16-py2.py3-none-any.whl (157kB)
     |████████████████████████████████| 163kB 13.0MB/s 
Collecting python-dateutil==2.7.3 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/cf/f5/af2b09c957ace60dcfac112b669c45c8c97e32f94aa8b56da4c6d1682825/python_dateutil-2.7.3-py2.py3-none-any.whl (211kB)
     |████████████████████████████████| 215kB 12.4MB/s 
Collecting pyOpenSSL==18.0.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/96/af/9d29e6bd40823061aea2e0574ccb2fcf72bfd6130ce53d32773ec375458c/pyOpenSSL-18.0.0-py2.py3-none-any.whl (53kB)
     |████████████████████████████████| 61kB 15.3MB/s 
Collecting six==1.11.0 (from oci_cli)
  Downloading https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl
Collecting enum34; python_version < "3" (from cryptography==2.4.2->oci_cli)
  Downloading https://files.pythonhosted.org/packages/c5/db/e56e6b4bbac7c4a06de1c50de6fe1ef3810018ae11732a50f15f62c7d050/enum34-1.1.6-py2-none-any.whl
Collecting cffi!=1.11.3,>=1.7 (from cryptography==2.4.2->oci_cli)
  Downloading https://files.pythonhosted.org/packages/8d/e9/0c8afd1579e5cf7bc0f06fbcd7cdb954cbc0baadd505973949a99337da1c/cffi-1.12.3-cp27-cp27mu-manylinux1_x86_64.whl(415kB)
     |████████████████████████████████| 419kB 12.5MB/s 
Collecting asn1crypto>=0.21.0 (from cryptography==2.4.2->oci_cli)
  Downloading https://files.pythonhosted.org/packages/ea/cd/35485615f45f30a510576f1a56d1e0a7ad7bd8ab5ed7cdc600ef7cd06222/asn1crypto-0.24.0-py2.py3-none-any.whl (101kB)
     |████████████████████████████████| 102kB 10.9MB/s 
Collecting ipaddress; python_version < "3" (from cryptography==2.4.2->oci_cli)
  Downloading https://files.pythonhosted.org/packages/fc/d0/7fc3a811e011d4b388be48a0e381db8d990042df54aa4ef4599a31d39853/ipaddress-1.0.22-py2.py3-none-any.whl
Collecting pycparser (from cffi!=1.11.3,>=1.7->cryptography==2.4.2->oci_cli)
  Downloading https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz (158kB)
     |████████████████████████████████| 163kB 12.6MB/s 
Building wheels for collected packages: arrow, configparser, terminaltables, retrying, PyYAML, pycparser
  Building wheel for arrow (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/ce/4f/95/64541c7466fd88ffe72fda5164f8323c91d695c9a77072c574
  Building wheel for configparser (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/a3/61/79/424ef897a2f3b14684a7de5d89e8600b460b89663e6ce9d17c
  Building wheel for terminaltables (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/30/6b/50/6c75775b681fb36cdfac7f19799888ef9d8813aff9e379663e
  Building wheel for retrying (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/d7/a9/33/acc7b709e2a35caa7d4cae442f6fe6fbf2c43f80823d46460c
  Building wheel for PyYAML (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/ad/da/0c/74eb680767247273e2cf2723482cb9c924fe70af57c334513f
  Building wheel for pycparser (setup.py) ... done
  Stored in directory: /tmp/tmpq_dJj9/wheels/f2/9a/90/de94f8556265ddc9d9c8b271b0f63e57b26fb1d67a45564511
Successfully built arrow configparser terminaltables retrying PyYAML pycparser
Installing collected packages: idna, six, python-dateutil, arrow, jmespath, configparser, enum34, pycparser, cffi, asn1crypto, ipaddress, cryptography, pyOpenSSL, pytz, certifi, oci, httpsig-cffi, terminaltables, click, retrying, PyYAML, oci-cli
Successfully installed PyYAML-3.13 arrow-0.10.0 asn1crypto-0.24.0 certifi-2019.6.16 cffi-1.12.3 click-6.7 configparser-3.5.0 cryptography-2.4.2 enum34-1.1.6 httpsig-cffi-15.0.0 idna-2.6 ipaddress-1.0.22 jmespath-0.9.3 oci-2.2.14 oci-cli-2.5.15 pyOpenSSL-18.0.0 pycparser-2.19 python-dateutil-2.7.3 pytz-2016.10 retrying-1.3.3 six-1.11.0 terminaltables-3.1.0

===> Modify profile to update your $PATH and enable shell/tab completion now? (Y/n): Y

===> Enter a path to an rc file to update (leave blank to use '/home/nitin/.bashrc'): 
-- Backed up '/home/nitin/.bashrc' to '/home/nitin/.bashrc.backup'
-- Tab completion set up complete.
-- If tab completion is not activated, verify that '/home/nitin/.bashrc' is sourced by your shell.
-- 
-- ** Run `exec -l $SHELL` to restart your shell. **
-- 
-- Installation successful.
-- Run the CLI with /home/nitin/bin/oci --help
[nitin@cloudmac ~]$ 

 

2. Now lets configure our pem keys (private and public). We use openssl to gen our keys

[nitin@cloudmac ~]$ openssl genrsa -out ./nitin-oci-key.pem 2048
Generating RSA private key, 2048 bit long modulus
..................+++
.......+++
e is 65537 (0x10001)
[nitin@cloudmac ~]$ chmod go-rwx ./nitin-oci-key.pem 
 
[nitin@cloudmac ~]$ openssl rsa -pubout -in ./nitin-oci-key.pem  -out ./nitin-oci-key-pub.pem 
writing RSA key

[nitin@cloudmac ~]$ ls -ltr nitin-oci*
-rw-------. 1 nitin nitin 1679 Jun 19 13:12 nitin-oci-key.pem
-rw-rw-r--. 1 nitin nitin  451 Jun 19 13:14 nitin-oci-key-pub.pem

 

3. Configure the OCI configuration file.

a. Upload the PEM keys in the Users tab of the OCI Menu. After uploading you’ll see a Fingerprint tag associated with User

b, Use your UI to collect the following info USER OCID, Fingerprint, Tenancy OCID and Compartment OCID

c. Create a file called $HOME/.oci/configure

[DEFAULT]
# OCID info for Nitin
user=ocid1.user.oc1..aaaaaaaacugvqgd4c7ecym6phvvrkcoeqjnenjauva7njcqq7jui6qbdfeaq
fingerprint=70:23:4c:9b:14:c9:af:d4:dd:96:cc:65:4d:xx:xx:yy
key_file=/home/nitin/nitin-oci-key.pem
tenancy=ocid1.tenancy.oc1..aaaaaaaa3k7dq4u32duuege5of24ibxsh5d2dfxqo7lxxxxxxxxxx
region=us-ashburn-1

 

4. Now lets do a simple test to verify the credentials. One test will be to list the regions, the 2nd test will be to list the VCNs (if you have correct IAM role). Note, for illustration, I have shown output as displayed in tabular an JSON format

oci iam region list --output table
+-----+----------------+
| key | name           |
+-----+----------------+
| FRA | eu-frankfurt-1 |
| IAD | us-ashburn-1   |
| ICN | ap-seoul-1     |
| LHR | uk-london-1    |
| NRT | ap-tokyo-1     |
| PHX | us-phoenix-1   |
| YYZ | ca-toronto-1   |
+-----+----------------+

oci network vcn list --compartment-id ocid1.compartment.oc1..aaaaaaaadwopyqsoqdtsv5ykghdje7f6nvk5moxdo7xxxxxxxxxx
{
  "data": [
    {
      "cidr-block": "10.224.32.0/19", 
      "compartment-id": "ocid1.compartment.oc1..aaaaaaaadwopyqsoqdtsv5ykghdje7f6nvk5moxdo7xxxxxxxxx", 
      "default-dhcp-options-id": "ocid1.dhcpoptions.oc1.iad.aaaaaaaa6xiy26rweb2ydcjp4lqsvk7zkpuhglyakjpnhdfuhvvjjpjtd4aq", 
      "default-route-table-id": "ocid1.routetable.oc1.iad.aaaaaaaa6mzxjyh3yszohnz2kn7sfsy6ykpvvlgn5a3c5mf3ki3l4ycqzgka", 
      "default-security-list-id": "ocid1.securitylist.oc1.iad.aaaaaaaaun4berdcdxlrg4mg6veoqdvwdzz3p6zbldets76y6otxmlxn3o3a", 
      "defined-tags": {}, 
      "display-name": "ASH-Exadata", 
      "dns-label": "ashexadata", 
      "freeform-tags": {}, 
      "id": "ocid1.vcn.oc1.iad.aaaaaaaahe7kvbrqla25w27id5szra7j6oda2aelfbwt5w67x3c655bvsntq", 
      "lifecycle-state": "AVAILABLE", 
      "time-created": "2018-01-29T19:55:54.760000+00:00", 
      "vcn-domain-name": "ashexadata.oraclevcn.com"
    }
  ]
}

Here's a quick example of query and retreiving information from OCI. 
In this example I'm gonna pull all database versions available to me for creating.  The second example polls with the db-system-shape

[nitin@cloudmac ~]$ oci db version list -c $COMPID --db-system-shape "VM.Standard1.1" --all --output table
+-----------------------------+--------------+-----------------+
| is-latest-for-major-version | supports-pdb | version         |
+-----------------------------+--------------+-----------------+
| True                        | False        | 11.2.0.4        |
| False                       | False        | 11.2.0.4.181016 |
| False                       | False        | 11.2.0.4.190115 |
| False                       | False        | 11.2.0.4.190416 |
| True                        | True         | 12.1.0.2        |
| False                       | True         | 12.1.0.2.181016 |
| False                       | True         | 12.1.0.2.190115 |
| False                       | True         | 12.1.0.2.190416 |
| True                        | True         | 12.2.0.1        |
| False                       | True         | 12.2.0.1.181016 |
| False                       | True         | 12.2.0.1.190115 |
| False                       | True         | 12.2.0.1.190416 |
| True                        | True         | 18.0.0.0        |
| False                       | True         | 18.4.0.0        |
| False                       | True         | 18.5.0.0        |
| False                       | True         | 18.6.0.0        |
+-----------------------------+--------------+-----------------+

[nitin@cloudmac ~]$ oci db version list -c $COMPID  --all --output table
+-----------------------------+--------------+----------+
| is-latest-for-major-version | supports-pdb | version  |
+-----------------------------+--------------+----------+
| True                        | False        | 11.2.0.4 |
| True                        | True         | 12.1.0.2 |
| True                        | True         | 12.2.0.1 |
| True                        | True         | 18.0.0.0 |
+-----------------------------+--------------+----------+

In the next Blog post, I'll work through an entire DB creation 

DbaaS/ExaCS filesystem filing up with KRB tracing

KRB tracing and background

On our Exadata Cloud Service system running 18c GI and DB, we have been running into issues with /u02 filesystem filling up.  This was primarily imposed and generated by one component – RMAN.  As it turns out we had just enabled ExaCS automated backups via the tooling (bkup_api) .

Firstly, krb.c code refers to RMAN code layer, and tracing is generally produced when user specifies krbitrc via the event tracing.  Note this is not the same as rman debugging ( debug=all).

Starting in DB 18.3 , the event tracing is generating tracing regardless of event being set or not, and worse, its gen’ing trace files for every command.  This why the the /u02 is getting filled up

Here’s a sample of the trace data:

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165134 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165134

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165135 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165135

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165136 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165136

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165137 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165137

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165138 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165138

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165139 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165139

2019-06-02 18:17:16.933*:KRB:krbr.c@15486:krbr2b1(): ; f->krfil_krbrf=0 op1=2 lbno=1165140 f->seq_krbrf=11981

2019-06-02 18:17:16.933*:KRB:krbr.c@15908:krbr9b2(): Entering; f->seq_krbrf=11981 f->thread_krbrf=2 bno=1165140

And

…………

Redo thread mounted by this instance: 1

Oracle process number: 284

Unix process pid: 8448, image: oracle@***** (TNS V1-V3)

*** 2019-06-02T19:00:03.444793+00:00 (CDB$ROOT(1))

*** SESSION ID:(1723.45910) 2019-06-19T19:00:03.444828+00:00

*** CLIENT ID:() 2019-06-02T19:00:03.444835+00:00

*** SERVICE NAME:(SYS$USERS) 2019-06-02T19:00:03.444841+00:00

*** MODULE NAME:(rman@***** (TNS V1-V3)) 2019-06-02T19:00:03.444848+00:00

*** ACTION NAME:() 2019-06-02T19:00:03.444855+00:00

*** CLIENT DRIVER:() 2019-06-02T19:00:03.444861+00:00

*** CONTAINER ID:(1) 2019-06-02T19:00:03.444868+00:00

2019-06-02 19:00:03.444*:KRB:krbi.c@8857:krbitrc(): Got krbitrc

2019-06-02 19:00:03.444*:KRB:krbi.c@8887:krbiwtrc(): (bkrsmain - Action is NULL)

*** ACTION NAME:(0000001 STARTED70) 2019-06-02T19:00:03.444998+00:00

2019-06-02 19:00:03.444*:KRB:krbi.c@8887:krbiwtrc(): (icdstart - Action set to 0000001 STARTED70)

*** ACTION NAME:(0000001 FINISHED70) 2019-06-02T19:00:03.445209+00:00

2019-06-02 19:00:03.445*:KRB:krbi.c@8887:krbiwtrc(): (icdfinish - Action set to 0000001 FINISHED70)

Doc ID 28390273.8 mentions that the fix is included in “18.4.0.0.181016 (Oct 2018) Database Release Update (DB RU)” but issue is still seen in latest RU.

You can either wait for the fix, or manually disable kbr tracing.

To fix this issue permanently set below parameter at DB level

if using spfile

Alter system set events ‘trace[krb.*] disk disable, memory disable’;  

If using pfile

event=’trace[krb.*] disk disable, memory disable’

MOS Note – Excessive MMON, KRB Traces Causing Trace File Location (/u01) Overflow in DBaaS (Doc ID 2442656.1) does a decent job describing this issue

Part Deux – Diggin’ into ODA ASM Add Disk to DiskGroup operation

This is part 2 of the storage expansion of ODA.   If you remember from Part1, we added a whole disk shelf and we walked thru the ASM alert.log to show how the storage gets added to the diskgroup.  In this blog post, I’m just going to illustrate the process flow of the disk addition as it looks thru the eyes of the oakd.log.  But rather than show the entire 20 disks being added (which would be voluminous), I’m going to describe the  addition of a specific disk, Slot 14.

When the disk is physically added into the slot (after taking out the filler), this disk insertion will invoke a series of backend automated scripts/tooling that will start with the OS creating a disk device entry via the event handler and end with the disk being added to ASM diskgroup.

The key point of this blog and discussion is to describe the entire end-2-end automation process of simply adding a new disk to an ODA engineered system (“dare I say push button approach”).

BTW, Still LOVE the references to COMET in the code 🙂

We start with the look inside oakd.log, where majority of the action is.

In this first section from the oak log, once the disk insertion is recognized,  oakd describes the disk characteristics; including capacity , hba port and state.  Note, since multipathing is enabled we will see 2paths, and thus 2 disk names for the same [root] slot device name :

2019-02-05 10:55:35.510: [   STMHW][710730400] Sha::Inserting OSDevName /dev/sdr for slot 14.  <— SDR

2019-02-05 10:55:35.510: [   STMHW][710730400] Sha::Inserting OSDevName /dev/sdao for slot 14. <— SDAO

2019-02-05 10:55:35.510: [   STMHW][710730400] Physical Disk [14] Info:  <--Next set includes physical disk info

2019-02-05 10:55:35.510: [   STMHW][710730400] Slot Num    = 14

2019-02-05 10:55:35.510: [   STMHW][710730400] Col  Num    = 2

2019-02-05 10:55:35.510: [   STMHW][710730400] OsDevNames  = |/dev/sdao||/dev/sdr|

2019-02-05 10:55:35.510: [   STMHW][710730400] Serial Num  = 1839J5XJ9X

2019-02-05 10:55:35.510: [   STMHW][710730400] Disk Type   = SSD  <--Well we know its an SSD

2019-02-05 10:55:35.510: [   STMHW][710730400] Expander    = 0 : 508002000231a17e

2019-02-05 10:55:35.510: [   STMHW][710730400] scsi-id     = 5000cca0a101ac54

2019-02-05 10:55:35.510: [   STMHW][710730400] sectors     = 781404246

2019-02-05 10:55:35.510: [   STMHW][710730400] OsDisk[14] Info:  <--This next listing details the device info

2019-02-05 10:55:35.510: [   STMHW][710730400] OsDevName: /dev/sdr, Id = 14, Slot = 14, Capacity = 3200631791616: 3200gb, Type = SSD, hba port = 14 State = State: GOOD, expWwn = 5080020002311fbe, scsiId = 5000cca0a101ac54, Ctrlr = 0

2019-02-05 10:55:35.510: [   STMHW][710730400] OsDisk[38] Info:   <--Since we have multipathing, we will get same info for /dev/sdao

2019-02-05 10:55:35.510: [   STMHW][710730400] OsDevName: /dev/sdao, Id = 38, Slot = 14, Capacity = 3200631791616: 3200gb, Type = SSD, hba port = 14 State = State: GOOD, expWwn = 508002000231a17e, scsiId = 5000cca0a101ac54, Ctrlr = 1

This section from the oak log, describes the disk details from  PDiskAdapter.scr action script and FishWrap . Note the Autodiscovery hint, as the disk is partitioned for the different diskgroups:

2019-02-05 10:55:35.946: [   STMHW][150968064]{1:11302:2} Sha::Inserting OSDevName /dev/sdr for slot 14 2019-02-05 10:55:35.946: [   STMHW][150968064]{1:11302:2} Sha::Inserting OSDevName /dev/sdao for slot 14 2019-02-05 10:55:35.946: [ ADAPTER][150968064]{1:11302:2} Running predictive failure check for: /dev/sdao 2019-02-05 10:55:35.946: [    SCSI][150968064]{1:11302:2} SCSI Inquiry Command response for /dev/sdao 2019-02-05 10:55:35.946: [   OAKFW][167753472]{1:11302:2} [ActionScript] = /opt/oracle/oak/adapters/PDiskAdapter.scr 2019-02-05 10:55:35.946: [    SCSI][150968064]{1:11302:2} Vendor = HGST     Product = HBCAC2DH2SUN3.2T Revision = A170 2019-02-05 10:55:35.946: [   OAKFW][167753472]{1:11302:2} [ActionTimeout] = 1500 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [ActivePath] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [AgentFile] = %COMET_MS_HOME%/bin/%TYPE_NAME% 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [AsmDiskList] = |0| 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [AutoDiscovery] = 1 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [AutoDiscoveryHint] = |data:80:SSD||reco:20:SSD||redo:100:SSD| 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [CheckInterval] = 600 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [ColNum] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [DiskId] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [DiskType] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Enabled] = 1 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [ExpNum] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [MultiPathList] = |0| 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Name] = PDType 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [NewPartAddr] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [OSUserType] = |userType:Multiuser| 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [PlatformName] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [PrevUsrDevName] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [SectorSize] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [SerialNum] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Size] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [SlotNum] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [TotalSectors] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [UsrDevName] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [gid] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [mode] = 660 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [uid] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [DependListOpr] = add 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Dependency] = |0| 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [IState] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Initialized] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [IsConfigDependency] = false 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [MonitorFlag] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [Name] = ResourceDef 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [PrevState] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [State] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [StateChangeTs] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [StateDetails] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} [TypeName] = 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} Added new resource : e0_pd_11 to the agfw 2019-02-05 10:55:35.947: [   OAKFW][167753472][F-ALGO]{1:11302:2} Resource name : e0_pd_11, state : 0 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} PE invalidating the data model 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} Evaluating Add Resource for e0_pd_11 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} Executing plan size: 1 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} PE: Sending message to agent : RESOURCE_VALIDATE[e0_pd_11] ID 4361:96 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} Engine received the message : RESOURCE_VALIDATE[e0_pd_09] ID 4361:90 2019-02-05 10:55:35.947: [   OAKFW][167753472]{1:11302:2} Preparing VALIDATE command for : e0_pd_09 2019-02-05 10:55:35.948: [   STMHW][150968064]{1:11302:2} Sha::Inserting OSDevName /dev/sdr for slot 14 2019-02-05 10:55:35.948: [   STMHW][150968064]{1:11302:2} Sha::Inserting OSDevName /dev/sdao for slot 14 2019-02-05 10:55:35.948: [ ADAPTER][150968064]{1:11302:2} Creating resource for PD: SSD_E0_S14_2701241428 2019-02-05 10:55:35.948: [ ADAPTER][150968064]{1:11302:2} partName datapctStr  80 diskType =SSD This section from the oak log, describes the disk validation 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] print_args called with argument : validate 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] Arguments passed to PDiskAdapter: 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] ResName = e0_pd_14 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] DiskId = 35000cca0a101ac54 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] DevName = SSD_E0_S14_2701241428 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] MultiPaths = /dev/sdao /dev/sdr 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] ActivePath = /dev/sdao 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] DiskType = SSD 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] Expander = 0 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] Size = 3200631791616 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] Sectors = 781404246 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] ExpColNum = 2 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] NewPartAddr = 0 2019-02-05 10:55:36.015: [        ][4177499904]{1:11302:2} [validate] DiskSerial# = 1839J5XJ9X 2019-02-05 10:55:36.023: [        ][4085245696]{1:11302:2} [validate] [Tue Feb 5 10:55:35 EST 2019] Action script '/opt/oracle/oak/adapters/PDiskAdapter.scr' for resource [e0_pd_15] called for action validate

This section from the oak log, we see the Linux kernel changes once the device entry is created; eg, IO scheduler, queue  depth, property values

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo deadline > /sys/block/sdao/queue/scheduler;echo 4096 > /sys/block/sdao/queue/nr_requests;echo 128 > /sys/block/sdao/queue/read_ahead_kb;

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo deadline > /sys/block/sdr/queue/scheduler;echo 4096 > /sys/block/sdr/queue/nr_requests;echo 128 > /sys/block/sdr/queue/read_ahead_kb;

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo 64 > /sys/block/sdao/device/queue_depth

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo 64 > /sys/block/sdr/device/queue_depth

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo 30 > /sys/block/sdao/device/timeout

2019-02-05 10:55:36.166: [        ][4177499904]{1:11302:2} [validate] Running echo 30 > /sys/block/sdr/device/timeout

2019-02-05 10:55:36.166: [   OAKFW][4177499904]{1:11302:2} Command : validate for: e0_pd_14 completed with status: SUCCESS

2019-02-05 10:55:36.166: [   OAKFW][167753472][F-ALGO]{1:11302:2} Engine received reply for command : validate for: e0_pd_14

2019-02-05 10:55:36.166: [   OAKFW][167753472]{1:11302:2} PE: Received last reply for : RESOURCE_VALIDATE[e0_pd_14] ID 4361:107

This section from the oak log, validates the state and complete insertion

2019-02-05 10:55:51.997: [   STMHW][4177499904]{1:11302:2} getState : 1

2019-02-05 10:55:51.997: [        ][4177499904]{1:11302:2} [check] Validating disk header for : SSD_E0_S14_2701241428

2019-02-05 10:55:51.997: [ ADAPTER][4177499904]{1:11302:2} Succefully opened the device: /dev/sdao

2019-02-05 10:55:51.997: [ ADAPTER][4177499904]{1:11302:2} Diskheader.Read: devName = /dev/sdao, master_inc = 0, m_slave_inc = 0, disk_status = 0 disk_inc = 0, slot_num= 0, serial num =  chassis snum =   part_loaded_cnt=0

2019-02-05 10:55:52.608: [   STMHW][4177499904]{1:11302:2} getState : 1

2019-02-05 10:55:52.608: [   STMHW][4177499904]{1:11302:2} State has been changed for: /dev/sdr Old State: GOOD, New State: INSERTED

2019-02-05 10:55:52.608: [   STMHW][4177499904]{1:11302:2} State has been changed for: /dev/sdao Old State: GOOD, New State: INSERTED

2019-02-05 10:55:52.608: [        ][4177499904]{1:11302:2} [check] Found the disk in uninitialized state.

2019-02-05 10:55:52.608: [   STMHW][4177499904]{1:11302:2} getState : 1

2019-02-05 10:55:52.608: [        ][4177499904]{1:11302:2} [check] Running ssd wear level check for: /dev/sdao

2019-02-05 10:55:52.609: [    SCSI][4177499904]{1:11302:2} SSD Media used endurance indicator: 0%

2019-02-05 10:55:52.609: [   STMHW][4177499904]{1:11302:2} Sha::Inserting OSDevName /dev/sdr for slot 14

2019-02-05 10:55:52.609: [   STMHW][4177499904]{1:11302:2} Sha::Inserting OSDevName /dev/sdao for slot 14

2019-02-05 10:55:52.609: [        ][4177499904]{1:11302:2} [check] Disk State: 1,  Label: NewDiskInserted

2019-02-05 10:55:53.856: [   STMHW][4085245696]{1:11302:2} getState : 1

2019-02-05 10:55:53.856: [   STMHW][4085245696]{1:11302:2} State has been changed for: /dev/sdr Old State: INSERTED, New State: GOOD

2019-02-05 10:55:53.856: [   STMHW][4085245696]{1:11302:2} State has been changed for: /dev/sdao Old State: INSERTED, New State: GOOD

2019-02-05 10:55:53.856: [        ][4085245696]{1:11302:2} [check] Validating disk header for : SSD_E0_S14_2701241428

2019-02-05 10:55:53.856: [ ADAPTER][4085245696]{1:11302:2} Succefully opened the device: /dev/sdao

2019-02-05 10:55:53.856: [ ADAPTER][4085245696]{1:11302:2} Diskheader.Read: devName = /dev/sdao, master_inc = 0, m_slave_inc = 0, disk_status = 0 disk_inc = 0, slot_num= 0, serial num =  chassis snum =   part_loaded_cnt=0

Finally if you jump over to the ASM alert.log you’ll see that the disks get added to the respective ASM diskgroup:

SQL> alter diskgroup /*+ _OAK_AsmCookie */ data add disk
'AFD:SSD_E0_S08_2701228196P1' name SSD_E0_S08_2701228196p1,
'AFD:SSD_E0_S07_2701240428P1' name SSD_E0_S07_2701240428p1,
'AFD:SSD_E0_S14_2701241428P1' name SSD_E0_S14_2701241428p1,  <-- here's our dude !!
'AFD:SSD_E0_S17_2701244644P1' name SSD_E0_S17_2701244644p1,
'AFD:SSD_E0_S19_2701246564P1' name SSD_E0_S19_2701246564p1,
'AFD:SSD_E0_S09_2701252584P1' name SSD_E0_S09_2701252584p1,
'AFD:SSD_E0_S13_2701254148P1' name SSD_E0_S13_2701254148p1,
'AFD:SSD_E0_S16_2701255896P1' name SSD_E0_S16_2701255896p1,
'AFD:SSD_E0_S05_2701256380P1' name SSD_E0_S05_2701256380p1,
'AFD:SSD_E0_S11_2701257468P1' name SSD_E0_S11_2701257468p1,
'AFD:SSD_E0_S15_2701258144P1' name SSD_E0_S15_2701258144p1,
'AFD:SSD_E0_S06_2701258544P1' name SSD_E0_S06_2701258544p1,
'AFD:SSD_E0_S12_2701258588P1' name SSD_E0_S12_2701258588p1,
'AFD:SSD_E0_S10_2701259504P1' name SSD_E0_S10_2701259504p1,
'AFD:SSD_E0_S18_2701260436P1' name SSD_E0_S18_2701260436p1
kfdp_query: callcnt 338 grp 1 (DATA)
kfdp_query: callcnt 339 grp 1 (DATA)
NOTE: Assigning number (1,5) to disk (AFD:SSD_E0_S08_2701228196P1)
Disk 0x777d6080 (1:5:AFD:SSD_E0_S08_2701228196P1) is being named (SSD_E0_S08_2701228196P1)
NOTE: Assigning number (1,6) to disk (AFD:SSD_E0_S07_2701240428P1)
Disk 0x777d5708 (1:6:AFD:SSD_E0_S07_2701240428P1) is being named (SSD_E0_S07_2701240428P1)
NOTE: Assigning number (1,7) to disk (AFD:SSD_E0_S14_2701241428P1)
Disk 0x777d9950 (1:7:AFD:SSD_E0_S14_2701241428P1) is being named (SSD_E0_S14_2701241428P1)
NOTE: Assigning number (1,8) to disk (AFD:SSD_E0_S17_2701244644P1)
Disk 0x777db5b8 (1:8:AFD:SSD_E0_S17_2701244644P1) is being named (SSD_E0_S17_2701244644P1)
NOTE: Assigning number (1,9) to disk (AFD:SSD_E0_S19_2701246564P1)
Disk 0x777dc8a8 (1:9:AFD:SSD_E0_S19_2701246564P1) is being named (SSD_E0_S19_2701246564P1)
NOTE: Assigning number (1,10) to disk (AFD:SSD_E0_S09_2701252584P1)
Disk 0x777d69f8 (1:10:AFD:SSD_E0_S09_2701252584P1) is being named (SSD_E0_S09_2701252584P1)
NOTE: Assigning number (1,11) to disk (AFD:SSD_E0_S13_2701254148P1)
Disk 0x777d8fd8 (1:11:AFD:SSD_E0_S13_2701254148P1) is being named (SSD_E0_S13_2701254148P1)
NOTE: Assigning number (1,12) to disk (AFD:SSD_E0_S16_2701255896P1)
Disk 0x777dac40 (1:12:AFD:SSD_E0_S16_2701255896P1) is being named (SSD_E0_S16_2701255896P1)
NOTE: Assigning number (1,13) to disk (AFD:SSD_E0_S05_2701256380P1)
Disk 0x777d4418 (1:13:AFD:SSD_E0_S05_2701256380P1) is being named (SSD_E0_S05_2701256380P1)
NOTE: Assigning number (1,14) to disk (AFD:SSD_E0_S11_2701257468P1)
Disk 0x777d7ce8 (1:14:AFD:SSD_E0_S11_2701257468P1) is being named (SSD_E0_S11_2701257468P1)
NOTE: Assigning number (1,15) to disk (AFD:SSD_E0_S15_2701258144P1)
Disk 0x777da2c8 (1:15:AFD:SSD_E0_S15_2701258144P1) is being named (SSD_E0_S15_2701258144P1)
NOTE: Assigning number (1,16) to disk (AFD:SSD_E0_S06_2701258544P1)
Disk 0x777d4d90 (1:16:AFD:SSD_E0_S06_2701258544P1) is being named (SSD_E0_S06_2701258544P1)
NOTE: Assigning number (1,17) to disk (AFD:SSD_E0_S12_2701258588P1)
Disk 0x777d8660 (1:17:AFD:SSD_E0_S12_2701258588P1) is being named (SSD_E0_S12_2701258588P1)
NOTE: Assigning number (1,18) to disk (AFD:SSD_E0_S10_2701259504P1)
Disk 0x777d7370 (1:18:AFD:SSD_E0_S10_2701259504P1) is being named (SSD_E0_S10_2701259504P1)
NOTE: Assigning number (1,19) to disk (AFD:SSD_E0_S18_2701260436P1)
Disk 0x777dbf30 (1:19:AFD:SSD_E0_S18_2701260436P1) is being named (SSD_E0_S18_2701260436P1)
2019-02-15 16:56:32.926*:kgfm.c@547: kgfmInitialize

Diggin’ into ASM Add Disk to DiskGroup operation

Recently we had to add storage to our X7-HA ODA.  This storage add includes a multi-step process, which is generally handled by the ODA OAK automation.  We simply added the disks in the slot, and the oakd dameon and workflow takes care of the device management.  The key things the oakd automation does is

  • Instantiates the disk device into the OS
  • Build partition tables
  • Create devmapper device names
  • updates the asmappl.config (***DO NOT TOUCH or EDIT THIS FILE..or apocalyptic things will HAPPEN **)
  • Generate a ASM disk add commands to added the disks to DATA and RECO diskgroups in the 80-20% pre-defined configuration.

This blog will cover the disk part and walk you through trace file.  I’ll blog about the automation stuff later

If you peak at the oakd.log or look in the ASM alert.log, you’ll see the actual command that gets executed.I have shown only the DATA dg disk add operation.    The RECO operation is the same but uses disk partitin P2.

My comments are inline:

SQL> ALTER DISKGROUP /*+ _OAK_AsmCookie */ DATA ADD DISK   <- This OAK ASM Cookie invokes ODA specific backend operations
‘AFD:SSD_E0_S05_2701246684P1’ NAME SSD_E0_S05_2701246684P1,   <– This is the list of disks that will be added to ODA
‘AFD:SSD_E0_S06_2701246400P1’ NAME SSD_E0_S06_2701246400P1,
‘AFD:SSD_E0_S07_2701243880P1’ NAME SSD_E0_S07_2701243880P1,
‘AFD:SSD_E0_S08_2701246408P1’ NAME SSD_E0_S08_2701246408P1,
‘AFD:SSD_E0_S09_2701257952P1’ NAME SSD_E0_S09_2701257952P1,
‘AFD:SSD_E0_S10_2701255368P1’ NAME SSD_E0_S10_2701255368P1,
‘AFD:SSD_E0_S11_2701247132P1’ NAME SSD_E0_S11_2701247132P1,
‘AFD:SSD_E0_S12_2701246568P1’ NAME SSD_E0_S12_2701246568P1,
‘AFD:SSD_E0_S13_2701251260P1’ NAME SSD_E0_S13_2701251260P1,
‘AFD:SSD_E0_S14_2701259824P1’ NAME SSD_E0_S14_2701259824P1,
‘AFD:SSD_E0_S15_2701255760P1’ NAME SSD_E0_S15_2701255760P1,
‘AFD:SSD_E0_S16_2701229772P1’ NAME SSD_E0_S16_2701229772P1,
‘AFD:SSD_E0_S17_2701232460P1’ NAME SSD_E0_S17_2701232460P1,
‘AFD:SSD_E0_S18_2701257420P1’ NAME SSD_E0_S18_2701257420P1,
‘AFD:SSD_E0_S19_2701253140P1’ NAME SSD_E0_S19_2701253140P1
kfdp_query: callcnt 78 grp 1 (DATA)                                  <– Its being added to DATA
kfdp_query: callcnt 79 grp 1 (DATA)
NOTE: Assigning number (1,5) to disk (AFD:SSD_E0_S05_2701246684P1) . <– Each disk is assigned a disk#
Disk 0x766f50e0 (1:5:AFD:SSD_E0_S05_2701246684P1) is being named (SSD_E0_S05_2701246684P1)
NOTE: Assigning number (1,6) to disk (AFD:SSD_E0_S06_2701246400P1)
2019-02-21 14:37:14.762*:kgfm.c@547: kgfmInitialize          <– Here the disks get initialized, using an array 
2019-02-21 14:37:14.763*:kgf.c@926: kgfArray_construct 0x7f2e648af208 len=0 nsegs=0
2019-02-21 14:37:14.763*:kgf.c@926: kgfArray_construct 0x7f2e648b75a0 len=0 nsegs=0
2019-02-21 14:37:14.763*:kgf.c@926: kgfArray_construct 0x7f2e69a676e8 len=0 nsegs=0
…<deleted repeated lines>

<– kgfmReadOak reads in OAK configuration information into memory structures

2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: max_disk_count is 100
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [max_disk_count] = [100]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=0->1 nsegs=0->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: appliance_name is ODA
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [appliance_name] = [ODA]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=1->2 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: diskstring is AFD:*
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [diskstring] = [AFD:*]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=2->3 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: file_version is 2
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [file_version] = [2]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=3->4 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: oda_version is 3
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [oda_version] = [3]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=4->5 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: jbod_count is 1
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [jbod_count] = [1]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=5->6 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: jbod_slot_count is 24 <– all 24 slots in the ODA are filled
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [jbod_slot_count] = [24]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=6->7 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: data_slot_count is 20 . <– 20 disks for DATA DG
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [data_slot_count] = [20]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=7->8 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: reco_slot_count is 20
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [reco_slot_count] = [20]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=8->9 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: redo_slot_count is 4       <– 4 disks for REDO DG
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [redo_slot_count] = [4]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=9->10 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: max_missing is 0
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [max_missing] = [0]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=10->11 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: min_partners is 2
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [min_partners] = [2]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=11->12 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: agent_sql_identifier is /*+ _OAK_AsmCookie
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [agent_sql_identifier] = [/*+ _OAK_AsmCookie ]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=12->13 nsegs=1->1
2019-02-21 14:37:14.763*:kgfm.c@1773: kgfmReadOak: rdbms_compatibility is 12.1.0.2
2019-02-21 14:37:14.763*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [rdbms_compatibility] = [12.1.0.2]
2019-02-21 14:37:14.763*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=13->14 nsegs=1->1
2019-02-21 14:37:14.764*:kgfm.c@1773: kgfmReadOak: asm_compatibility is 12.2.0.1
2019-02-21 14:37:14.764*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [asm_compatibility] = [12.2.0.1]
2019-02-21 14:37:14.764*:kgf.c@1025: kgfArray_grow 0x7f2e69a77e90 len=14->15 nsegs=1->1
2019-02-21 14:37:14.764*:kgfm.c@1773: kgfmReadOak: _asm_hbeatiowait is 100
2019-02-21 14:37:14.764*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [_asm_hbeatiowait] = [100]

This next section starts the disk association and partnership mapping

[

2019-02-21 14:37:14.769*:kgfm.c@2857: kgfmAddDisk: enc=0 slot=23 part=1 path=AFD:SSD_E0_S23_2181135920P1
2019-02-21 14:37:14.769*:kgf.c@1025: kgfArray_grow 0x7f2e648af208 len=0->1 nsegs=0->1
2019-02-21 14:37:14.769*:kgf.c@1025: kgfArray_grow 0x7f2e69a63530 len=0->24 nsegs=0->1
2019-02-21 14:37:14.769*:kgfm.c@1968: kgfmReadOak: disk 23 partners [ 2019-02-21 14:37:14.769*:kgfm.c@1970: 22 2019-02-21 14:37:14.769*:kgfm.c@1970: 21 2019-02-21 14:37:14.769*:kgfm.c@1970: 20 2019-02-21 14:37:14.769*:kgfm.c@1971: ]

[

2019-02-21 14:37:14.770*:kgfm.c@2857: kgfmAddDisk: enc=0 slot=22 part=1 path=AFD:SSD_E0_S22_2181131148P1
2019-02-21 14:37:14.770*:kgf.c@1025: kgfArray_grow 0x7f2e648af208 len=1->2 nsegs=1->1
2019-02-21 14:37:14.770*:kgfm.c@1968: kgfmReadOak: disk 22 partners [ 2019-02-21 14:37:14.770*:kgfm.c@1970: 23 2019-02-21 14:37:14.770*:kgfm.c@1970: 21 2019-02-21 14:37:14.770*:kgfm.c@1970: 20 2019-02-21 14:37:14.770*:kgfm.c@1971: ]

This repeated for every disk in the ODA

….

Define DiskGroup Attributes –

2019-02-21 14:37:14.774*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [agent_sql_identifier] = [/*+ _OAK_AsmCookie ]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [oda_version] = [1]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [jbod_count] = [1]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [jbod_slot_count] = [24]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [data_slot_count] = [20]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [reco_slot_count] = [20]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [redo_slot_count] = [4]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [diskstring] = [(null)]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [appliance_name] = [ODA]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [agent_sql_identifier] = [/* ASM Appliance Agent */]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [asm_compatibility] = [11.2.0.3]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [rdbms_compatibility] = [11.2.0.2]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [max_disk_count] = [100]
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 0 [_asm_hbeatiowait] = [0]
2019-02-21 14:37:14.775*:kgfm.c@2643: kgfmStaticCardinatliy: odaver 3 njbods 1 tmpl 1 card0 3 card1 3
2019-02-21 14:37:14.775*:kgfm.c@2643: kgfmStaticCardinatliy: odaver 3 njbods 1 tmpl 1 card0 5 card1 5
2019-02-21 14:37:14.775*:kgfm.c@2954: kgfmAddAttribute: tmpl 1 [max_missing] = [0]

NOTE: running client discovery for group 1 (reqid:7106731798842955164)

<– AT this point the disks are added and  client (database) re-discovers the diskgroup

*** 2019-02-21T14:37:20.381245-05:00
NOTE: running client discovery for group 1 (reqid:7106731798842926578)

*** 2019-02-21T14:37:21.421653-05:00
kfdp_updateReconf(): callcnt 80 grp 1 scope 0x204 .  <–Once you see kfdp_updateReconf …its DONE!
NOTE: group 1 PST updated.
PST verChk [reconf]: id=46860409, grp=1, requested=9 at 02/21/2019 14:37:21
PST verChk [reconf]: id=46860409 grp=1 completed at 02/21/2019 14:37:21

Part Null – Adding Disks to ODA – The Procedure

Adding Solid-State Drives (SSDs) for ODA Data Storage (non-Expansion)

 

There are cases when customers will need to expand the initial storage of the Oracle Database Appliance [ODA].  There are two use cases for such a scenario; one, where storage will be expanded in the existing enclosure 0, second, when attaching an additional enclosure (en1).  The latter is referred to as a storage unit expansion.  In the example below, we will be adding a pack of solid-state drives (SSDs) for data storage into the existing Oracle Database Appliance X7-2-HA base configuration (en0) to fully populate the base storage shelf. When ordering and adding storage, to the base configuration, you can order one, two, or three 5-pack of SSDs to complete the base configuration on Oracle Database Appliance X7-2-HA.

Before adding the disks to the system, ensure that ODA is on the latest update version.

# odacli describe-component

System Version 

—————

12.2.1.4.0

 

System node Name

—————

zsc-oda0-0

 

Local System Version

—————

12.2.1.4.0

 

Component                                Installed Version    Available Version  

—————————————- ——————– ——————–

OAK                                       12.2.1.4.0            up-to-date         

 

GI                                        12.2.0.1.180417       up-to-date         

 

DB                                        12.1.0.2.180116       12.1.0.2.180417    

 

DCSAGENT                                  18.2.1.0.0            up-to-date         

 

ILOM                                      4.0.2.20.b.r123704    up-to-date         

 

BIOS                                      41021300              up-to-date         

 

OS                                        6.9                   up-to-date         

 

FIRMWARECONTROLLER                        13.00.00.00           up-to-date         

 

FIRMWAREEXPANDER                          0304                  0306               

 

FIRMWAREDISK {

[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d20,c1d21,   A122                  up-to-date         

c1d22,c1d23,c2d0,c2d1,c2d2,c2d3,c2d4,                                              

c2d20,c2d21,c2d22,c2d23 ]                                                          

}

 

  1. To add three 5-pack of SSDs, insert the disks in slots 5 to 19.
 Insert disks one at a time in the slots.

 

Note:Allow at least one minute between inserting each disk to avoid flooding of disk events into oakd.

After all disks are added, move on to Step 3.

 

  1. Since the firmware of the controller is older than the disks being added. The storage firmware will need to be upgraded.

 

# odacli update-storage -v 12.2.14.0 (this update on both nodes)

 

Or

 

If any disks are older then their firware needs to be upgraded (specifically for those disks):

fwupdate list disk -n <disk name> -v

 

All disk firmware is located under directory /opt/oracle/oak/pkgrepos/thirdpartypkgs/Firmware/Disk

 

Using the output from the “fwupdate list disk” command, apply the appropriate firmware to the disk

fwupdate update disk-firmware -n <cXdX> -f <path to firmware>

 

 

  1. Run the odaadmcli show ismaster command to determine which node is the master.

# odaadmcli show ismaster



 

  1. Run the odaadmcli expand storage command from the master node.

# odaadmcli expand storage -ndisk 15 (number of disks to be added ) -enclosure enclosure number of the disks to be added, either 0 or 1

 

# odaadmcli expand storage -ndisk 15 -enclosure 0

Precheck passed.

Check the progress of expansion of storage by executing ‘odaadmcli show disk’

Waiting for expansion to finish …

Run the command immediately on the slave node.

  1. Execute the odaadmcli expand storage command on the slave node.

#odaadmcli expand storage -ndisk 15 -enclosure 0

Precheck passed.

Check the progress of expansion of storage by executing ‘odaadmcli show disk’

Waiting for expansion to finish …

 

It takes 15-20 minutes to add all of the disks to the configuration. Periodically check the status of the disks inserted to ensure the state changes from “invaid” à “newinserted” à“uninitialized” to à “installed”

 

  1. Run the odaadmcli show disk command to ensure that all disks are listed, are online, and are in a good state.

# odaadmcli show disk

 

  1. Verify that the disks in slots 5 to 19 are added to ASM

 

  1. Run the asm_script to verify that the disks in slots 5 to 19 are added to ASM. If the 15 disks are successfully added (CACHED and MEMBER), then go to Step 9.

 

su grid user /opt/oracle/oak/bin/stordiag/asm_script.sh 1 6

 

For example:

#/opt/oracle/oak/bin/stordiag/asm_script.sh 1 6 | grep CACHED

…….

/dev/mapper/SSD_E0_S05_1399652120p1 SSD_E0_S05_1399652120P1 1 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S05_1399652120p2 SSD_E0_S05_1399652120P2 3 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S06_1399645200p1 SSD_E0_S06_1399645200P1 1 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S06_1399645200p2 SSD_E0_S06_1399645200P2 3 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S07_1399646692p1 SSD_E0_S07_1399646692P1 1 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S07_1399646692p2 SSD_E0_S07_1399646692P2 3 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S08_1399649840p1 SSD_E0_S08_1399649840P1 1 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S08_1399649840p2 SSD_E0_S08_1399649840P2 3 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S09_1399649424p1 SSD_E0_S09_1399649424P1 1 NORMAL ONLINE CACHED MEMBER

/dev/mapper/SSD_E0_S09_1399649424p2 SSD_E0_S09_1399649424P2 3 NORMAL ONLINE CACHED MEMBER

 

  1. Use the odaadmcli show validation storage errors command to show hard storage errors.   Hard errors include having the wrong type of disk inserted into a particular slot, an invalid disk model, or an incorrect disk size.

# odaadmcli show validation storage errors


 

  1. Use the odaadmcli show validation storage failures command to show soft validation errors. A typical soft disk error would be an invalid version of the disk firmware.

# odaadmcli show validation storage failures


 

  1. If the disks are not added to ASM, then add them manually. As grid user, execute the sqlplus command on the master node to add the disks to ASM.

 

 

For a system with ASM Filter Driver configured, add the Oracle ASM disks as follows:

 

SQL> alter diskgroup /*+ _OAK_AsmCookie */ data add disk

AFD:SSD_E0_S05_2701256380P1’ name SSD_E0_S05_2701256380P1,

AFD:SSD_E0_S06_2701258544P1 name SSD_E0_S06_2701258544P1,

AFD:SSD_E0_S07_2701240428P1 name SSD_E0_S07_2701240428P1,

AFD:SSD_E0_S08_2701228196P1 name SSD_E0_S08_2701228196P1,

AFD:SSD_E0_S09_2701252584P1 name SSD_E0_S09_2701252584P1,

AFD:SSD_E0_S10_2701259504P1 name SSD_E0_S10_2701259504P1,

AFD:SSD_E0_S11_2701257468P1 name SSD_E0_S11_2701257468P1,

AFD:SSD_E0_S12_2701258588P1 name SSD_E0_S12_2701258588P1,

AFD:SSD_E0_S13_2701254148P1 name SSD_E0_S13_2701254148P1,

AFD:SSD_E0_S14_2701241428P1 name SSD_E0_S14_2701241428P1,

AFD:SSD_E0_S15_2701258144P1 name SSD_E0_S15_2701258144P1,

AFD:SSD_E0_S16_2701255896P1 name SSD_E0_S16_2701255896P1,

AFD:SSD_E0_S17_2701244644P1 name SSD_E0_S17_2701244644P1,

AFD:SSD_E0_S18_2701260436P1 name SSD_E0_S18_2701260436P1,

AFD:SSD_E0_S19_2701246564P1 name SSD_E0_S19_2701246564P1

power level 8;

 

 

SQL> alter diskgroup /*+ _OAK_AsmCookie */ reco add disk

AFD:SSD_E0_S05_2701256380P2 name SSD_E0_S05_2701256380P2,

AFD:SSD_E0_S06_2701258544P2 name SSD_E0_S06_2701258544P2,

AFD:SSD_E0_S07_2701240428P2 name SSD_E0_S07_2701240428P2,

AFD:SSD_E0_S08_2701228196P2 name SSD_E0_S08_2701228196P2,

AFD:SSD_E0_S09_2701252584P2 name SSD_E0_S09_2701252584P2,

AFD:SSD_E0_S10_2701259504P2 name SSD_E0_S10_2701259504P2,

AFD:SSD_E0_S11_2701257468P2 name SSD_E0_S11_2701257468P2,

AFD:SSD_E0_S12_2701258588P2 name SSD_E0_S12_2701258588P2,

AFD:SSD_E0_S13_2701254148P2 name SSD_E0_S13_2701254148P2,

AFD:SSD_E0_S14_2701241428P2 name SSD_E0_S14_2701241428P2,

AFD:SSD_E0_S15_2701258144P2 name SSD_E0_S15_2701258144P2,

AFD:SSD_E0_S16_2701255896P2 name SSD_E0_S16_2701255896P2,

AFD:SSD_E0_S17_2701244644P2 name SSD_E0_S17_2701244644P2,

AFD:SSD_E0_S18_2701260436P2 name SSD_E0_S18_2701260436P2,

AFD:SSD_E0_S19_2701246564P2 name SSD_E0_S19_2701246564P2

power level 8;



 

 

For a system without ASM Filter Driver configured, use the /dev/mapper name for ASM disks; e.g.,

SQL> alter diskgroup /*+ _OAK_AsmCookie */ data add disk

‘/dev/mapper/SSD_E0_S05_1399764284p1’ name SSD_E0_S05_1399764284p1,

  1. Confirm that the oak_storage_conf.xml file shows 24 on both nodes.

#cat /opt/oracle/oak/conf/oak_storage_conf.xml

Expanding /u01 filesystem on Oracle Database Appliance

vna

Recently I had to expand the /u01 on our ODA because we were in the process of consolidating several new Oracle database systems, each with their own Oracle Homes (don’t ask….its what the lines of business wanted).

Although lot of this is just a simple Linux LVM stuff…I feel it warrants a blog entry….since folks view an ODA as different beast 🙂

[root@vna-oda1-0 ~]# pvdisplay

  — Physical volume —

  PV Name               /dev/md1

  VG Name               VolGroupSys

  PV Size               446.03 GiB / not usable 29.00 MiB

  Allocatable           yes 

  PE Size               32.00 MiB

  Total PE              14272

  Free PE               7424

  Allocated PE          6848

  PV UUID               Kw1O64-n9j0-4OW7-yUCZ-8FHc-HKug-mOPyP4

[root@vna-oda1-0 ~]# df -m /u01

Filesystem           1M-blocks  Used Available Use% Mounted on

/dev/mapper/VolGroupSys-LogVolU01

                        100666 64564     30982  68% /u01

[root@vna-oda1-0 ~]# lvdisplay /dev/mapper/VolGroupSys-LogVolU01

  — Logical volume —

  LV Path                /dev/VolGroupSys/LogVolU01

  LV Name                LogVolU01

  VG Name                VolGroupSys

  LV UUID                UGVuZY-Xia1-u0Th-TaZ2-JF9Q-FH01-jDVfOn

  LV Write Access        read/write

  LV Creation host, time localhost.localdomain, 2018-05-23 13:14:22 -0400

  LV Status              available

  # open                 1

  LV Size                100.00 GiB

  Current LE             3200

  Segments               1

  Allocation             inherit

  Read ahead sectors     auto

  – currently set to     256

  Block device           249:40

[root@vna-oda1-0 ~]# df -kh 

Filesystem            Size  Used Avail Use% Mounted on

/dev/mapper/VolGroupSys-LogVolRoot

                       30G  5.8G   23G  21% /

tmpfs                 378G  1.3G  376G   1% /dev/shm

/dev/md0              477M  115M  338M  26% /boot

/dev/sda1             500M  304K  500M   1% /boot/efi

/dev/mapper/VolGroupSys-LogVolOpt

                       59G   36G   21G  64% /opt

/dev/mapper/VolGroupSys-LogVolU01

                       99G   64G   31G  68% /u01

lvextend –size +50G /dev/VolGroupSys/LogVolU01

  Size of logical volume VolGroupSys/LogVolU01 changed from 100.00 GiB (3200 extents) to 150.00 GiB (4800 extents).

  Logical volume LogVolU01 successfully resized.

[root@vna-oda0-0 oak]# 

[root@vna-oda0-0 oak]# 

[root@vna-oda0-0 oak]# lvdisplay /dev/mapper/VolGroupSys-LogVolU01

  — Logical volume —

  LV Path                /dev/VolGroupSys/LogVolU01

  LV Name                LogVolU01

  VG Name                VolGroupSys

  LV UUID                g2CMK8-kERY-43uu-p0ZD-V5In-otaL-S2zSdX

  LV Write Access        read/write

  LV Creation host, time localhost.localdomain, 2018-05-21 11:04:34 -0400

  LV Status              available

  # open                 1

  LV Size                150.00 GiB

  Current LE             4800

  Segments               2

  Allocation             inherit

  Read ahead sectors     auto

  – currently set to     256

  Block device           249:25

[root@vna-oda0-0 oak]# resize2fs /dev/VolGroupSys/LogVolU01

resize2fs 1.43-WIP (20-Jun-2013)

Filesystem at /dev/VolGroupSys/LogVolU01 is mounted on /u01; on-line resizing required

old_desc_blocks = 7, new_desc_blocks = 10

Performing an on-line resize of /dev/VolGroupSys/LogVolU01 to 39321600 (4k) blocks.

The filesystem on /dev/VolGroupSys/LogVolU01 is now 39321600 blocks long.

 

ODA Component Installed Versions vs Available Versions

We recently added new storage to our ODA X7-HA (enclosure0), and noticed that the Component Installed Versions was higher than the Available Version. This seen in the
odacli describe-component output, specifically for the disks. So how can the Installed Version be higher than Available and is this bad?

No its not, and this can happen for the scenarios we are in; ie, we installed brand new drive sets (3, 5-packs to be specific). The new drives are A170 and original drives are A122. This seen in the fwupdate list disk command.

# odacli describe-component
System Version
—————
12.2.1.4.0

System node Name
—————
vna-oda0-1

Local System Version
—————
12.2.1.4.0

Component           Installed Version      Available Version
—————————————- ——————–
OAK                 12.2.1.4.0              up-to-date

GI                  12.2.0.1.180417         up-to-date

DCSAGENT            18.2.1.0.0              up-to-date

ILOM                4.0.2.20.b.r123704      up-to-date

BIOS                41021300                up-to-date

OS                   6.9                    up-to-date

FIRMWARECONTROLLER   13.00.00.00            up-to-date

FIRMWAREEXPANDER      0304                   0306

FIRMWAREDISK {
[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d20,c1d21, A122 up-to-date
c1d22,c1d23,c2d0,c2d1,c2d2,c2d3,c2d4,
c2d20,c2d21,c2d22,c2d23 ]
[ c1d5,c1d6,c1d7,c1d8,c1d9,c1d10,c1d11, A170 a122
c1d12,c1d13,c1d14,c1d15,c1d16,c1d17,
c1d18,c1d19,c2d5,c2d6,c2d7,c2d8,c2d9,
c2d10,c2d11,c2d12,c2d13,c2d14,c2d15,
c2d16,c2d17,c2d18,c2d19 ]
}

 

OCI-PeopleSoft Deployment Guide

This paper illustrates how Oracle and Platinum Partner, Viscosity North America, developed a joint cookbook-approach for provisioning a PeopleSoft application on Oracle Cloud Infrastructure configuration; including network, compute, database, load balancing service, and storage. The second section of this paper describes the migration of an on- premise PeopleSoft Database to the Oracle Cloud Infrastructure.

OCI-PeopleSoft Deployment Guide_v9_final

Quick Clip #2 – “How to Create a AWS RDS”

From the AWS site:

Amazon RDS is a web service that makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database administration tasks, which allows you to focus on your applications and business. Amazon RDS gives you access to the full capabilities of a MySQL, Oracle, SQL Server, or Amazon Aurora database engine, meaning that the code, applications, and tools you already use today with your existing databases can be used with Amazon RDS.

The following post simply drops a video on How to Create and Launch AWS RDS (MySQL):

 

Posted in AWS.

How to handle ODA dangling job entries from a failed ODA odacli operation

odacli delete db issues

On Oracle Database Appliance ODA X7-HA (12.2.1.2), I created a database call TEST database using odacli create-database command, then I ripped out the current “freshly created” datafiles and used RMAN duplicate command to restored the datafiles. It went alright without any issues. However last week, I decided to delete this TEST database , and it hang for a long time on “Deleting Datafiles” steps. I have a feeling that odacli didn’t recognize the “restored” database files. 

The only reason I know it was “Deleting Datafiles” steps is because I did “odacli describe-job”. 

I wish there is a force delete dbhome command from odacli, or unregister database command. This database I was trying to delete is the one that I cloned from our TEST EBS database. 

[root@vnanode0 ~]# odacli list-dbstorages 

DCS-10032:Resource db storage is not found.

Unable to delete (cloned database from non-oda platform) database., odacli delete database hangs 

[root@vnanode0 ~]# odacli delete-database -i d488be55-d2af-4615-a766-5f230fc48aff -fd 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“status” : “Running”, 

“message” : null, 

“reports” : [ { 

“taskId” : “TaskZJsonRpcExt_2126”, 

“taskName” : “Validate db d488be55-d2af-4615-a766-5f230fc48aff for deletion”, 

“taskResult” : “Success”, 

“startTime” : “June 05, 2018 15:33:41 PM EDT”, 

“endTime” : “June 05, 2018 15:33:41 PM EDT”, 

“status” : “Success”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info”, 

“updatedTime” : “June 05, 2018 15:33:41 PM EDT” 

} ], 

“createTimestamp” : “June 05, 2018 15:33:41 PM EDT”, 

“resourceList” : [ ], 

“description” : “Database service deletion with db name: TEST with id : d488be55-d2af-4615-a766-5f230fc48aff”, 

“updatedTime” : “June 05, 2018 15:33:41 PM EDT” 

[root@vnanode0 ~]# odacli list-databases 

ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID 

—————————————- ———- ——– ——————– ———- ——– ——– ———- ———— —————————————- 

d488be55-d2af-4615-a766-5f230fc48aff TEST RacOne 12.1.0.2 false IMDB odb16 ACFS Deleting da48243e-2d6f-47e5-ae8a-7f958cf5bbbf

[root@vnanode0 ~]# odacli describe-job -i 8bb544f6-4f24-4e18-900a-71bf5ef7f383 

Job details 

—————————————————————- 

ID: 8bb544f6-4f24-4e18-900a-71bf5ef7f383 

Description: Database service deletion with db name: TEST with id : d488be55-d2af-4615-a766-5f230fc48aff 

Status: Failure 

Created: June 4, 2018 7:56:47 AM EDT 

Message: DCS-10011:Input parameter ‘ACFS Device for delete’ cannot be NULL. 

Task Name Start Time End Time Status 

————————————————– ———————————– ———————————– ———- 

database Service deletion for d488be55-d2af-4615-a766-5f230fc48aff June 4, 2018 7:56:47 AM EDT June 4, 2018 7:56:52 AM EDT Failure 

database Service deletion for d488be55-d2af-4615-a766-5f230fc48aff June 4, 2018 7:56:47 AM EDT June 4, 2018 7:56:52 AM EDT Failure 

Validate db d488be55-d2af-4615-a766-5f230fc48aff for deletion June 4, 2018 7:56:47 AM EDT June 4, 2018 7:56:47 AM EDT Success 

Database Deletion June 4, 2018 7:56:47 AM EDT June 4, 2018 7:56:48 AM EDT Success 

Unregister Db From Cluster June 4, 2018 7:56:48 AM EDT June 4, 2018 7:56:48 AM EDT Success 

Kill Pmon Process June 4, 2018 7:56:48 AM EDT June 4, 2018 7:56:48 AM EDT Success 

Database Files Deletion June 4, 2018 7:56:48 AM EDT June 4, 2018 7:56:48 AM EDT Success 

Deleting FileSystem June 4, 2018 7:56:50 AM EDT June 4, 2018 7:56:52 AM EDT Failure <<<<<<<<<<<<<<<<<<<<<<<<<<< Shows Failure in Deleting FileSystem 

Even odacli delete-database -i <dbid> -fd.   Also Failed

Bug 27048646 was filed to support deleting and cleaning up the database entries. 

[root@vnanode0 ~]# odacli list-databases 

ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID 

—————————————- ———- ——– ——————– ———- ——– ——– ———- ———— —————————————- 

d488be55-d2af-4615-a766-5f230fc48aff TEST RacOne 12.1.0.2 false IMDB odb16 ACFS Deleting da48243e-2d6f-47e5-ae8a-7f958cf5bbbf 

From dcs-agent.log: 

————————- 

2018-06-04 07:56:49,405 DEBUG [Stopping FileSyestem] [] c.o.d.c.u.CommonsUtils: 

run: cmd= ‘[su, 

-, 

oracle, 

-c, 

export ORACLE_SID=+ASM1; 

export ORACLE_HOME=/u01/app/12.2.0.1/oracle; 

/u01/app/12.2.0.1/oracle/bin/asmcmd –nocp volinfo -G Data datTEST]’ 

2018-06-04 07:56:50,225 DEBUG [Stopping FileSyestem] [] c.o.d.c.u.c.CommandExecutor: Return code: 0 

2018-06-04 07:56:50,225 DEBUG [Stopping FileSyestem] [] c.o.d.c.u.CommonsUtils: Output : 

volume datTEST not found in diskgroup Data 

2018-06-04 07:56:50,225 ERROR [Stopping FileSyestem] [] c.o.d.a.r.s.s.VolumeUtils: Failed to get the acfs device for the volume datTEST in the disk group Data

… 

2018-06-06 10:01:00,902 INFO [dw-2755 – GET /jobs/bb7bc2e3-94f2-4523-b901-32257f493e68] [] c.o.d.a.r.JobsApi: Received GET request to getJobDetail on JobsApi with jobid = bb7bc2e3-94f2-4523-b901-32257f493e68 

2018-06-06 10:01:00,908 DEBUG [dw-2755 – GET /jobs/bb7bc2e3-94f2-4523-b901-32257f493e68] [] c.o.d.c.t.r.ReportApi: Job Report: 

“updatedTime” : 1528227225929, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“status” : “Failure”, 

“message” : “DCS-10011:Input parameter ‘ACFS Device for delete’ cannot be NULL.”, 

“reports” : [ { 

“updatedTime” : 1528227225922, 

“startTime” : 1528227221448, 

“endTime” : 1528227225922, 

“taskId” : “TaskZLockWrapper_2123”, 

“status” : “Failure”, 

“taskResult” : “DCS-10011:Input parameter ‘ACFS Device for delete’ cannot be NULL.”, 

“taskName” : “database Service deletion for d488be55-d2af-4615-a766-5f230fc48aff”, 

“taskDescription” : null, 

“parentTaskId” : “TaskServiceRequest_2122”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Error” 

}, { 

“updatedTime” : 1528227225917, 

“startTime” : 1528227221467, 

“endTime” : 1528227225917, 

“taskId” : “TaskSequential_2124”, 

“status” : “Failure”, 

“taskResult” : “DCS-10011:Input parameter ‘ACFS Device for delete’ cannot be NULL.”, 

“taskName” : “database Service deletion for d488be55-d2af-4615-a766-5f230fc48aff”, 

“taskDescription” : null, 

“parentTaskId” : “TaskZLockWrapper_2123”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Error” 

}, { 

“updatedTime” : 1528227221491, 

“startTime” : 1528227221484, 

“endTime” : 1528227221491, 

“taskId” : “TaskZJsonRpcExt_2126”, 

“status” : “Success”, 

“taskResult” : “Success”, 

“taskName” : “Validate db d488be55-d2af-4615-a766-5f230fc48aff for deletion”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info” 

}, { 

“updatedTime” : 1528227222042, 

“startTime” : 1528227221581, 

“endTime” : 1528227222042, 

“taskId” : “TaskZJsonRpcExt_2138”, 

“status” : “Success”, 

“taskResult” : “database deleted successfully”, 

“taskName” : “Database Deletion”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info” 

}, { 

“updatedTime” : 1528227222224, 

“startTime” : 1528227222050, 

“endTime” : 1528227222224, 

“taskId” : “TaskZJsonRpcExt_2140”, 

“status” : “Success”, 

“taskResult” : “database unregistered from cluster successfully”, 

“taskName” : “Unregister Db From Cluster”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info” 

}, { 

“updatedTime” : 1528227222371, 

“startTime” : 1528227222316, 

“endTime” : 1528227222371, 

“taskId” : “TaskZJsonRpcExt_2144”, 

“status” : “Success”, 

“taskResult” : “pmon process of database killed successfully”, 

“taskName” : “Kill Pmon Process”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info” 

}, { 

“updatedTime” : 1528227222739, 

“startTime” : 1528227222561, 

“endTime” : 1528227222739, 

“taskId” : “TaskZJsonRpcExt_2148”, 

“status” : “Success”, 

“taskResult” : “database files deleted successfully”, 

“taskName” : “Database Files Deletion”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Info” 

}, { 

“updatedTime” : 1528227225908, 

“startTime” : 1528227224546, 

“endTime” : 1528227225908, 

“taskId” : “TaskZJsonRpcExt_2152”, 

“status” : “Failure”, 

“taskResult” : “DCS-10011:Input parameter ‘ACFS Device for delete’ cannot be NULL.”, 

“taskName” : “Deleting FileSystem”, 

“taskDescription” : null, 

“parentTaskId” : “TaskSequential_2124”, 

“jobId” : “bb7bc2e3-94f2-4523-b901-32257f493e68”, 

“tags” : [ ], 

“reportLevel” : “Error” 

} ], 

“createTimestamp” : 1528227221408, 

“resourceList” : [ ], 

“description” : “Database service deletion with db name: TEST with id : d488be55-d2af-4615-a766-5f230fc48aff” 

————————- 

Resolution – NOTE!!! Only do this with the advisement and clearance of Oracle Support (I did this with OSupport on WebEX)

This required us to manually cleanup the orphan job entires

First, download db-derby-10.11.1.1-lib.zip from the following URL: 

http://db.apache.org/derby/releases/release-10.11.1.1.cgi 

1. download and unzip db-derby-10.11.1.1-lib.zip 

2. Shut down dcsagent: 

# initctl stop initdcsagent 

3. cd /opt/oracle/dcs/repo/ (there must be node_0 under it) 

ls 

node_0 

4. Connect to database and run sql commands to query/remove the rows in the metadata tables. 

# java -cp /root/db-derby-10.11.1.1-bin/lib/derbytools.jar:/root/db-derby-10.11.1.1-bin/lib/derbyclient.jar:/root/db-derby-10.11.1.1-bin/lib/derby.jar org.apache.derby.tools.ij 

ij>connect ‘jdbc:derby:node_0’; 

5. ij>show tables; 

6. ij>select id,name,dbname,dbid,status,DBSTORAGE from db where dbname=’&DELETEDDATABASENAME’; 

>> It should return 1 row for the deleted database 

7. ij> delete from db where dbname=’&DELETEDDATABASENAME’; 

8. ij> commit; 

9. Start dcsagent 

initctl start initdcsagent 

Note we will iterate through steps 6 and 7 to remove everything that shouldn’t be there – may be storage details and locations as well. 

Basically remove anything in the table relating to the old database. 

[root@vnanode0 ~]# odacli list-databases 

DCS-10032:Resource database is not found. 

[root@vnanode0 ~]# odacli list-dbhomes 

ID Name DB Version Home Location Status 

—————————————- ——————– —————————————- ——————————————— ———- 

5afc2dd7-35c2-4ffa-a0cc-2c81ef190e9f OraDB12102_home2 12.1.0.2.171017 (26914423, 26717470) /u01/app/oracle/product/12.1.0.2/dbhome_2 Configured 

How to Create a Single Instance database on ODA on a specific

Yes, this operation does deserve a Blog post, only because its so confusing.  As usual, I show the dcs-agent.log

Odacli create-database for single instance on a specific node

This procedure illustrates the creation of a  single instance database on ODA X7-HA 12.2.1.3

[root@vnaoda1-1 ~]# odacli create-database -n vnasi -cl oltp -dh 75a428db-d173-4ad8-bae3-021a45eeeebf -s odb1 -r ACFS -y SI -g 1 -m

Password for SYS,SYSTEM and PDB Admin:

Job details                                                      

—————————————————————-

                     ID:  9a4f5364-a634-4e0e-b1db-9e81e96123cc

            Description:  Database service creation with db name: vnasi

                 Status:  Created

                Created:  August 20, 2018 10:53:55 PM EDT

                Message: 

Task Name                                Start Time                          End Time                            Status    

—————————————- ———————————– ———————————– ———-

[root@vnaoda1-1 ~]# odacli describe-job -i 9a4f5364-a634-4e0e-b1db-9e81e96123cc

Job details                                                      

—————————————————————-

                     ID:  9a4f5364-a634-4e0e-b1db-9e81e96123cc

            Description:  Database service creation with db name: vnasi

                 Status:  Running

                Created:  August 20, 2018 10:53:55 PM EDT

                Message: 

Task Name                                Start Time                          End Time                            Status    

—————————————- ———————————– ———————————– ———-

Setting up ssh equivalance               August 20, 2018 10:53:55 PM EDT     August 20, 2018 10:53:55 PM EDT     Success   

Creating volume datvnasi                 August 20, 2018 10:53:55 PM EDT     August 20, 2018 10:54:11 PM EDT     Success   

Creating ACFS filesystem for DATA        August 20, 2018 10:54:11 PM EDT     August 20, 2018 10:54:19 PM EDT     Success   

Database Service creation                August 20, 2018 10:54:19 PM EDT     August 20, 2018 10:54:19 PM EDT     Running   

Database Creation                        August 20, 2018 10:54:19 PM EDT     August 20, 2018 10:54:19 PM EDT     Running   

[root@vnaoda1-1 log]# tail  -100 dcs-agent.log

    “endTime” : 1534820059579,

    “taskId” : “TaskZJsonRpcExt_3387”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  } ],

  “createTimestamp” : 1534820035095,

  “resourceList” : [ ],

  “description” : “Database service creation with db name: vnasi”

}

2018-08-20 22:55:28,836 INFO [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.u.d.DcsuserUtil: Authenticate for user: oda-cliadmin

2018-08-20 22:55:28,853 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.a.AgentAuthenticator: auth success

2018-08-20 22:55:28,853 INFO [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.r.JobsApi: Received GET request to getJobDetail on JobsApi with jobid = 9a4f5364-a634-4e0e-b1db-9e81e96123cc

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=9a4f5364-a634-4e0e-b1db-9e81e96123cc jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3335 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3353 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3359 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3386 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskZJsonRpcExt_3387 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ReportApi: Job Report:

{

  “updatedTime” : 1534820035111,

  “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

  “status” : “Running”,

  “message” : null,

  “reports” : [ {

    “updatedTime” : 1534820035750,

    “startTime” : 1534820035720,

    “endTime” : 1534820035750,

    “taskId” : “TaskSequential_3335”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Setting up ssh equivalance”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820051337,

    “startTime” : 1534820035939,

    “endTime” : 1534820051337,

    “taskId” : “TaskSequential_3353”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating volume datvnasi”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059397,

    “startTime” : 1534820051341,

    “endTime” : 1534820059396,

    “taskId” : “TaskSequential_3359”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating ACFS filesystem for DATA”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059576,

    “startTime” : 1534820059575,

    “endTime” : 1534820059575,

    “taskId” : “TaskSequential_3386”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Service creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059580,

    “startTime” : 1534820059579,

    “endTime” : 1534820059579,

    “taskId” : “TaskZJsonRpcExt_3387”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  } ],

  “createTimestamp” : 1534820035095,

  “resourceList” : [ ],

  “description” : “Database service creation with db name: vnasi”

}

[root@vnaoda1-1 log]# tail  -100f dcs-agent.log

    “endTime” : 1534820059579,

    “taskId” : “TaskZJsonRpcExt_3387”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  } ],

  “createTimestamp” : 1534820035095,

  “resourceList” : [ ],

  “description” : “Database service creation with db name: vnasi”

}

2018-08-20 22:55:28,836 INFO [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.u.d.DcsuserUtil: Authenticate for user: oda-cliadmin

2018-08-20 22:55:28,853 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.a.AgentAuthenticator: auth success

2018-08-20 22:55:28,853 INFO [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.a.r.JobsApi: Received GET request to getJobDetail on JobsApi with jobid = 9a4f5364-a634-4e0e-b1db-9e81e96123cc

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=9a4f5364-a634-4e0e-b1db-9e81e96123cc jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3335 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3353 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3359 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Success

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskSequential_3386 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ServiceJobReport: Add TaskReport r.id=TaskZJsonRpcExt_3387 jid=9a4f5364-a634-4e0e-b1db-9e81e96123cc status=Running

2018-08-20 22:55:28,856 DEBUG [dw-31414 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ReportApi: Job Report:

{

  “updatedTime” : 1534820035111,

  “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

  “status” : “Running”,

  “message” : null,

  “reports” : [ {

    “updatedTime” : 1534820035750,

    “startTime” : 1534820035720,

    “endTime” : 1534820035750,

    “taskId” : “TaskSequential_3335”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Setting up ssh equivalance”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820051337,

    “startTime” : 1534820035939,

    “endTime” : 1534820051337,

    “taskId” : “TaskSequential_3353”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating volume datvnasi”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059397,

    “startTime” : 1534820051341,

    “endTime” : 1534820059396,

    “taskId” : “TaskSequential_3359”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating ACFS filesystem for DATA”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059576,

    “startTime” : 1534820059575,

    “endTime” : 1534820059575,

    “taskId” : “TaskSequential_3386”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Service creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059580,

    “startTime” : 1534820059579,

    “endTime” : 1534820059579,

    “taskId” : “TaskZJsonRpcExt_3387”,

    “status” : “Running”,

    “taskResult” : “”,

    “taskName” : “Database Creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  } ],

  “createTimestamp” : 1534820035095,

  “resourceList” : [ ],

  “description” : “Database service creation with db name: vnasi”

}

^C

[root@vnaoda1-1 product]# odacli describe-job -i 9a4f5364-a634-4e0e-b1db-9e81e96123cc

Job details                                                      

—————————————————————-

                     ID:  9a4f5364-a634-4e0e-b1db-9e81e96123cc

            Description:  Database service creation with db name: vnasi

                 Status:  Success

                Created:  August 20, 2018 10:53:55 PM EDT

                Message: 

Task Name                                Start Time                          End Time                            Status    

—————————————- ———————————– ———————————– ———-

Setting up ssh equivalance               August 20, 2018 10:53:55 PM EDT     August 20, 2018 10:53:55 PM EDT     Success   

Creating volume datvnasi                 August 20, 2018 10:53:55 PM EDT     August 20, 2018 10:54:11 PM EDT     Success   

Creating ACFS filesystem for DATA        August 20, 2018 10:54:11 PM EDT     August 20, 2018 10:54:19 PM EDT     Success   

Database Service creation                August 20, 2018 10:54:19 PM EDT     August 20, 2018 11:00:23 PM EDT     Success   

Database Creation                        August 20, 2018 10:54:19 PM EDT     August 20, 2018 10:59:08 PM EDT     Success   

Change permission for xdb wallet files   August 20, 2018 10:59:09 PM EDT     August 20, 2018 10:59:09 PM EDT     Success   

Place SnapshotCtrlFile in sharedLoc      August 20, 2018 10:59:09 PM EDT     August 20, 2018 10:59:10 PM EDT     Success   

Running DataPatch                        August 20, 2018 11:00:09 PM EDT     August 20, 2018 11:00:20 PM EDT     Success   

updating the Database version            August 20, 2018 11:00:20 PM EDT     August 20, 2018 11:00:23 PM EDT     Success   

create Users tablespace                  August 20, 2018 11:00:23 PM EDT     August 20, 2018 11:00:25 PM EDT     Success   

[root@vnaoda1-1 product]# odacli list-databases

ID                                       DB Name    DB Type  DB Version           CDB        Class    Shape    Storage    Status        DbHomeID                                

—————————————- ———- ——– ——————– ———- ——– ——– ———- ———— —————————————-

95dbbc70-3da4-467a-ad17-2740dd5bec2c     PROD       Si       12.1.0.2             false      OLTP     Odb16    ACFS       Configured   75a428db-d173-4ad8-bae3-021a45eeeebf    

c3ffa93a-1050-4257-aa08-4f515f51f8ae     vnasi      Si       12.1.0.2             false      OLTP     Odb1     ACFS       Configured   75a428db-d173-4ad8-bae3-021a45eeeebf    

[root@vnaoda1-1 product]# odacli describe-database -i c3ffa93a-1050-4257-aa08-4f515f51f8ae

Database details                                                  

—————————————————————-

                     ID: c3ffa93a-1050-4257-aa08-4f515f51f8ae

            Description: vnasi

                DB Name: vnasi

             DB Version: 12.1.0.2

                DB Type: Si

             DB Edition: EE

                   DBID: 3134823637

Instance Only Database: false

                    CDB: false

               PDB Name:

    PDB Admin User Name:

                  Class: OLTP

                  Shape: Odb1

                Storage: ACFS

           CharacterSet: AL32UTF8

  National CharacterSet: AL16UTF16

               Language: AMERICAN

              Territory: AMERICA

                Home ID: 75a428db-d173-4ad8-bae3-021a45eeeebf

        Console Enabled: false

     Level 0 Backup Day: Sunday

    AutoBackup Disabled: false

                Created: August 20, 2018 10:53:52 PM EDT

         DB Domain Name: vnainc.com

[root@vnaoda1-1 product]# odacli describe-database -i c3ffa93a-1050-4257-aa08-4f515f51f8ae

Database details                                                  

—————————————————————-

                     ID: c3ffa93a-1050-4257-aa08-4f515f51f8ae

            Description: vnasi

                DB Name: vnasi

             DB Version: 12.1.0.2

                DB Type: Si

             DB Edition: EE

                   DBID: 3134823637

Instance Only Database: false

                    CDB: false

               PDB Name:

    PDB Admin User Name:

                  Class: OLTP

                  Shape: Odb1

                Storage: ACFS

           CharacterSet: AL32UTF8

  National CharacterSet: AL16UTF16

               Language: AMERICAN

              Territory: AMERICA

                Home ID: 75a428db-d173-4ad8-bae3-021a45eeeebf

        Console Enabled: false

     Level 0 Backup Day: Sunday

    AutoBackup Disabled: false

                Created: August 20, 2018 10:53:52 PM EDT

         DB Domain Name: vnainc.com

[oracle@vnaoda1-1 ~]$ srvctl config database -d vnasi

Database unique name: vnasi

Database name: vnasi

Oracle home: /u01/app/oracle/product/12.1.0.2/dbhome_11

Oracle user: oracle

Spfile: /u02/app/oracle/oradata/vnasi/dbs/spfilevnasi.ora

Password file:

Domain: vnainc.com

Start options: open

Stop options: immediate

Database role: PRIMARY

Management policy: AUTOMATIC

Server pools:

Disk Groups: DATA

Mount point paths: /u02/app/oracle/oradata/vnasi,/u03/app/oracle/

Services:

Type: SINGLE

OSDBA group: dba

OSOPER group: dba

Database instance: vnasi

Configured nodes: vnaoda1-1

Database is administrator managed

[oracle@vnaoda1-1 ~]$ ps -ef|grep smon

root     16230     1  0 Jul30 ?        00:45:31 /u01/app/12.2.0.1/oracle/bin/osysmond.bin

oracle   20897     1  0 Jul30 ?        00:00:27 asm_smon_+ASM2

oracle   71928     1  0 23:00 ?        00:00:00 ora_smon_vnasi

oracle   83495 82037  0 23:06 pts/1    00:00:00 grep smon

DCS Agent log:

2018-08-20 23:01:41,701 DEBUG [dw-31439 – GET /jobs/9a4f5364-a634-4e0e-b1db-9e81e96123cc] [] c.o.d.c.t.r.ReportApi: Job Report:

{

  “updatedTime” : 1534820427093,

  “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

  “status” : “Success”,

  “message” : null,

  “reports” : [ {

    “updatedTime” : 1534820035750,

    “startTime” : 1534820035720,

    “endTime” : 1534820035750,

    “taskId” : “TaskSequential_3335”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Setting up ssh equivalance”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820051337,

    “startTime” : 1534820035939,

    “endTime” : 1534820051337,

    “taskId” : “TaskSequential_3353”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating volume datvnasi”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820059397,

    “startTime” : 1534820051341,

    “endTime” : 1534820059396,

    “taskId” : “TaskSequential_3359”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Creating ACFS filesystem for DATA”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820423774,

    “startTime” : 1534820059575,

    “endTime” : 1534820423773,

    “taskId” : “TaskSequential_3386”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Database Service creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820348996,

    “startTime” : 1534820059579,

    “endTime” : 1534820348978,

    “taskId” : “TaskZJsonRpcExt_3387”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “Database Creation”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820349023,

    “startTime” : 1534820349014,

    “endTime” : 1534820349022,

    “taskId” : “TaskZJsonRpcExt_3391”,

    “status” : “Success”,

    “taskResult” : “Sucessfully changes the permissions for xdb wallet files”,

    “taskName” : “Change permission for xdb wallet files”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820350913,

    “startTime” : 1534820349026,

    “endTime” : 1534820350912,

    “taskId” : “TaskZJsonRpcExt_3393”,

    “status” : “Success”,

    “taskResult” : “Successfully placed snapshot control file in shared location.”,

    “taskName” : “Place SnapshotCtrlFile in sharedLoc”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820420561,

    “startTime” : 1534820409047,

    “endTime” : 1534820420559,

    “taskId” : “TaskZJsonRpcExt_3397”,

    “status” : “Success”,

    “taskResult” : “Successfully ran datapatch:vnasi”,

    “taskName” : “Running DataPatch”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3386”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820423765,

    “startTime” : 1534820420585,

    “endTime” : 1534820423764,

    “taskId” : “TaskZJsonRpcExt_3402”,

    “status” : “Success”,

    “taskResult” : “successfully updated Database version”,

    “taskName” : “updating the Database version”,

    “taskDescription” : null,

    “parentTaskId” : “TaskParallel_3399”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1534820425534,

    “startTime” : 1534820423777,

    “endTime” : 1534820425534,

    “taskId” : “TaskSequential_3404”,

    “status” : “Success”,

    “taskResult” : “”,

    “taskName” : “create Users tablespace”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_3324”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “tags” : [ ],

    “reportLevel” : “Info”

  } ],

  “createTimestamp” : 1534820035095,

  “resourceList” : [ {

    “updatedTime” : 1534820348980,

    “resourceId” : “c3ffa93a-1050-4257-aa08-4f515f51f8ae”,

    “jobId” : “9a4f5364-a634-4e0e-b1db-9e81e96123cc”,

    “resourceType” : “DB”

  } ],

  “description” : “Database service creation with db name: vnasi”

}

2018-08-20 23:02:09,678 INFO [dw-31439 – GET /databases] [] c.o.d.a.u.d.DcsuserUtil: Authenticate for user: oda-cliadmin

2018-08-20 23:02:09,701 DEBUG [dw-31439 – GET /databases] [] c.o.d.a.a.AgentAuthenticator: auth success

2018-08-20 23:02:09,702 INFO [dw-31439 – GET /databases] [] c.o.d.a.r.DatabasesApi: Received GET request to listDatabases on DatabasesApi

2018-08-20 23:02:52,097 INFO [dw-31441 – GET /databases/c3ffa93a-1050-4257-aa08-4f515f51f8ae] [] c.o.d.a.u.d.DcsuserUtil: Authenticate for user: oda-cliadmin

2018-08-20 23:02:52,114 DEBUG [dw-31441 – GET /databases/c3ffa93a-1050-4257-aa08-4f515f51f8ae] [] c.o.d.a.a.AgentAuthenticator: auth success

2018-08-20 23:02:52,114 INFO [dw-31441 – GET /databases/c3ffa93a-1050-4257-aa08-4f515f51f8ae] [] c.o.d.a.r.DatabasesApi: Received GET request to getDatabase on DatabasesApi with databaseId :c3ffa93a-1050-4257-aa08-4f515f51f8ae

2018-08-20 23:02:52,114 DEBUG [dw-31441 – GET /databases/c3ffa93a-1050-4257-aa08-4f515f51f8ae] [] c.o.d.a.r.s.d.DbUtils: db :

DB {

    dbName: vnasi

    databaseUniqueName: vnasi

    dbVersion: 12.1.0.2

    dbHomeId: 75a428db-d173-4ad8-bae3-021a45eeeebf

    dbId: 3134823637

    isCdb: false

    pdBName: null

    pdbAdminUserName: null

    enableTDE: false

    dbType: Si

    dbTargetNodeNumber: 1

    dbClass: Oltp

    dbShape: Odb1

    dbStorage: Acfs

    instanceOnly: false

    registerOnly: false

    dbCharacterSet:

DbCharacterSet {

    characterSet: AL32UTF8

    nlsCharacterset: AL16UTF16

    dbTerritory: AMERICA

    dbLanguage: AMERICAN

}

    dbConsoleEnable: false

    backupDestination: None

    level0BackupDay: sunday

    cloudStorageContainer: null

    backupConfigId: null

    dbDomainName: vnainc.com

    dbEdition: EE

}

ODA Patching/Upgrade Triage

This blog will define the appropriate logs, files and command output to collect when triaging ODA related patching issues

Recently we attempted to upgrade from 12.2.1.2 to 12.2.1.3 on ODA X7.  We did the usual as part of the upgrade process.

unzip p27648057_122130_Linux-x86-64_1of3.zip

ls -l  oda-sm-12.2.1.3.0-180504-server*

/opt/oracle/dcs/bin/odacli update-repository -f oda-sm-12.2.1.3.0-180504-server1of3.zip, p27648057_122130_Linux-x86-64_2of3.zip,

p27648057_122130_Linux-x86-64_3of3.zip

/opt/oracle/dcs/bin/odacli update-dcsagent -v 12.2.1.3.0

/opt/oracle/dcs/bin/odacli describe-job -i jobid

rpm -qa |grep dcs-agent

dcs-agent-18.1.3.0.0_LINUX.X64_180504-86.x86_64

/opt/oracle/dcs/bin/odacli update-server -v 12.2.1.3.0

The update-server failed according to this log:

{

    “updatedTime” : 1530126568790,

    “startTime” : 1530126562856,

    “endTime” : 1530126568788,

    “taskId” : “TaskZJsonRpcExt_225”,

    “status” : “Success”,

    “taskResult” : “Successfully created the yum repos for patchingos”,

    “taskName” : “Creating repositories using yum”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_224”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Info”

  }, {

    “updatedTime” : 1530126894836,

    “startTime” : 1530126568799,

    “endTime” : 1530126894834,

    “taskId” : “TaskZJsonRpcExt_228”,

    “status” : “Success”,

    “taskResult” : “Successfully updated the OS”,

    “taskName” : “Applying OS Patches”,

    “taskDescription” : null,

    “parentTaskId” : “TaskParallel_227”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Info”

  },

{

    “updatedTime” : 1530126899457,

    “startTime” : 1530126894980,

    “endTime” : 1530126899455,

    “taskId” : “TaskZJsonRpcExt_236”,

    “status” : “Success”,

    “taskResult” : “Successfully updated the Firmware Disk”,

    “taskName” : “Applying Firmware Disk Patches”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_235”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Info”

  },

{

    “updatedTime” : 1530127898145,

    “startTime” : 1530127248252,

    “endTime” : 1530127898144,

    “taskId” : “TaskSequential_121”,

    “status” : “Failure”,

    “taskResult” : “DCS-10001:Internal error encountered:  apply patch using OpatchAuto on node odanode1.”,

    “taskName” : “task:TaskSequential_121”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_256”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Error”

  },

….

{

    “updatedTime” : 1530127898142,

    “startTime” : 1530127463976,

    “endTime” : 1530127898141,

    “taskId” : “TaskSequential_162”,

    “status” : “Failure”,

    “taskResult” : “DCS-10001:Internal error encountered:  apply patch using OpatchAuto on nodeodanode1.”,

    “taskName” : “task:TaskSequential_162”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_121”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Error”

  }, {

    “updatedTime” : 1530127898139,

    “startTime” : 1530127463979,

    “endTime” : 1530127898137,

    “taskId” : “TaskZJsonRpcExt_163”,

    “status” : “Failure”,

    “taskResult” : “DCS-10001:Internal error encountered:  apply patch using OpatchAuto on node odanode1″,

    “taskName” : “clusterware upgrade”,

    “taskDescription” : null,

    “parentTaskId” : “TaskSequential_162”,

    “jobId” : “5dd32b38-4d4b-4a3a-bf45-bb71cc8bf801”,

    “tags” : [ ],

    “reportLevel” : “Error”

  } ],

  “createTimestamp” : 1530126459722,

  “resourceList” : [ ],

  “description” : “Server Patching”

}

When opening an SR make sure you collected the following infor for support.  This will minimize the ‘backn’forth’-ness and reduce mean time to resolve.

Please provide the output from the commands below:
1.

odacli describe-component

System Version 

—————

12.2.1.3.0

Component                                Installed Version    Available Version   

—————————————- ——————– ——————–

OAK                                       12.2.1.3.0            up-to-date          

GI                                        12.2.0.1.171017       12.2.0.1.180116     

DB                                        12.2.0.1.171017       12.2.0.1.180116     

DCSAGENT                                  18.1.3.0.0            up-to-date          

ILOM                                      4.0.0.28.r121827      4.0.0.22.r120818    

BIOS                                      41017600              41017100            

OS                                        6.9                   up-to-date          

FIRMWARECONTROLLER                        QDV1RE14              up-to-date          

ASR                                       5.7.7                 up-to-date          

# odacli describe-latestpatch

componentType   availableVersion    

————— ——————–

gi              12.2.0.1.180116     

gi              12.2.0.1.180116     

db              12.2.0.1.180116     

db              12.1.0.2.180116     

db              11.2.0.4.180116     

oak             12.2.1.3.0          

oak             12.2.1.3.0          

asr             5.7.7               

ilom            4.0.0.22.r120818    

os              6.9                 

hmp             2.4.1.0.9           

bios            41017100            

firmwarecontroller 13.00.00.00         

firmwarecontroller 4.650.00-7176       

firmwarecontroller kpyagr3q            

firmwarecontroller qdv1re14            

firmwaredisk    0r3q                

firmwaredisk    a122                

firmwaredisk    a122                

firmwaredisk    a374                

firmwaredisk    c122                

firmwaredisk    c122                

firmwaredisk    c376                

firmwaredisk    0112                

dcsagent        18.1.3.0.0          

2.  Provide/upload the following most recent configuration and diagnostic details./log files: 

/u01/app/12.2.0.1/oracle/cfgtoollogs/opatchautodb/systemconfig* 

/tmp/opatchAutoAnalyzePatch.log 

/u01/app/12.2.0.1/oracle/cfgtoollogs/opatchauto/core/opatch/opatch<date>.log 

/u01/app/12.2.0.1/oracle/cfgtoollogs/opatchautodb/systemconfig<date>.log 

/u01/app/12.2.0.1/oracle/cfgtoollogs/opatchauto/opatchauto<date>.log

/u01/app/oracle/crsdata/odanode1/crsconfig/crspatch_<hostname><date>.log 

Hybrid DNS Configuration

The following is definition/illustration of on-premise->OCI (Hybrid) DNS configuration.

Oracle Cloud Infrastructure (OCI) customers can configure DNS names for their instances in the Virtual Cloud Network (VCN) as described in DNS in Your Virtual Cloud Network. The DNS names are resolvable only within the VCN using the VCN DNS resolver available at 169.254.169.254. This IP address is only reachable from instances in the VCN.

This post describes the process to enable resolution of DNS names of instances in the VCN from on-premises clients and vice-versa, when the on-premises datacenter is connected with the VCN (through VPN or FastConnect).

Setup Overview

Case1 – DNS resolution from on-premises to VCN

On-premises to VCN

When an on-premises client is trying to connecting to cloud VCN resources:

  1. Client machine initiates a DNS query (for db1.exaclient.custvcn.oraclevcn.com) to on-prem DNS server (172.16.0.5)
  2. On-prem DNS server forwards the request to DNS VM in the VCN (10.0.10.15) over private connectivity (VPN or FastConnect)
  3. DNS query forwarded to VCN DNS resolver (169.254.169.254)
  4. DNS VM gets the IP address of the FQDN and send it back to on-prem DNS server
  5. On-prem DNS server gets the IP address and responds to the client machine

Case2 – DNS resolution from VCN to on-premises

VCN to on-premises

When an instance in the VCN is trying to connect to an on-premises instance:

  1. Instance in the VCN initiates a DNS query (say app1.customer.net)
  2. The DNS server configured in the DHCP options used by the instance’s subnet will receive the DNS request. In this case, the request will be received by DNS VM in the VCN
  3. DNS query forwarded to on-premises DNS server (172.16.0.5) over private connectivity (VPN of Fastconnect)
  4. DNS VM gets the response and sends it back to client

Configuration Steps

Below are the steps to achieve this configuration

  1. Create a DNS VM in the VCN
    1. Create a security list with following rules:
      • allow udp 53 (for DNS queries) from clients (VCN address space + On-prem address space)
      • allow tcp 22 (for ssh access) from Internet or on-prem address space
      • allow ICMP type3 from same sources as rule above (for ssh access)
    2. Create a DHCP options set:
      • Set DNS type as “Internet and VCN resolver”
  2. Create a subnet, which uses the security list and DHCP options set created above.
  3. Launch a VM with latest ‘Oracle Linux 7.4’ image into this subnet
  4. Install & Configure named
   $ sudo yum install bind
   $ sudo firewall-cmd --permanent --add-port=53/udp
   $ sudo firewall-cmd --permanent --add-port=53/tcp
   $ sudo /bin/systemctl restart firewalld
   $ cat > /etc/named.conf
options {
        listen-on port 53 { any; };
        allow-query    { localhost; 10.0.0.0/16; 172.16.0.0/16; };
        forward        only;
        forwarders     { 169.254.169.254; };
        recursion yes;
};

zone "customer.net" {
        type       forward;
        forward    only;
        forwarders { 172.16.0.5; 172.16.31.5; };
};

<hit ctrl-D>

   * $ sudo service named restart
  1. Configure forwarding on the on-prem DNS servers for ‘VCN domain’ (custvcn.oraclevcn.com) to be forwarded to DNS VM in the VCN. Below is a snapshot of the setup in an AD/DNS server. AD conditional forwarding setup

Note, that I borrowed this material from Oracle and made slight modifications for the configurations we are currently  supporting

Exadata Cloud – Database Deployment

This is Part 3 of the Post Provisioning of Exadata Cloud

Here we will create our first 12.2 database using dbaasapi utility

Once the Exadata tooling has been updated, you can leverage the dbaasapi command to create or delete Exadata Oracle databases.  When creating new databases you should only use the dbaasapi to this purpose.

The dbaasapi utility, which is a REST API, reads a JSON request body and generates a JSON response body in an output file.

The utility is located in the /var/opt/oracle/dbaasapi/ directory on the compute nodes and must be run as the root user.

[root@ashdbm01~]# mkdir –p /home/oracle/dbassinput

[root@ashdbm01~] # cd /home/oracle/dbassinput

Create a JSON file for DB creation, using the template

[root@ashdbm01~] # cat /home/oracle/dbassinput/dbaas.json

{ “object”: “db”, “action”: “start”, “operation”: “createdb”, “params”: {

“nodelist”:

“dbname”:

“edition”:

“version”: “adminPassword”:

“sid”:

“pdbName”:

“charset”:

“ncharset”: “backupDestination”: “cloudStorageContainer”:

“”,

“exadb”, “EE_EP”, “12.1.0.2”, “WElcome#123_”, “exadb”, “PDB1”, “AL32UTF8”, “AL16UTF16”, “OSS”,

“https://swiftobjectstorage.<region>.oraclecloud.com/v1/mycompany/DBBackups”, “cloudStorageUser”: “jsmith@mycompany.com”,

“cloudStoragePwd”: “XXXXXXXXXXXX”

},

“outputfile”: “/home/oracle/createdb.out”,

“FLAGS”: “”

}

The following example illustrates the usage of dbaasapi to build a 12.2 database.

Dbaasapi uses the json format file as input for db creation.

[root@phxdbm-o3eja1 oracle]# cat $HOME/createdb_start.json

{

  “object”: “db”,

  “action”: “start”,

  “operation”: “createdb”,

  “params”: {

    “dbname”:                “yoda”,

    “edition”:               “EE_EP”,

    “version”:               “12.2.0.1”,

    “adminPassword”:         “”,

    “pdbName”:               “jedi1”,

    “backupDestination”:     “NONE”,

    “cloudStorageContainer”: “<bkup_oss_url>”,

    “cloudStorageUser”:      “<bkup_oss_user>”,

    “cloudStoragePwd”:       “<bkup_oss_passwd>”,

    “charset”:               “AL32UTF8”,

    “ncharset”:              “AL16UTF16”,

    “nodelist”:              “”

  },

  “outputfile”: “/home/oracle/created_yoda.out”,

  “FLAGS”: “”

}

[root@phxdbm-o3eja1 oracle]#  /var/opt/oracle/dbaaspi/dbaasapi -I cretedb_yoda

Once invoked, you can use the status.json file to check the progress

[root@phxdbm-o3eja1 oracle]# /var/opt/oracle/dbaasapi/dbaasapi -I status_createdb_yoda.json

[root@phxdbm-o3eja1 oracle]# cat createdb.out

{

“msg” : “Sync sqlnet file…[done]\\n

#Invoking assistant bkup\\nUsing cmd : /var/opt/oracle/ocde/assistants/bkup/bkup -out /var/opt/oracle/ocde/res/bkup.out -sid=\”yoda1\” -reco_grp=\”RECOC1\” -hostname=\”phxdbm-o3eja1.client.phxexadata.oraclevcn.com\” -oracle_home=\”/u02/app/oracle/product/12.2.0/dbhome_3\” -dbname=\”yoda\” -dbtype=\”exarac\” -exabm=\”yes\” -edition=\”enterprise\” -bkup_cfg_files=\”no\” -acfs_vol_dir=\”/var/opt/oracle/dbaas_acfs\” -bkup_oss_url=\”<bkup_oss_url>\” -bkup_oss_user=\”<bkup_oss_user>\” -version=\”12201\” -archlog=\”yes\” -oracle_base=\”/u02/app/oracle\” -firstrun=\”no\” -action=\”config\” -bkup_oss=\”no\” -bkup_disk=\”no\” -data_grp=\”DATAC1\” -action=config \\n\\n#

#Done executing bkup\\

Removed all entries from creg file : /var/opt/oracle/creg/yoda.ini matching passwd or decrypt_key\\n\\n#### Completed OCDE

Successfully ####\\nWARN: Could not register elogger_parameters: elogger.pm::_init: /var/opt/oracle/dbaas_acfs/events does not exist”,

   “object” : “db”,

   “status” : “Success”,

   “errmsg” : “”,

   “outputfile” : “/home/oracle/created_yoda.out”,

   “action” : “start”,

   “id” : “4”,

   “operation” : “createdb”,

   “logfile” : “/var/opt/oracle/log/yoda/dbaasapi/db/createdb/4.log”

}

Backups

When the dbaasapi utility is used to create a database, it automatically enables automated RMAN backups.  These scheduled backups which are processed via crontab.  The following lists the crontab entries for backups.

[root@ network-scripts]# cat /etc/crontab

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

HOME=/

# For details see man 4 crontabs

# Example of job definition:

# .—————- minute (0 – 59)

# |  .————- hour (0 – 23)

# |  |  .———- day of month (1 – 31)

# |  |  |  .——- month (1 – 12) OR jan,feb,mar,apr …

# |  |  |  |  .—- day of week (0 – 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# |  |  |  |  |

# *  *  *  *  * user-name command to be executed

0,30 * * * * root /var/opt/oracle/bkup_api/bkup_api bkup_archlogs –dbname=OCITEST

0,30 * * * * root /var/opt/oracle/bkup_api/bkup_api bkup_archlogs –dbname=yoda

Exadata Cloud – Post Provisioning Exadata Configuration – Part 2

This is Part 2 of the Post Provisioning of Exadata Cloud

Here we will update the Tooling software necessary to support Exadata Patching.

Exadata Tooling Update

[root@phxdbm-o3eja1 exadbcpatch]# /var/opt/oracle/exapatch/exadbcpatchsm – list_tools
INFO: non async case
INFO: cmd is: /var/opt/oracle/exapatch/exadbcpatch -list_tools

Starting EXADBCPATCH
Logfile is /var/opt/oracle/log/exadbcpatch/exadbcpatch_2018-02- 28_22:37:23.log
Config file is /var/opt/oracle/exapatch/exadbcpatch.cfg

INFO: oss_container_url is not given, using INFO: tools images available for patching

‘last_async_precheck_txn_id’ => ‘

‘last_async_apply_txn_id’ => ‘ ‘errmsg’ => ”,
‘err’ => ”, ‘current_version’ => ‘180104’, ‘last_async_precheck_patch_id’ ‘current_patch’ => ‘180104’, ‘last_async_apply_patch_id’ => ‘patches’ => [

‘,

‘ ‘,

{
‘patchid’ => ‘17.4.1.2.0BM_180223’, ‘last_precheck_txnid’ => ”, ‘description’ => ‘DBaaSTools for ECS OCI’

} ]

<json begin>{“last_async_precheck_txn_id”:” “,”last_async_apply_txn_id”:” “,”err”:””,”errmsg”:””,”current_version”:”180104″,”last_async_precheck_patch_ id”:” “,”current_patch”:”180104″,”last_async_apply_patch_id”:” “,”patches”:[{“patchid”:”17.4.1.2.0BM_180223″,”last_precheck_txnid”:””,”descr iption”:”DBaaSTools for ECS OCI”}]}<json end>

=> ‘ ‘,

[root@phxdbm-o3eja1 exadbcpatch]# /var/opt/oracle/exapatch/exadbcpatchsm – toolsinst_async ‘17.4.1.2.0BM_180223’
INFO: async case
INFO: patch number given is : 17.4.1.2.0BM_180223

INFO: check for this action toolsinst_async
<start txn>69<end txn>
INFO: command to be run is: /var/opt/oracle/exapatch/exadbcpatch – toolsinst_async -rpmversion=17.4.1.2.0BM_180223
INFO: system cmd is: “nohup /var/opt/oracle/exapatch/exadbcpatch – toolsinst_async -rpmversion=17.4.1.2.0BM_180223 “
[root@phxdbm-o3eja1 exadbcpatch]# /var/opt/oracle/exapatch/exadbcpatchsm – list_tools
INFO: non async case
INFO: cmd is: /var/opt/oracle/exapatch/exadbcpatch -list_tools
Starting EXADBCPATCH
Logfile is /var/opt/oracle/log/exadbcpatch/exadbcpatch_2018-02- 28_22:42:27.log
Config file is /var/opt/oracle/exapatch/exadbcpatch.cfg

INFO: oss_container_url is not given, using the default INFO: tools images available for patching

$VAR1 = {
‘last_async_precheck_txn_id’ => ‘ ‘,

‘last_async_apply_txn_id’ => ‘ ‘,

‘errmsg’ => ‘no applicable dbaastools rpms found: check exadbcpatch.log in /var/opt/oracle/log/exadbcpatch’,

‘err’ => ‘-1’,
‘current_version’ => ‘180223’, ‘last_async_precheck_patch_id’ => ‘ ‘, ‘current_patch’ => ‘180223’, ‘last_async_apply_patch_id’ => ‘ ‘, ‘patches’ => []

};

<json begin>{“last_async_precheck_txn_id”:” “,”last_async_apply_txn_id”:” “,”err”:”-1″,”errmsg”:”no applicable dbaastools rpms found: check exadbcpatch.log in /var/opt/oracle/log/exadbcpatch”,”current_version”:”180223″,”last_async_prech eck_patch_id”:” “,”current_patch”:”180223″,”last_async_apply_patch_id”:” “,”patches”:[]}<json end>

[root@phxdbm-o3eja1 ~]# /var/opt/oracle/exapatch/exadbcpatchsm -get_status 8

# /var/opt/oracle/exapatch/exadbcpatchmulti -precheck_async 26737266-GI – sshkey=/home/opc/.ssh/id_rsa -instance1=phxdbm-o3eja1:/u01/app/12.2.0.1/grid -instance2=phxdbm-o3eja2:/u01/app/12.2.0.1/grid -instance3=phxdbm- o3eja3:/u01/app/12.2.0.1/grid -instance4=phxdbm- o3eja4:/u01/app/12.2.0.1/grid

INFO: number of nodes – 4
INFO: Master transaction id is : 70 <json begin>70<json end>
$VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja1’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};
INFO: hostname : phxdbm-o3eja1

INFO: ohomes : /u01/app/12.2.0.1/grid
INFO: sshkey being used is /home/opc/.ssh/id_rsa for phxdbm-o3eja1
INFO: cmd being run is: sudo /var/opt/oracle/exapatch/exadbcpatchsm – precheck_async 26737266-GI -patch_homes=/u01/app/12.2.0.1/grid – txn_fl=/home/opc/txnid_fl.248762
INFO: running on the node phxdbm-o3eja1
INFO: host and txn id given : phxdbm-o3eja1 and 71
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: host and txn id given : phxdbm-o3eja1 and 71
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: host and txn id given : phxdbm-o3eja1 and 71
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: host and txn id given : phxdbm-o3eja1 and 71
INFO: status seen is: Precheck completed
INFO: status of slave txn###: Precheck completed on phxdbm-o3eja1
INFO: -precheck_async completed on phxdbm-o3eja1:/u01/app/12.2.0.1/grid $VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja2’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};
INFO: hostname : phxdbm-o3eja2

INFO: ohomes : /u01/app/12.2.0.1/grid
INFO: sshkey being used is /home/opc/.ssh/id_rsa for phxdbm-o3eja2 INFO: cmd being run is: ssh -q -t -i /home/opc/.ssh/id_rsa -o StrictHostKeyChecking=no opc@phxdbm-o3eja2 sudo /var/opt/oracle/exapatch/exadbcpatchsm -precheck_async 26737266-GI – patch_homes=/u01/app/12.2.0.1/grid -txn_fl=/home/opc/txnid_fl.248762 INFO: running on the node phxdbm-o3eja2
INFO: host and txn id given : phxdbm-o3eja2 and 17

INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja2 ….

INFO: status seen is: Precheck completed
INFO: status of slave txn###: Precheck completed on phxdbm-o3eja2
INFO: -precheck_async completed on phxdbm-o3eja2:/u01/app/12.2.0.1/grid INFO: number of nodes – 4
INFO: Master transaction id is : 72
<json begin>72<json end>
$VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja1’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};

# /var/opt/oracle/exapatch/exadbcpatchmulti -apply_sync 26737266-GI – sshkey=/home/opc/.ssh/id_rsa -instance1=phxdbm-o3eja1:/u01/app/12.2.0.1/grid -instance2=phxdbm-o3eja2:/u01/app/12.2.0.1/grid -instance3=phxdbm- o3eja3:/u01/app/12.2.0.1/grid -instance4=phxdbm- o3eja4:/u01/app/12.2.0.1/grid -run_datasql=1

INFO: number of nodes – 4
INFO: Master transaction id is : 72 <json begin>72<json end>
$VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja1’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};
INFO: hostname : phxdbm-o3eja1

INFO: ohomes : /u01/app/12.2.0.1/grid
INFO: sshkey being used is /home/opc/.ssh/id_rsa for phxdbm-o3eja1
INFO: cmd being run is: sudo /var/opt/oracle/exapatch/exadbcpatchsm – apply_async 26737266-GI -patch_homes=/u01/app/12.2.0.1/grid – txn_fl=/home/opc/txnid_fl.290963
INFO: running on the node phxdbm-o3eja1
INFO: host and txn id given : phxdbm-o3eja1 and 73
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: host and txn id given : phxdbm-o3eja1 and 73
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: number of nodes – 4
INFO: Master transaction id is : 72
<json begin>72<json end>
$VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja1’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};
INFO: hostname : phxdbm-o3eja1

INFO: ohomes : /u01/app/12.2.0.1/grid
INFO: sshkey being used is /home/opc/.ssh/id_rsa for phxdbm-o3eja1
INFO: cmd being run is: sudo /var/opt/oracle/exapatch/exadbcpatchsm – apply_async 26737266-GI -patch_homes=/u01/app/12.2.0.1/grid – txn_fl=/home/opc/txnid_fl.290963
INFO: running on the node phxdbm-o3eja1
INFO: host and txn id given : phxdbm-o3eja1 and 73
INFO: status seen is: Running: precheck in progress
INFO: status of slave txn###: Running: precheck in progress on phxdbm-o3eja1 INFO: host and txn id given : phxdbm-o3eja1 and 73
INFO: status seen is: Running: precheck in progress

INFO: status of slave txn###: Running: config in progress on phxdbm-o3eja1 INFO: -apply_async completed on phxdbm-o3eja1:/u01/app/12.2.0.1/grid $VAR1 = {

‘cur_patchid’ => ”,
‘hostname’ => ‘phxdbm-o3eja1’, ‘ohomes’ => ‘/u01/app/12.2.0.1/grid’, ‘new_version’ => ”, ‘patch_completed’ => ”, ‘new_patchid’ => ”,
‘cur_version’ => ”,
‘apply_passed’ => ”

};
INFO: hostname : phxdbm-o3eja1

[grid@phxdbm-o3eja1 OPatch]$ /u01/app/12.2.0.1/grid/OPatch/opatch lspatches 26928563;TOMCAT RELEASE UPDATE 12.2.0.1.0(ID:170711) (26928563) 26925644;OCW RELEASE UPDATE 12.2.0.1.0(ID:171003) (26925644) 26839277;DBWLM RELEASE UPDATE 12.2.0.1.0(ID:170913) (26839277) 26737232;ACFS RELEASE UPDATE 12.2.0.1.0(ID:170823) (26737232) 26710464;Database Release Update : 12.2.0.1.171017 (26710464)

OPatch succeeded.
[grid@phxdbm-o3eja1 OPatch]$ pwd
/u01/app/12.2.0.1/grid/OPatch
[grid@phxdbm-o3eja1 OPatch]$ ssh phxdbm-o3eja2 /u01/app/12.2.0.1/grid/OPatch/opatch lspatches
26928563;TOMCAT RELEASE UPDATE 12.2.0.1.0(ID:170711) (26928563) 26925644;OCW RELEASE UPDATE 12.2.0.1.0(ID:171003) (26925644) 26839277;DBWLM RELEASE UPDATE 12.2.0.1.0(ID:170913) (26839277) 26737232;ACFS RELEASE UPDATE 12.2.0.1.0(ID:170823) (26737232) 26710464;Database Release Update : 12.2.0.1.171017 (26710464)

OPatch succeeded.
[grid@phxdbm-o3eja1 OPatch]$ ssh phxdbm-o3eja3 /u01/app/12.2.0.1/grid/OPatch/opatch lspatches
26928563;TOMCAT RELEASE UPDATE 12.2.0.1.0(ID:170711) (26928563) 26925644;OCW RELEASE UPDATE 12.2.0.1.0(ID:171003) (26925644) 26839277;DBWLM RELEASE UPDATE 12.2.0.1.0(ID:170913) (26839277) 26737232;ACFS RELEASE UPDATE 12.2.0.1.0(ID:170823) (26737232) 26710464;Database Release Update : 12.2.0.1.171017 (26710464)

OPatch succeeded.
[grid@phxdbm-o3eja1 OPatch]$ ssh phxdbm-o3eja4 /u01/app/12.2.0.1/grid/OPatch/opatch lspatches
26928563;TOMCAT RELEASE UPDATE 12.2.0.1.0(ID:170711) (26928563) 26925644;OCW RELEASE UPDATE 12.2.0.1.0(ID:171003) (26925644) 26839277;DBWLM RELEASE UPDATE 12.2.0.1.0(ID:170913) (26839277) 26737232;ACFS RELEASE UPDATE 12.2.0.1.0(ID:170823) (26737232) 26710464;Database Release Update : 12.2.0.1.171017 (26710464)

OPatch succeeded.

Exadata Cloud – Post Provisioning Exadata Configuration – Part 1

Post Provisioning Exadata Configuration – Part1

After an Exadata is provisioned, ther are several post provisioning steps that need to be executed in order to allow system automation such as patching, backups, and infrastructure updates. This document will describe these steps.

All the traffic in an Exadata DB System is, by default, routed through the client network. To route backup traffic to the backup interface (BONDETH1), a static route needs to be created on each of the compute nodes in the cluster.

First identify the gateway configured for the BONDETH1 interface.

grep GATEWAY /etc/sysconfig/network-scripts/ifcfg-bondeth1 |awk -F”=” ‘{print $2}’

10.232.35.1

Review current /etc/sysconfig/network-scripts/route-bondeth1

cat /etc/sysconfig/network-scripts/route-bondeth1

10.232.35.0/24 dev bondeth1 table 211

default via 10.232.35.1 dev bondeth1 table 211

Create a new static rule for BONDETH1 and update route-bondeth1 with the following entries (per Cloud region)

Phoenix (PHX) region:

ADDRESS0=129.146.0.0

NETMASK0=255.255.0.0

GATEWAY0=10.232.35.1

 Ashburn (IAD) region):

ADDRESS0=129.213.0.0

NETMASK0=255.255.0.0

GATEWAY0=10.232.35.1

Restart the interface.

[root@dbsys ~]# ifdown bondeth1; ifup bondeth1; 


Once this change is done, you should see a new entry in the route table:

[root@~ network-scripts]# netstat -rn

Kernel IP routing table

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface

0.0.0.0         10.232.34.1     0.0.0.0         UG        0 0          0 bondeth0

10.232.34.0     0.0.0.0         255.255.255.0   U         0 0          0 bondeth0

10.232.35.0     0.0.0.0         255.255.255.0   U         0 0          0 bondeth1

129.146.0.0     10.232.35.1     255.255.0.0     UG        0 0          0 bondeth1

169.254.200.0   0.0.0.0         255.255.255.252 U         0 0          0 eth0

192.168.132.0   0.0.0.0         255.255.252.0   U         0 0          0 clib1

192.168.132.0   0.0.0.0         255.255.252.0   U         0 0          0 clib0

192.168.136.0   0.0.0.0         255.255.248.0   U         0 0          0 stib0

192.168.136.0   0.0.0.0         255.255.248.0   U         0 0          0 stib1

 

Exadata Cloud – Post Provisioning View of the system

Review of Exadata Deployment

Once the Exadata provisioning process completes (which takes around 4-5hrs for a ½ rack).  We explore to see what gets deployed:

$ cat/etc/oratab

OCITEST:/u02/app/oracle/product/12.2.0/dbhome_2:Y

+ASM1:/u01/app/12.2.0.1/grid:N       # line added by Agent

 

[grid@phxdbm-o3eja1 ~]$ olsnodes -n

phxdbm-o3eja1 1

phxdbm-o3eja2 2

phxdbm-o3eja3 3

phxdbm-o3eja4 4

 

[grid@phxdbm-o3eja1 ~]$ cat /var/opt/oracle/creg/OCITEST.ini | grep nodelist

nodelist=phxdbm-o3eja1 phxdbm-o3eja2 phxdbm-o3eja3 phxdbm-o3eja4

 

[grid@phxdbm-o3eja1 ~]$ crsctl stat res -t

—————————————————————————–

Name           Target  State        Server                   State details

—————————————————————————–

Local Resources

—————————————————————————–

ora.ACFSC1_DG1.C1_DG11V.advm

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.ACFSC1_DG1.C1_DG12V.advm

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.ACFSC1_DG1.dg

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE    ora.ACFSC1_DG2.C1_DG2V.advm

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE    ora.ACFSC1_DG2.dg

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE    ora.ASMNET1LSNR_ASM.lsnr

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.DATAC1.dg

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE . ora.DBFS_DG.dg

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.LISTENER.lsnr

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.RECOC1.dg

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE . ora.acfsc1_dg1.c1_dg11v.acfs

ONLINE  ONLINE       phxdbm-o3eja1            mounted on /scratch/acfsc1_dg1,STABLE

ONLINE  ONLINE       phxdbm-o3eja2            mounted on /scratch/acfsc1_dg1,STABLE

ONLINE  ONLINE       phxdbm-o3eja3            mounted on /scratch/acfsc1_dg1,STABLE

ONLINE  ONLINE       phxdbm-o3eja4            mounted on /scratch/acfsc1_dg1,STABLE

ora.acfsc1_dg1.c1_dg12v.acfs

ONLINE  ONLINE       phxdbm-o3eja1            mounted on /u02/app_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja2            mounted on /u02/app_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja3            mounted on /u02/app_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja4            mounted on /u02/app_acfs,STABLE

ora.acfsc1_dg2.c1_dg2v.acfs

ONLINE  ONLINE       phxdbm-o3eja1            mounted on /var/opt/oracle/dbaas_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja2            mounted on /var/opt/oracle/dbaas_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja3            mounted on /var/opt/oracle/dbaas_acfs,STABLE

ONLINE  ONLINE       phxdbm-o3eja4            mounted on /var/opt/oracle/dbaas_acfs,STABLE

ora.net1.network

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.ons

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

ora.proxy_advm

ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ONLINE  ONLINE       phxdbm-o3eja4            STABLE

—————————————————————————–

Cluster Resources

——————————————————————————–

ora.LISTENER_SCAN1.lsnr

1        ONLINE  ONLINE       phxdbm-o3eja2            STABLE

ora.LISTENER_SCAN2.lsnr

1        ONLINE  ONLINE       phxdbm-o3eja3            STABLE

ora.LISTENER_SCAN3.lsnr

1        ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ora.asm

1        ONLINE  ONLINE       phxdbm-o3eja1            Started,STABLE

2        ONLINE  ONLINE       phxdbm-o3eja2            Started,STABLE

3        ONLINE  ONLINE       phxdbm-o3eja3            Started,STABLE

4        ONLINE  ONLINE       phxdbm-o3eja4            Started,STABLE

ora.cvu

1        ONLINE  ONLINE       phxdbm-o3eja1            STABLE

ora.ocitest.db

1        ONLINE  ONLINE       phxdbm-o3eja1            Open,HOME=/u02/app/oracle/product/12.2.0/dbhome_2,STABLE

2        ONLINE  ONLINE       phxdbm-o3eja2            Open,HOME=/u02/app/o

racle/product/12.2.0

/dbhome_2,STABLE

3        ONLINE  ONLINE       phxdbm-o3eja3            Open,HOME=/u02/app/oracle/product/12.2.0

/dbhome_2,STABLE

4        ONLINE  ONLINE       phxdbm-o3eja4            Open,HOME=/u02/app/oracle/product/12.2.0

/dbhome_2,STABLE

ora.phxdbm-o3eja1.vip

1        ONLINE  ONLINE       phxdbm-o3eja1            STABLE ora.phxdbm-o3eja2.vip

1        ONLINE  ONLINE       phxdbm-o3eja2            STABLE ora.phxdbm-o3eja3.vip

1        ONLINE  ONLINE       phxdbm-o3eja3            STABLE ora.phxdbm-o3eja4.vip

1        ONLINE  ONLINE       phxdbm-o3eja4            STABLE ora.qosmserver

1        OFFLINE OFFLINE                               STABLE ora.scan1.vip

1        ONLINE  ONLINE       phxdbm-o3eja2            STABLE ora.scan2.vip

1        ONLINE  ONLINE       phxdbm-o3eja3            STABLE ora.scan3.vip

1        ONLINE  ONLINE       phxdbm-o3eja1            STABLE

—————————————————————————–

[grid@phxdbm-o3eja1 ~]$ asmcmd lsct

DB_Name  Status     Software_Version  Compatible_version  Instance_Name   Disk_Group

+APX     CONNECTED        12.2.0.1.0          12.2.0.1.0  +APX1   ACFSC1_DG1

+APX     CONNECTED        12.2.0.1.0          12.2.0.1.0  +APX1   ACFSC1_DG2

+ASM     CONNECTED        12.2.0.1.0          12.2.0.1.0  +ASM1   DATAC1

+ASM     CONNECTED        12.2.0.1.0          12.2.0.1.0  +ASM1    DBFS_DG

OCITEST  CONNECTED        12.2.0.1.0          12.2.0.0.0  OCITEST1 DATAC1

OCITEST  CONNECTED        12.2.0.1.0          12.2.0.0.0  OCITEST1  RECOC1

_OCR     CONNECTED         –                  phxdbm-o3eja1.client.phxexadata.oraclevcn.com  DBFS_DG

yoda     CONNECTED        12.2.0.1.0          12.2.0.0.0  yoda1    DATAC1

yoda     CONNECTED        12.2.0.1.0          12.2.0.0.0  yoda1    RECOC1

 

[root@phxdbm-o3eja1 ~]# df -k

Filesystem           1K-blocks     Used Available Use% Mounted on

/dev/mapper/VGExaDb-LVDbSys1

24639868  3878788  19486408  17% /

tmpfs                742619136  2465792 740153344   1% /dev/shm

/dev/xvda1              499656    26360    447084   6% /boot

/dev/mapper/VGExaDb-LVDbOra1

20511356   719324  18727072   4% /u01

/dev/xvdb             51475068  9757380  39079864  20% /u01/app/12.2.0.1/grid

/dev/xvdc             51475068  9302820  39534424  20% /u01/app/oracle/product/12.1.0.2/dbhome_1

/dev/xvdd             51475068  8173956  40663288  17% /u01/app/oracle/product/12.2.0.1/dbhome_1

/dev/xvde             51475068  6002756  42834488  13% /u01/app/oracle/product/11.2.0.4/dbhome_1

/dev/xvdg            206293688 19751360 176040184  11% /u02

/dev/asm/c1_dg12v-186

459276288  1067008 458209280   1% /u02/app_acfs

/dev/asm/c1_dg11v-186

229638144   611488 229026656   1% /scratch/acfsc1_dg1

/dev/asm/c1_dg2v-341 228589568 26597644 201991924  12% /var/opt/oracle/dbaas_acfs

 

Oracle Homes are created and mounted, though for IQN we will only be using 12.2, 12.1.0.2, and 11.2.0.4 [interim].

The   following are Exadata specific filesystems and use cases
/scratch/acfs1_dg1             –staging Exadata

/u02/app_acfs.                    – User filesystem for applications (currently empty)

/var/opt/oracle/dbaas_acfs.  –  Binary and image repository for all Exadata patching and enablement

Exadata Cloud Deployment and Considerations

I recently did a presentation and wipe-board session on Exadata Cloud deployment.  As part of that engagment, I did a small write-up on this topic.  This is a series of blogs that reflects the presentation:

Cloud Exadata Network and Platform Configuration

 Exadata DB Systems are offered in quarter rack, half rack or full rack configurations, and each configuration consists of compute nodes and storage servers. The compute nodes are each configured as a Virtual Machine (VM).

Key Operational characteristics of Exadata Cloud

  • Admins have root privileges for the compute node VMs. Thus 3rd party software can be installed, however, only supported Oracle DB versions and rpms should be implemented.

 

  • Admins do not have administrative access to the Exadata infrastructure components, including the physical compute node hardware, network switches, power distribution units (PDUs), integrated lights- out management (ILOM) interfaces, or the Exadata Storage Servers, which are all administered by Oracle.

 

  • Admins have full administrative privileges for your databases. However, application users should connect to databases via Oracle Net Services.

 

  • Admins are responsible for database administration tasks such as creating tablespaces and managing database users.

 

  • Admins should define how ssh keys will managed for users that will need compute node access.

 

 

 

 

 

 

 

 

 

 

 

Provisioning Exadata Pre-reqs

The following are network pre-reqs for provisioning Cloud Exadata DB Systems

Subnets

  • Require two separate VCN subnets: client subnet for user data traffic and backup subnet for backup traffic.
  • Define both the client subnet and the backup subnet as public subnets. Exadata requires a public subnet to support backup of the database to the Object Store.
  • Do not use a subnet that overlaps with 192.168.128.0/20. This restriction applies to both the client subnet and backup subnet.
  • Oracle requires that you use a VCN Resolver for DNS name resolution for the client subnet. It automatically resolves the Swift endpoints required for backing up databases, patching, and updating the cloud tooling on an Exadata DB System.

At the completion of the provisioning, you should have the following configured:

 

 

 

 

 

 

Security Lists and Routing

  • Each VCN subnet has a default security list that contains a rule to allow TCP traffic on destination port 22 (SSH) from source 0.0.0.0/0 and any source port. Properly configure the security list ingress and egress rules.
  • The OneCommand configuration enables TCP and ICMP traffic between all nodes and all ports in the respective subnet for client and backup subnets
  • Exadata DB System’s cloud network (VCN) must be configured with an internet gateway. Add a route table rule to open the access to the Object Storage Service Swift endpoint on CIDR 0.0.0.0/0.
  • Update the backup subnet’s security list to disallow any access from outside the subnet and allow egress traffic for TCP port 443 (https) on CIDR Ranges 129.146.0.0/16 (Phoenix region), 129.213.0.0/16 (Ashburn region)

Enable a route table with an entry that includes a Internet Gateway.  This will enable remote ssh access to the Exadata nodes

 

 

 

 

 

 

 

Provisioning Exadata

Service Console – Provision Exadata

Below are screenshot views that illustrate the provisioning of Exadata

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cloud Exadata Storage Configuration

Exadata Storage Servers use the following ASM disk groups:

DATA diskgroup – for the storage of Oracle Data base datafiles.

RECO diskgroup – primarily used for storing files related to backup and recovery, such as RMAN backups and archived redo log files.  Depending how admins choose to provision for backups on Exadata storage

approximately 40% of the available storage space is allocated to the DATA disk group and approximately 60% is allocated to the RECO disk group.

Provision for backups on Exadata storage, approximately 80% of the available storage space is allocated to the DATA disk group and approximately 20% is allocated to the RECO disk group.

DBFS and ACFS diskgroups are system diskgroups that support various operational purposes. The DBFS disk group is primarily used to store the shared Clusterware files (Oracle Cluster Registry and voting disks), while the ACFS disk groups are primarily used to store Oracle Database binaries, staging directories and metadata.

 

Oracle Private Cloud Appliance (PCA) – How to get an Inventory

We recently had to move our PCA.  But before we did this move we needed to make sure we have everything documented, this included a detailed inventory of the computes nodes, storage attached, managment node configuration.  This blog post will illustrate how to do this inventory collection.  Note, that you’ll need root access to the [active] Management node.

Here’s some basic info on our PCA:

Component Software Specification Hardware Specification
Server PCA 2.2.2

OVM 3.2.10

Oracle VM Manager, Oracle Fabric Manager, and PCA controller software installed on the management servers

Oracle Server X5-2

20 nodes

 

(2) 18-core processors and 256 GB of memory

 

(2) Oracle Fabric Interconnect F1-15 switches Oracle Fabric Manager and SDN software external storage needed for any guest application

 

used specifically to provide 10 GbE (SFP+) and 8 Gb FC (LC) ports to connect to VMAX 10K
Internal Network  (2) 36-port QDR InfiniBand switches

used for high-speed internal communication between the Compute Servers, fabric interconnects, OVMM servers

 

Management Network (2) 24-port 10-Gigabit Ethernet switches

Provide management interface /access for Compute Servers, fabric interconnects, OVMM servers

ZFS

 

ZS3-ES storage appliance

18TB total

Application E-Business Suite R12 (12.1.3)
Oracle Database

 

11.2.0.4

Non RAC/Filesystem

2TB

External Storage EMC VMAX 10k

First run yum install expect on the OVM manager then modify the inventory expect script to have the correct admin password. You will probably want to run it as ./inventory > /tmp/inventory-pca.txt as it will be quite voluminous output.

Alternatively to the inventory script, we can leverage the eovmcli script in that same directory. Create a new script (eg. doit.sh) in the /u01/app/oracle/ovm-manager-3/ovm_cli/expectscripts/ directory with the following content. Replace references to password with the correct admin password. Run script and send me the output.

for i in `./eovmcli ‘admin’ ‘password’ ‘list vm’ | grep id: | awk ‘{print $NF}’ | cut -d: -f2-`;
do

echo ---------- PROCESSING VM=$i;
./eovmcli 'admin' 'password' "show vm name=$i";
echo;

for j in `./eovmcli 'admin' 'password' "show vm name=$i" | egrep VmDiskMapping | awk '{print $NF}'`;
do
echo vDisk=$j;
./eovmcli 'admin' 'password' "show vmdiskmapping id=$j";
echo;
done
echo
unset j

done

 

But to understand the inventory script the following commands are actually run underneath {inside}

OVM> list ServerPool

Command: list ServerPool

Status: Success

Time: 2017-11-14 20:56:12,341 UTC

Data: 

  id:0004fb00000200004d46b98dcfc43ff3  name:Rack1_ServerPool

 

PCA Storage Cloud Layout

The Oracle Private Cloud Appliance (PCA) supports storage expansion using either Fibre Channel or InfiniBand storage devices connected to the Fabric Interconnects.  We have chosen to leverage their existing Fibre channel based EMC VMAX for this expansion.  This section will describe the connectivity to the EMC array.

 

Storage Cloud Overview

 

Note, there is a OVM server pool, named Rack1_ServerPool, in the PCA. The PCA consists 20 compute nodes, as noted by ovcacn<compute node number> , and are assigned to this Server Pool; e.g.,  ovcacn[07-14]r1 (8 servers)  and  ovcacn[26-37]r1 (12 servers)

A vHBA is created on each compute node for each storage cloud. A total of four storage clouds are defined when PCA is installed, thus (4) vHBAs on each of the compute and management nodes.

Storage clouds allow you to cable and configure your external storage in such a way as to improve overall throughput or to build a fully HA enabled infrastructure.  Storage clouds are created and configured automatically on PCA installation.

We have a fully HA-enabled environment, where all four Storage Clouds are cross-cabled between the PCA Fabric Interconnects and two  FC switches.

For each PCA compute server, the WWPNs are registered and created for the vHBAs with assigned aliases.  Compute nodes can be identified as belonging to a particular server and storage cloud.

Once the PCA Fabric Interconnect WWPNs are presented to the VMAX array, it is visible to the PCA and can be seen using pca-admin list wwpn-info command.   These are command output is used to illustrate and identify matching WWPNs.

Fibre Channel with the Oracle PCA, requires a NPIV-capable FC switch or switches. Note, because the Fabric Interconnects use NPIV to map the port nodes to the World Wide Node Names (WWNNs) of the vHBAs that are created on each server, it is not possible to simply patch FC-capable storage directly into the FC ports on the Fabric Interconnects.  Software required to translate WWPNs to WWNNs does not exist on the storage heads of most FC storage devices, so directly attaching the storage device would prevent registration of the WWPNs for the vHBAs available on each server.

Storage Cloud Connectivity

There are (4) Cloud Storage (external Fibre connections) attached to the PCA X5-2, these are listed below (using the show storage-network command)

Network_Name                        Description         

————                        ———–         

Cloud_D                             Default Storage Cloud ru15 port2

Cloud_A                             Default Storage Cloud ru22 port1

Cloud_C                             Default Storage Cloud ru15 port1

Cloud_B                             Default Storage Cloud ru22 port2

Each Storage Cloud is connected into the two PCA internal switches: ovcasw22r1 and ovcasw15r1

Each compute node (CN) has four HBAs connected into the Storage Clouds using vHBA01 to vHBA04.  The following describes this connectivity.

  • vHBA01 is connected to Cloud_A
  • vHBA02 is connected to Cloud_B
  • vHBA03 is connected to Cloud_C
  • vHBA04 is connected to Cloud_D

 

This CN to Cloud connectivity is illustrated below for each Storage Cloud:

—————————————-

Network_Name         Cloud_A             

Description          Default Storage Cloud ru22 port1

Ports                ovcasw22r1:3:1, ovcasw22r1:12:1

vHBAs                ovcacn32r1-vhba01, ovcacn13r1-vhba01, ovcacn37r1-vhba01, ovcacn26r1-vhba01, ovcacn31r1-vhba01, ovcacn10r1-vhba01, ovcacn27r1-vhba01, ovcacn09r1-vhba01, ovcacn08r1-vhba01, ovcacn29r1-vhba01, ovcacn28r1-vhba01, ovcacn12r1-vhba01, ovcamn06r1-vhba01, ovcacn07r1-vhba01, ovcacn11r1-vhba01, ovcacn36r1-vhba01, ovcacn30r1-vhba01, ovcacn35r1-vhba01, ovcacn14r1-vhba01, ovcacn34r1-vhba01, ovcacn33r1-vhba01, ovcamn05r1-vhba01

—————————————-

Network_Name         Cloud_B             

Description          Default Storage Cloud ru22 port2

Ports                ovcasw22r1:3:2, ovcasw22r1:12:2

vHBAs                ovcacn32r1-vhba02, ovcacn13r1-vhba02, ovcacn37r1-vhba02, ovcacn26r1-vhba02, ovcacn31r1-vhba02, ovcacn10r1-vhba02, ovcacn27r1-vhba02, ovcacn09r1-vhba02, ovcacn08r1-vhba02, ovcacn29r1-vhba02, ovcacn28r1-vhba02, ovcacn12r1-vhba02, ovcamn06r1-vhba02, ovcacn07r1-vhba02, ovcacn11r1-vhba02, ovcacn36r1-vhba02, ovcacn30r1-vhba02, ovcacn35r1-vhba02, ovcacn14r1-vhba02, ovcacn34r1-vhba02, ovcacn33r1-vhba02, ovcamn05r1-vhba02

—————————————-

Network_Name         Cloud_C             

Description          Default Storage Cloud ru15 port1

Ports                ovcasw15r1:12:1, ovcasw15r1:3:1

vHBAs                ovcacn32r1-vhba03, ovcacn13r1-vhba03, ovcacn37r1-vhba03, ovcacn26r1-vhba03, ovcacn31r1-vhba03, ovcacn10r1-vhba03, ovcacn27r1-vhba03, ovcacn09r1-vhba03, ovcacn08r1-vhba03, ovcacn29r1-vhba03, ovcacn28r1-vhba03, ovcacn12r1-vhba03, ovcamn06r1-vhba03, ovcacn07r1-vhba03, ovcacn11r1-vhba03, ovcacn36r1-vhba03, ovcacn30r1-vhba03, ovcacn35r1-vhba03, ovcacn14r1-vhba03, ovcacn34r1-vhba03, ovcacn33r1-vhba03, ovcamn05r1-vhba03

—————————————-

Network_Name         Cloud_D             

Description          Default Storage Cloud ru15 port2

Ports                ovcasw15r1:12:2, ovcasw15r1:3:2

vHBAs                ovcacn32r1-vhba04, ovcacn13r1-vhba04, ovcacn37r1-vhba04, ovcacn26r1-vhba04, ovcacn31r1-vhba04, ovcacn10r1-vhba04, ovcacn27r1-vhba04, ovcacn09r1-vhba04, ovcacn08r1-vhba04, ovcacn29r1-vhba04, ovcacn28r1-vhba04, ovcacn12r1-vhba04, ovcamn06r1-vhba04, ovcacn07r1-vhba04, ovcacn11r1-vhba04, ovcacn36r1-vhba04, ovcacn30r1-vhba04, ovcacn35r1-vhba04, ovcacn14r1-vhba04, ovcacn34r1-vhba04, ovcacn33r1-vhba04, ovcamn05r1-vhba04

 

Storage Cloud with WWPN

Each server in the Oracle PCA is connected to the Fabric Interconnects via an InfiniBand (IB) connection. The Fabric Interconnects are capable of translating connections on their Fibre Channel ports to reroute them over these IB connections. To facilitate this, vHBAs are defined on each server to map to a Storage cloud defined on the Fabric Interconnects. The storage cloud that these vHBAs map to, determine which FC ports they relate to on the Fabric Interconnects.

A similar view of the connectivity can be seen from WWPN listing perspective. As with above, every CN is reflected in this listing; ie, every CN has connectivity to every Storage Cloud.

Cloud_Name           Cloud_A             

WWPN_List            50:01:39:70:00:7D:41:20, 50:01:39:70:00:7D:41:12, 50:01:39:70:00:7D:41:1C, 50:01:39:70:00:7D:41:06, 50:01:39:70:00:7D:41:04, 50:01:39:70:00:7D:41:0A, 50:01:39:70:00:7D:41:1E, 50:01:39:70:00:7D:41:2A, 50:01:39:70:00:7D:41:16, 50:01:39:70:00:7D:41:26, 50:01:39:70:00:7D:41:18, 50:01:39:70:00:7D:41:10, 50:01:39:70:00:7D:41:02, 50:01:39:70:00:7D:41:08, 50:01:39:70:00:7D:41:0C, 50:01:39:70:00:7D:41:0E, 50:01:39:70:00:7D:41:1A, 50:01:39:70:00:7D:41:24, 50:01:39:70:00:7D:41:28, 50:01:39:70:00:7D:41:14, 50:01:39:70:00:7D:41:22, 50:01:39:70:00:7D:41:00

—————————————-

Cloud_Name           Cloud_B             

WWPN_List            50:01:39:70:00:7D:41:21, 50:01:39:70:00:7D:41:13, 50:01:39:70:00:7D:41:1D, 50:01:39:70:00:7D:41:07, 50:01:39:70:00:7D:41:05, 50:01:39:70:00:7D:41:0B, 50:01:39:70:00:7D:41:1F, 50:01:39:70:00:7D:41:2B, 50:01:39:70:00:7D:41:17, 50:01:39:70:00:7D:41:27, 50:01:39:70:00:7D:41:19, 50:01:39:70:00:7D:41:11, 50:01:39:70:00:7D:41:03, 50:01:39:70:00:7D:41:09, 50:01:39:70:00:7D:41:0D, 50:01:39:70:00:7D:41:0F, 50:01:39:70:00:7D:41:1B, 50:01:39:70:00:7D:41:25, 50:01:39:70:00:7D:41:29, 50:01:39:70:00:7D:41:15, 50:01:39:70:00:7D:41:23, 50:01:39:70:00:7D:41:01

—————————————-

Cloud_Name           Cloud_C             

WWPN_List            50:01:39:70:00:7D:51:20, 50:01:39:70:00:7D:51:12, 50:01:39:70:00:7D:51:1C, 50:01:39:70:00:7D:51:06, 50:01:39:70:00:7D:51:04, 50:01:39:70:00:7D:51:0A, 50:01:39:70:00:7D:51:1E, 50:01:39:70:00:7D:51:2A, 50:01:39:70:00:7D:51:16, 50:01:39:70:00:7D:51:26, 50:01:39:70:00:7D:51:18, 50:01:39:70:00:7D:51:10, 50:01:39:70:00:7D:51:02, 50:01:39:70:00:7D:51:08, 50:01:39:70:00:7D:51:0C, 50:01:39:70:00:7D:51:0E, 50:01:39:70:00:7D:51:1A, 50:01:39:70:00:7D:51:24, 50:01:39:70:00:7D:51:28, 50:01:39:70:00:7D:51:14, 50:01:39:70:00:7D:51:22, 50:01:39:70:00:7D:51:00

—————————————-

Cloud_Name           Cloud_D             

WWPN_List            50:01:39:70:00:7D:51:21, 50:01:39:70:00:7D:51:13, 50:01:39:70:00:7D:51:1D, 50:01:39:70:00:7D:51:07, 50:01:39:70:00:7D:51:05, 50:01:39:70:00:7D:51:0B, 50:01:39:70:00:7D:51:1F, 50:01:39:70:00:7D:51:2B, 50:01:39:70:00:7D:51:17, 50:01:39:70:00:7D:51:27, 50:01:39:70:00:7D:51:19, 50:01:39:70:00:7D:51:11, 50:01:39:70:00:7D:51:03, 50:01:39:70:00:7D:51:09, 50:01:39:70:00:7D:51:0D, 50:01:39:70:00:7D:51:0F, 50:01:39:70:00:7D:51:1B, 50:01:39:70:00:7D:51:25, 50:01:39:70:00:7D:51:29, 50:01:39:70:00:7D:51:15, 50:01:39:70:00:7D:51:23, 50:01:39:70:00:7D:51:01

An associated grouping by vHBA and Cloud is listed here:

 

WWPN             vHBA           Cloud_Name     Server       Type     Alias                 

————–   ——          —-          ——–     ——–  ———-                                   

50:01:39:70:00:7D:41:28   vhba01     Cloud_A   ovcacn14r1      CN    ovcacn14r1-Cloud_A                      

50:01:39:70:00:7D:41:20   vhba01     Cloud_A   ovcacn32r1      CN    ovcacn32r1-Cloud_A                      

50:01:39:70:00:7D:41:22   vhba01     Cloud_A   ovcacn33r1      CN    ovcacn33r1-Cloud_A                      

50:01:39:70:00:7D:41:24   vhba01     Cloud_A   ovcacn35r1      CN    ovcacn35r1-Cloud_A                      

50:01:39:70:00:7D:41:26   vhba01     Cloud_A   ovcacn29r1      CN    ovcacn29r1-Cloud_A                      

50:01:39:70:00:7D:41:06   vhba01     Cloud_A   ovcacn26r1      CN    ovcacn26r1-Cloud_A                      

50:01:39:70:00:7D:41:04   vhba01     Cloud_A   ovcacn31r1      CN    ovcacn31r1-Cloud_A                       

50:01:39:70:00:7D:41:08   vhba01     Cloud_A   ovcacn07r1      CN    ovcacn07r1-Cloud_A                      

50:01:39:70:00:7D:41:0C   vhba01     Cloud_A   ovcacn11r1      CN    ovcacn11r1-Cloud_A                      

50:01:39:70:00:7D:41:1E   vhba01     Cloud_A   ovcacn27r1      CN    ovcacn27r1-Cloud_A                      

50:01:39:70:00:7D:41:14   vhba01     Cloud_A   ovcacn34r1      CN    ovcacn34r1-Cloud_A                      

50:01:39:70:00:7D:41:12   vhba01     Cloud_A   ovcacn13r1      CN    ovcacn13r1-Cloud_A                      

50:01:39:70:00:7D:41:1A   vhba01     Cloud_A   ovcacn30r1      CN    ovcacn30r1-Cloud_A                      

50:01:39:70:00:7D:41:18   vhba01     Cloud_A   ovcacn28r1      CN    ovcacn28r1-Cloud_A                       

50:01:39:70:00:7D:41:0A   vhba01     Cloud_A   ovcacn10r1      CN    ovcacn10r1-Cloud_A                      

50:01:39:70:00:7D:41:1C   vhba01     Cloud_A   ovcacn37r1      CN    ovcacn37r1-Cloud_A                      

50:01:39:70:00:7D:41:0E   vhba01     Cloud_A   ovcacn36r1      CN    ovcacn36r1-Cloud_A                      

50:01:39:70:00:7D:41:16   vhba01     Cloud_A   ovcacn08r1      CN    ovcacn08r1-Cloud_A                      

50:01:39:70:00:7D:41:2A   vhba01     Cloud_A   ovcacn09r1      CN    ovcacn09r1-Cloud_A                      

50:01:39:70:00:7D:41:10   vhba01     Cloud_A   ovcacn12r1      CN    ovcacn12r1-Cloud_A                      

50:01:39:70:00:7D:41:29   vhba02     Cloud_B   ovcacn14r1      CN    ovcacn14r1-Cloud_B                      

50:01:39:70:00:7D:41:21   vhba02     Cloud_B   ovcacn32r1      CN    ovcacn32r1-Cloud_B                      

50:01:39:70:00:7D:41:23   vhba02     Cloud_B   ovcacn33r1      CN    ovcacn33r1-Cloud_B                      

50:01:39:70:00:7D:41:25   vhba02     Cloud_B   ovcacn35r1      CN    ovcacn35r1-Cloud_B                      

50:01:39:70:00:7D:41:27   vhba02     Cloud_B   ovcacn29r1      CN    ovcacn29r1-Cloud_B                      

50:01:39:70:00:7D:41:07   vhba02     Cloud_B   ovcacn26r1      CN    ovcacn26r1-Cloud_B                      

50:01:39:70:00:7D:41:05   vhba02     Cloud_B   ovcacn31r1      CN    ovcacn31r1-Cloud_B                      

50:01:39:70:00:7D:41:09   vhba02     Cloud_B   ovcacn07r1      CN    ovcacn07r1-Cloud_B                      

50:01:39:70:00:7D:41:1D   vhba02     Cloud_B   ovcacn37r1      CN    ovcacn37r1-Cloud_B                      

50:01:39:70:00:7D:41:17   vhba02     Cloud_B   ovcacn08r1      CN    ovcacn08r1-Cloud_B                      

50:01:39:70:00:7D:41:11   vhba02     Cloud_B   ovcacn12r1      CN    ovcacn12r1-Cloud_B                      

50:01:39:70:00:7D:41:1F   vhba02     Cloud_B   ovcacn27r1      CN    ovcacn27r1-Cloud_B                      

50:01:39:70:00:7D:41:13   vhba02     Cloud_B   ovcacn13r1      CN    ovcacn13r1-Cloud_B                      

50:01:39:70:00:7D:41:19   vhba02     Cloud_B   ovcacn28r1      CN    ovcacn28r1-Cloud_B                      

50:01:39:70:00:7D:41:0B   vhba02     Cloud_B   ovcacn10r1      CN    ovcacn10r1-Cloud_B                      

50:01:39:70:00:7D:41:15   vhba02     Cloud_B   ovcacn34r1      CN    ovcacn34r1-Cloud_B                      

50:01:39:70:00:7D:41:0F   vhba02     Cloud_B   ovcacn36r1      CN    ovcacn36r1-Cloud_B                      

50:01:39:70:00:7D:41:0D   vhba02     Cloud_B   ovcacn11r1      CN    ovcacn11r1-Cloud_B                      

50:01:39:70:00:7D:41:1B   vhba02     Cloud_B   ovcacn30r1      CN    ovcacn30r1-Cloud_B                      

50:01:39:70:00:7D:41:2B   vhba02     Cloud_B   ovcacn09r1      CN    ovcacn09r1-Cloud_B                      

50:01:39:70:00:7D:51:12   vhba03     Cloud_C   ovcacn13r1      CN    ovcacn13r1-Cloud_C                       

50:01:39:70:00:7D:51:1E   vhba03     Cloud_C   ovcacn27r1      CN    ovcacn27r1-Cloud_C                      

50:01:39:70:00:7D:51:08   vhba03     Cloud_C   ovcacn07r1      CN    ovcacn07r1-Cloud_C                      

50:01:39:70:00:7D:51:10   vhba03     Cloud_C   ovcacn12r1      CN    ovcacn12r1-Cloud_C                      

50:01:39:70:00:7D:51:20   vhba03     Cloud_C   ovcacn32r1      CN    ovcacn32r1-Cloud_C                      

50:01:39:70:00:7D:51:22   vhba03     Cloud_C   ovcacn33r1      CN    ovcacn33r1-Cloud_C                      

50:01:39:70:00:7D:51:24   vhba03     Cloud_C   ovcacn35r1      CN    ovcacn35r1-Cloud_C                      

50:01:39:70:00:7D:51:26   vhba03     Cloud_C   ovcacn29r1      CN    ovcacn29r1-Cloud_C                       

50:01:39:70:00:7D:51:28   vhba03     Cloud_C   ovcacn14r1      CN    ovcacn14r1-Cloud_C                      

50:01:39:70:00:7D:51:1C   vhba03     Cloud_C   ovcacn37r1      CN    ovcacn37r1-Cloud_C                      

50:01:39:70:00:7D:51:0C   vhba03     Cloud_C   ovcacn11r1      CN    ovcacn11r1-Cloud_C                      

50:01:39:70:00:7D:51:06   vhba03     Cloud_C   ovcacn26r1      CN    ovcacn26r1-Cloud_C                      

50:01:39:70:00:7D:51:14   vhba03     Cloud_C   ovcacn34r1      CN    ovcacn34r1-Cloud_C                      

50:01:39:70:00:7D:51:2A   vhba03     Cloud_C   ovcacn09r1      CN    ovcacn09r1-Cloud_C                      

50:01:39:70:00:7D:51:1A   vhba03     Cloud_C   ovcacn30r1      CN    ovcacn30r1-Cloud_C                       

50:01:39:70:00:7D:51:16   vhba03     Cloud_C   ovcacn08r1      CN    ovcacn08r1-Cloud_C                      

50:01:39:70:00:7D:51:0A   vhba03     Cloud_C   ovcacn10r1      CN    ovcacn10r1-Cloud_C                      

50:01:39:70:00:7D:51:18   vhba03     Cloud_C   ovcacn28r1      CN    ovcacn28r1-Cloud_C                      

50:01:39:70:00:7D:51:04   vhba03     Cloud_C   ovcacn31r1      CN    ovcacn31r1-Cloud_C                      

50:01:39:70:00:7D:51:0E   vhba03     Cloud_C   ovcacn36r1      CN    ovcacn36r1-Cloud_C                      

50:01:39:70:00:7D:51:1B   vhba04     Cloud_D   ovcacn30r1      CN    ovcacn30r1-Cloud_D                      

50:01:39:70:00:7D:51:1D   vhba04     Cloud_D   ovcacn37r1      CN    ovcacn37r1-Cloud_D                      

50:01:39:70:00:7D:51:1F   vhba04     Cloud_D   ovcacn27r1      CN    ovcacn27r1-Cloud_D                      

50:01:39:70:00:7D:51:07   vhba04     Cloud_D   ovcacn26r1      CN    ovcacn26r1-Cloud_D                       

50:01:39:70:00:7D:51:19   vhba04     Cloud_D   ovcacn28r1      CN    ovcacn28r1-Cloud_D                      

50:01:39:70:00:7D:51:21   vhba04     Cloud_D   ovcacn32r1      CN    ovcacn32r1-Cloud_D                      

50:01:39:70:00:7D:51:23   vhba04     Cloud_D   ovcacn33r1      CN    ovcacn33r1-Cloud_D                      

50:01:39:70:00:7D:51:25   vhba04     Cloud_D   ovcacn35r1      CN    ovcacn35r1-Cloud_D                      

50:01:39:70:00:7D:51:27   vhba04     Cloud_D   ovcacn29r1      CN    ovcacn29r1-Cloud_D                      

50:01:39:70:00:7D:51:29   vhba04     Cloud_D   ovcacn14r1      CN    ovcacn14r1-Cloud_D                      

50:01:39:70:00:7D:51:09   vhba04     Cloud_D   ovcacn07r1      CN    ovcacn07r1-Cloud_D                      

50:01:39:70:00:7D:51:0D   vhba04     Cloud_D   ovcacn11r1      CN    ovcacn11r1-Cloud_D                      

50:01:39:70:00:7D:51:15   vhba04     Cloud_D   ovcacn34r1      CN    ovcacn34r1-Cloud_D                      

50:01:39:70:00:7D:51:0B   vhba04     Cloud_D   ovcacn10r1      CN    ovcacn10r1-Cloud_D                      

50:01:39:70:00:7D:51:05   vhba04     Cloud_D   ovcacn31r1      CN    ovcacn31r1-Cloud_D                      

50:01:39:70:00:7D:51:2B   vhba04     Cloud_D   ovcacn09r1      CN    ovcacn09r1-Cloud_D                      

50:01:39:70:00:7D:51:11   vhba04     Cloud_D   ovcacn12r1      CN    ovcacn12r1-Cloud_D                      

50:01:39:70:00:7D:51:17   vhba04     Cloud_D   ovcacn08r1      CN    ovcacn08r1-Cloud_D                      

50:01:39:70:00:7D:51:13   vhba04     Cloud_D   ovcacn13r1      CN    ovcacn13r1-Cloud_D                      

50:01:39:70:00:7D:51:0F   vhba04     Cloud_D   ovcacn36r1      CN    ovcacn36r1-Cloud_D                      

—————–

80 rows displayed

 

It is important to distinguish between WWNNs and WWPNs. A WWNN is used to identify a device or node such as an HBA, while a WWPN is used to identify a port that is accessible for that same device. Since some devices can have multiple ports, a device may have a single WWNN and multiple WWPNs.

For CN vHBAs, there is a single WWNN and a single WWPN for each vHBA. Note, the fourth hexadecimal octet that makes up the WWN differs.

pca-admin show vhba-info ovcacn07r1

vHBA_Name       Cloud     WWNN                      WWPN                     

———       —–     —-                      —-                     

vhba03          Cloud_C  50:01:39:71:00:7D:51:08   50:01:39:70:00:7D:51:08  

vhba02          Cloud_B  50:01:39:71:00:7D:41:09   50:01:39:70:00:7D:41:09  

vhba01          Cloud_A  50:01:39:71:00:7D:41:08   50:01:39:70:00:7D:41:08  

vhba04          Cloud_D  50:01:39:71:00:7D:51:09   50:01:39:70:00:7D:51:09  

 

OVM> list PhysicalDisk

Command: list PhysicalDisk

Status: Success

Time: 2017-11-14 20:45:20,156 UTC

Data: 

  id:0004fb000018000089acb680613acbb7  name:3600605b00a76d8601e6b20a309121c29

  id:0004fb000018000045e53c34341ddba2  name:3600605b00a7663001e6b1f8c093ed7d1

  id:0004fb000018000071649d0873535c10  name:3600605b00a7690301e6b23120945f79f

  id:0004fb00001800007285822483e7faf9  name:SUN (1)

  id:0004fb000018000075656b0d46cd0f92  name:SUN (2)

  id:0004fb0000180000652ed33b97ce0813  name:3600605b00a76d7d01e6b1fc40920aaa1

  id:0004fb0000180000003ca296f4d63d47  name:3600605b00a76d8401e6b1e5e08eba0e6

  id:0004fb0000180000c7a2053f6a33ab6c  name:3600605b00a7648701e6b1f7209061413

  id:0004fb0000180000c2ce5bf457cb8c3e  name:3600605b00a7644901e6b2092092a2995

  id:0004fb000018000004a154445ea57a30  name:3600605b00a7635001e6b1fed0925240f

  id:0004fb00001800002316100cabe79348  name:EMC VMAX FC LUN07

  id:0004fb00001800005ad30a34ba849e31  name:EMC VMAX FC LUN06

  id:0004fb0000180000ea41971236b070bb  name:EMC VMAX FC LUN05

  id:0004fb0000180000293acf9735f6d443  name:EMC VMAX SATA LUN03

  id:0004fb0000180000a65b1bc3c16c0210  name:EMC VMAX FC LUN02

  id:0004fb0000180000683cff7d90036fe7  name:EMC VMAX FC LUN01

  id:0004fb0000180000a8254d24e27180aa  name:EMC VMAX FAST(Prod) LUN04

  id:0004fb00001800002e04766575ed1315  name:EMC ebsprod fra 01

  id:0004fb0000180000f1e48b8c1465c245  name:EMC ebsprod fra 02

  id:0004fb000018000004d1ab0deb5e4926  name:EMC ebsprod fra 03

  id:0004fb00001800008f2efe35e2c708e5  name:EMC ebsprod fra 04

  id:0004fb0000180000a1c7cfe90681651b  name:EMC ebsprod fra 05

  id:0004fb0000180000ce63d8cc9231123f  name:EMC ebsprod fra 06

  id:0004fb00001800000d857c98406d3dfb  name:EMC ebsprod fra 07

  id:0004fb00001800000946d5a01856ae35  name:EMC ebsprod fra 08

  id:0004fb00001800002f1f8d3690e4a119  name:EMC ebsprod orion 01

  id:0004fb0000180000c68a7d0fa8dab371  name:EMC ebsprod orion 02

  id:0004fb00001800008f9886d751d9ed1a  name:EMC ebsprod redo 01

  id:0004fb00001800000e870c6e72191753  name:EMC ebsprod redo 02

  id:0004fb00001800004321068d7cdb0369  name:EMC ebsprod redo 04

  id:0004fb00001800005bb7782ff2960efb  name:EMC ebsprod redo 03

  id:0004fb00001800003e2e40a8d1376096  name:EMC ebsprod ocrvd 01

  id:0004fb000018000084ccd381a4fa1a24  name:EMC ebsprod ocrvd 02

  id:0004fb00001800002a17b022e6dd05c5  name:EMC ebsprod ocrvd 03

  id:0004fb0000180000c3b24ad7cb408520  name:EMC ebsprod data 01

  id:0004fb000018000076c38f606617f660  name:EMC ebsprod data 02

  id:0004fb000018000032359a9b4a30c1d2  name:EMC ebsprod data 03

  id:0004fb000018000025b0c2eb9914a10b  name:EMC ebsprod data 04

  id:0004fb0000180000679464b498ac424b  name:EMC ebsprod data 05

  id:0004fb0000180000b6f66219e0edb83f  name:EMC ebsprod data 06

  id:0004fb0000180000d290f7cfaf6c2187  name:EMC ebsprod data 07

  id:0004fb0000180000fc5181433a564f81  name:3600605b00a7680f01e6b1f760903237c

  id:0004fb0000180000029437418b4d907b  name:3600605b00a762f001e6b1f7108cfaf4b

  id:0004fb0000180000096c38cbd7a41395  name:3600605b00a7637301e6b20f709059454

  id:0004fb0000180000a836c8251c98965d  name:3600605b00a768ec01e6b211d13b4a617

  id:0004fb0000180000004234fb6dbcdfcd  name:3600605b00a766da01e6b1f9709164a14

  id:0004fb0000180000ed2ab0b0df14f17d  name:3600605b00a768d001e6b1e7208c66eb0

  id:0004fb00001800005f310f01833b9144  name:3600605b00a763b801e6b208508ec64a8

  id:0004fb000018000039fb1f3383585596  name:3600605b00a7663301e6b1e1d0902a0c3

  id:0004fb0000180000a291ab8b56714ce1  name:3600605b00a768ee01e6b212c09b1ce22

  id:0004fb00001800007526bc66e0a68bbe  name:3600605b00a76dc401e6b1fc208d1fab0

  id:0004fb00001800007fb35c0b1749db85  name:3600605b00a7662801e6b22e008cbf7bd

  id:0004fb0000180000e29c37f16074690f  name:3600605b00a7636c01e6b1efa08b958ab

Command: list server

Status: Success

Time: 2017-11-14 20:54:47,324 UTC

Data: 

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:78  name:ovcacn12r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:16:0c  name:ovcacn07r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:36:d0  name:ovcacn11r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:0d:da  name:ovcacn36r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:59:88  name:ovcacn28r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a4:5c  name:ovcacn37r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6c:a6  name:ovcacn14r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:67:54  name:ovcacn13r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:84:a3:0e  name:ovcacn29r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:be  name:ovcacn31r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:4a:9e  name:ovcacn10r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:87:15:50  name:ovcacn27r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6a:8a  name:ovcacn32r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:80:10:4e  name:ovcacn34r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:b4  name:ovcacn26r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a1:44  name:ovcacn33r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:14:3e  name:ovcacn35r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:4b:0c  name:ovcacn08r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:d6  name:ovcacn30r1

  id:08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6e:b6  name:ovcacn09r1

 

 

Command: list Repository

Status: Success

Time: 2017-11-14 20:55:52,268 UTC

Data: 

  id:0004fb0000030000f6d09c5125f8f99b  name:Rack1-Repository

  id:0004fb0000030000d1969e0ffefed9e3  name:EMC-VMAX-FC-Repo5

  id:0004fb0000030000d55498ec6e5a4470  name:ovcacn27r1-localfsrepo

  id:0004fb0000030000465dbff337acb2b7  name:ovcacn08r1-localfsrepo

  id:0004fb000003000094e850fa4e5b5dc1  name:ovcacn37r1-localfsrepo

  id:0004fb00000300009633c963daed6fbe  name:ovcacn07r1-localfsrepo

  id:0004fb0000030000bdb6e6d7b3c63a39  name:ovcacn26r1-localfsrepo

  id:0004fb0000030000c9f71d6a43cf8ddc  name:EMC-VMAX–FC-Repo1

  id:0004fb00000300009bdea16ab8bfdbe7  name:ovcacn30r1-localfsrepo

  id:0004fb00000300003f9f5da1e76442e6  name:ovcacn11r1-localfsrepo

  id:0004fb0000030000a7d6ca273d18e846  name:EMC-VMAX-FC-Repo6

  id:0004fb0000030000bd9b7812ae267d47  name:EMC-VMAX-SATA-Repo3

  id:0004fb00000300000b710d9f8e03502d  name:ovcacn09r1-localfsrepo

  id:0004fb00000300006f28ce4acad4b952  name:EMC-VMAX-FC-Repo7

  id:0004fb0000030000a0e7f2e6213c04f3  name:ovcacn36r1-localfsrepo

  id:0004fb0000030000c8cc073e70c5c41f  name:EMC-VMAX-FC-Repo2

  id:0004fb00000300001cb34b718c486dd6  name:ovcacn29r1-localfsrepo

  id:0004fb0000030000ffde50c6ec8f06e4  name:ovcacn31r1-localfsrepo

  id:0004fb0000030000903dae0fc220ac45  name:ovcacn10r1-localfsrepo

  id:0004fb000003000031031f7a8b957aa0  name:ovcacn13r1-localfsrepo

  id:0004fb00000300000aa95fabb2b85dc7  name:ovcacn14r1-localfsrepo

  id:0004fb0000030000847307a8e689dda3  name:ovcacn34r1-localfsrepo

  id:0004fb00000300004df4b5d72bb7e3c1  name:ovcacn35r1-localfsrepo

  id:0004fb00000300000d17779831c520ab  name:ovcacn32r1-localfsrepo

  id:0004fb0000030000276054535f2cf66f  name:ovcacn12r1-localfsrepo

  id:0004fb00000300006f1bc814a1dba812  name:EMC-VMAX-FAST(Prod)-Repo4

  id:0004fb0000030000adad162696c02503  name:ovcacn33r1-localfsrepo

  id:0004fb00000300006a283e29a8546139  name:ovcacn28r1-localfsrepo

OVM> list SanServer

Command: list SanServer

Status: Success

Time: 2017-11-14 20:56:02,774 UTC

Data: 

  id:0004fb0000090000c0070fc37e9fe47a  name:OVCA_ZFSSA_Rack1

  id:Unmanaged iSCSI Storage Array  name:Unmanaged iSCSI Storage Array

  id:Unmanaged FibreChannel Storage Array  name:Unmanaged FibreChannel Storage Array

 

OVM> list StorageInitiator

Command: list StorageInitiator

Status: Success

Time: 2017-11-14 20:56:20,541 UTC

Data: 

  id:0x50013970007d4110  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4111  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5110  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5111  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:4be6a1e5f39e  name:iqn.1988-12.com.oracle:4be6a1e5f39e

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:78  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:78

  id:0x50013970007d4108  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4109  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5108  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5109  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:b6db9886524  name:iqn.1988-12.com.oracle:b6db9886524

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:16:0c  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:16:0c

  id:0x50013970007d410c  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d410d  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510c  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510d  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:2cfd9cdfab1  name:iqn.1988-12.com.oracle:2cfd9cdfab1

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:36:d0  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:36:d0

  id:0x50013970007d410e  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d410f  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510e  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510f  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:72f8d85d1efc  name:iqn.1988-12.com.oracle:72f8d85d1efc

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:0d:da  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:0d:da

  id:0x50013970007d4118  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4119  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5118  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5119  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:a5903e2a89f  name:iqn.1988-12.com.oracle:a5903e2a89f

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:59:88  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:59:88

  id:0x50013970007d411c  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d411d  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511c  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511d  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:c13f7ca17ee4  name:iqn.1988-12.com.oracle:c13f7ca17ee4

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a4:5c  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a4:5c

  id:0x50013970007d4128  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4129  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5128  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5129  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:c79e2161d338  name:iqn.1988-12.com.oracle:c79e2161d338

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6c:a6  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6c:a6

  id:0x50013970007d4112  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4113  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5112  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5113  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:e819eb62c9ac  name:iqn.1988-12.com.oracle:e819eb62c9ac

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:67:54  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:67:54

  id:0x50013970007d4126  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4127  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5126  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5127  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:bb6edac83fcd  name:iqn.1988-12.com.oracle:bb6edac83fcd

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:84:a3:0e  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:84:a3:0e

  id:0x50013970007d4104  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4105  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5104  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5105  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:59da9467ef15  name:iqn.1988-12.com.oracle:59da9467ef15

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:be  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:be

  id:0x50013970007d410a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d410b  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d510b  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:82f2dc9afc61  name:iqn.1988-12.com.oracle:82f2dc9afc61

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:4a:9e  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:4a:9e

  id:0x50013970007d411e  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d411f  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511e  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511f  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:78d33e6c874  name:iqn.1988-12.com.oracle:78d33e6c874

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:87:15:50  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:87:15:50

  id:0x50013970007d4120  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4121  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5120  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5121  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:d940444ea668  name:iqn.1988-12.com.oracle:d940444ea668

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6a:8a  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6a:8a

  id:0x50013970007d4114  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4115  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5114  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5115  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:5e907b7089a2  name:iqn.1988-12.com.oracle:5e907b7089a2

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:80:10:4e  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:80:10:4e

  id:0x50013970007d4106  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4107  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5106  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5107  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:59b9c2229679  name:iqn.1988-12.com.oracle:59b9c2229679

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:b4  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a0:b4

  id:0x50013970007d4122  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4123  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5122  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5123  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:9191559ef7c0  name:iqn.1988-12.com.oracle:9191559ef7c0

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a1:44  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:a1:44

  id:0x50013970007d4124  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4125  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5124  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5125  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:84a7b614eeb5  name:iqn.1988-12.com.oracle:84a7b614eeb5

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:14:3e  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:79:14:3e

  id:0x50013970007d4116  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d4117  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5116  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d5117  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:5cd7ad97b52c  name:iqn.1988-12.com.oracle:5cd7ad97b52c

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:4b:0c  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:7a:4b:0c

  id:0x50013970007d411a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d411b  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d511b  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:7ba542ea5198  name:iqn.1988-12.com.oracle:7ba542ea5198

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:d6  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:d6

  id:0x50013970007d412a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d412b  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d512a  name:FC Initiator @ Port 0xffffffff

  id:0x50013970007d512b  name:FC Initiator @ Port 0xffffffff

  id:iqn.1988-12.com.oracle:a263989acb86  name:iqn.1988-12.com.oracle:a263989acb86

  id:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6e:b6  name:storage.LocalStorageInitiator in 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6e:b6

 

OVM> list VirtualDisk

Command: list VirtualDisk

Status: Success

Time: 2017-11-14 20:56:37,915 UTC

Data: 

  id:0004fb0000120000f5c7429df92b318d.img  name:admebsd501_boot

  id:0004fb000012000027b273600ca28486.img  name:admebsd501_LUN01

  id:0004fb0000120000f4a6aa71f9ac687d.img  name:admebsd501_LUN02

  id:0004fb0000120000b8d11e181cfa4d22.img  name:admebsd503_LUN01 (2)

  id:0004fb000012000020ba4039152aa40e.img  name:admebsd503_boot (2)

  id:0004fb00001200005d5538775464765a.img  name:admebsd503_LUN02

  id:0004fb0000120000b15748fc16cb38d6.img  name:admavp501_boot

  id:0004fb0000120000692fc2fcc8c9d829.img  name:PCASRV-Java7_LUN01

  id:786df5556a5144609142c95da9cb2496.img  name:system

  id:0004fb0000120000932da51c889aa150.img  name:admracsb201_RACSB4_DATA_01

  id:0004fb0000120000cc66b647fbd2957d.img  name:admracsb201_RACSB4_DATA_02

  id:0004fb000012000055a11b1c8dd5305c.img  name:admracsb201_RACSB4_DATA_03

  id:0004fb00001200007403b46e06fcdc72.img  name:PCASRV-Java6_LUN01

  id:0004fb0000120000252fc76e79018f07.img  name:admracsb201_RACSB4_DATA_04

  id:0004fb000012000074ab4ad505255980.img  name:admnfst601_LUN03

  id:0004fb00001200003c218c9678ba82bd.img  name:AdmOracleLinux6.7_BaseMT_1.1_boot

  id:0004fb00001200005622b5ee67451ce0.img  name:AdmOracleLinux6.7_BaseMT_1.1_LUN01

  id:0004fb0000120000343ee39c7febc12b.img  name:admebst501_LUN01

  id:0004fb00001200004bfe02732e54a59c.img  name:AdmEbsLxAppPoc03_boot

  id:0004fb0000120000e3ea48d4e1f615c5.img  name:admracsb201_RACSB4_REDO_01

  id:0004fb000012000091afdac18d05e52f.img  name:bootdisk

  id:0004fb000012000057bc58afcfad7f7c.img  name:admracsb201_RACSB4_REDO_02

  id:0004fb00001200006630c64c4bcf67a2.img  name:admracsb201_RACSB4_OCRVD_01

  id:0004fb00001200003394f367ef8084d0.img  name:AdmEbsLxAppPoc01_boot

 

Command: list VM

Status: Success

Time: 2017-11-14 21:05:47,987 UTC

Data: 

  id:0004fb00000600003593a5716c5b22bd  name:admavp501

  id:0004fb00000600006ac8200d95a0b83f  name:admebst202

  id:0004fb000006000086a50c53eee394f7  name:admebsd503

  id:0004fb0000060000ebad2ed25c3ff95e  name:admebst502

  id:0004fb00000600008252dfd8bc640872  name:AdmOracleLinux6.7_BaseMT_1.1

  id:0004fb0000060000f587f0449f7b75c9  name:AdmOracleLinux6.7_BaseDB_1.1

  id:0004fb00000600002bb591e7f660ae40  name:AdmOracleLinux6.7_BaseMT

  id:0004fb00000600002c437d74c2761d4d  name:Template_Adm_DB_OL6u7_x86_64_1.1

  id:0004fb0000060000ed58fbd4d2a58094  name:Template_Adm_MT_OL6u7_x86_64_2.0

  id:0004fb0000060000ff12b3a2b5c589dd  name:Template_Adm_RAC_DB_OL6u7_x86_64_2.0

  id:0004fb00000600000b5c4a71002da8cb  name:Template_AdmEbsLxAppPoc02_01

  id:0004fb0000060000d9b57cd388b2b8ca  name:Template_Adm_DB_OL6u7_x86_64_1.0

  id:0004fb000006000099ed04e2800c952e  name:Template_Adm_RAC_DB_OL6u7_x86_64_1.0

  id:0004fb0000060000febd1b0344a74c7d  name:Template_Adm_MT_OL6u7_x86_64_1.0

Command: list VmDiskMapping

Status: Success

Time: 2017-11-14 20:57:47,424 UTC

Data: 

  id:0004fb00001300001c5dbefed4a7a42b  name:0004fb00001300001c5dbefed4a7a42b

  id:0004fb0000130000dcd307ad89c7a0cc  name:0004fb0000130000dcd307ad89c7a0cc

  id:0004fb0000130000815171a045300831  name:0004fb0000130000815171a045300831

  id:0004fb0000130000efc16abda39a8bb1  name:0004fb0000130000efc16abda39a8bb1

  id:0004fb00001300007cfeaab5aa624453  name:0004fb00001300007cfeaab5aa624453

  id:0004fb0000130000846beb032f2c87fc  name:0004fb0000130000846beb032f2c87fc

  id:0004fb0000130000d655da92ab6a9b0f  name:0004fb0000130000d655da92ab6a9b0f

  id:0004fb0000130000f0dcba1f3758cc2c  name:0004fb0000130000f0dcba1f3758cc2c

 …..

./doit.eovmcli2: Generating OVM VM Inventory Report

———- PROCESSING VM=admapxp201

 

Command: show vm name=admapxp201

 

Status: Success

 

Time: 2017-11-17 23:00:36,448 UTC

 

Data:

 

  Name = admapxp201

 

  Id = 0004fb000006000032d9e101be35a66b

 

  Status = Stopped

 

  Memory (MB) = 32768

 

  Max. Memory (MB) = 32768

 

  Max. Processors = 4

 

  Processors = 4

 

  Priority = 50

 

  Processor Cap = 100

 

  High Availability = Yes

 

  Operating System = Oracle Linux 6

 

  Mouse Type = Default

 

  Domain Type = Xen HVM, PV Drivers

 

  Keymap = en-us

 

  Boot Order 1 = Disk

 

  Server = 08:00:20:ff:ff:ff:ff:ff:ff:ff:00:10:e0:8d:6f:d6  [ovcacn30r1]

 

  Repository = 0004fb0000030000a7d6ca273d18e846  [EMC-VMAX-FC-Repo6]

 

  Vnic 1 = 0004fb0000070000aea4da88d7a72625  [00:21:f6:00:00:43]

 

  Vnic 2 = 0004fb00000700001f66c01d8774537a  [00:21:f6:00:00:44]

 

  VmDiskMapping 1 = 0004fb00001300005993debac1c7311c

 

  VmDiskMapping 2 = 0004fb0000130000cbf203ebf15e4fd1

 

  VmDiskMapping 3 = 0004fb00001300001c3b76e0a93313f9

 

  VmDiskMapping 4 = 0004fb00001300003606f24c6cb2315e

 

  tag 1 = 0004fb0000260000633a36e2d8e304be  [Production]

 

vDisk=0004fb00001300005993debac1c7311c

 

Command: show vmdiskmapping id=0004fb00001300005993debac1c7311c

Are You Ready to apply the 12.2.0.1 July RU ???

Here's the steps that I went thru to apply the Grid Infrastructure Jul2017 Release Update 12.2.0.1.170718, Patch 26133434 

Configuration:  2 Node RAC cluster on Kaminario K2 AFA

The Grid Infrastructure Jul2017 Release Update (RU) 12.2.0.1.170718 includes updates for both the Clusterware home and Database home that can be applied in a rolling fashion.
In this blog post we have updated both nodes GI and DB stack.
The details and execution for Node1 are repeated and presented here for Node2 as well
Big thanks to Mike Dietrich for some insight !

 Step 1) Upgrade the Opatch version to atleast (12.2.0.1.7). We need to upgrade the OPatch version at GI and DB Homes on all the nodes.

[root@vna02 grid]# cd OPatch

[root@vna02 OPatch]# ./opatch version

OPatch Version: 12.2.0.1.9   è Grid Home

OPatch succeeded.

[oracle   @vna01 dbhome_1]$ opatch version

OPatch Version: 12.2.0.1.9  è Database Home

Step 2) Patch conflict check:

Node 1 : 

[oracle@vna01 GI]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.
PREREQ session
Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.9
OUI version       : 12.2.0.1.4
Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_18-43-33PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.

[oracle@vna01 GI]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778

Oracle Interim Patch Installer version 12.2.0.1.9
Copyright (c) 2017, Oracle Corporation.  All rights reserved.
PREREQ session
Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.9
OUI version       : 12.2.0.1.4
Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_19-01-04PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

From the Database Home :

[oracle@vna01 GI]$ . oraenv
ORACLE_SID = [VNADB1] ? VNADB1
The Oracle base remains unchanged with value /u01/app/oracle
[oracle@vna01 GI]$ cd $ORACLE_HOME/OPatch
[oracle@vna01 OPatch]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830
Oracle Interim Patch Installer version 12.2.0.1.9
Copyright (c) 2017, Oracle Corporation.  All rights reserved.
PREREQ session
Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.9
OUI version       : 12.2.0.1.4
Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_19-03-12PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.

[oracle@vna01 OPatch]$
[oracle@vna01 OPatch]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778
Oracle Interim Patch Installer version 12.2.0.1.9
Copyright (c) 2017, Oracle Corporation.  All rights reserved.
PREREQ session
Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc
OPatch version    : 12.2.0.1.9
OUI version       : 12.2.0.1.4
Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_19-03-25PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

One-off Patch Conflict Detection and Resolution

[root@vna01 OPatch]# $ORACLE_HOME/OPatch/opatchauto apply /home/oracle/software/patches/DB-GI-RU/GI/26133434 -analyze

OPatchauto session is initiated at Wed Sep 20 19:53:25 2017
System initialization log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2017-09-20_07-53-27PM.log.
Session log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2017-09-20_07-53-48PM.log
The id for this session is QWPL
Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1
Executing OPatch prereq operations to verify patch applicability on home /u01/app/12.2.0/grid
Patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1
Patch applicability verified successfully on home /u01/app/12.2.0/grid
Verifying SQL patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

Following step failed during analysis:
/bin/sh -c 'ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1 ORACLE_SID=VNADB1 /u01/app/oracle/product/12.2.0/dbhome_1/OPatch/datapatch -prereq'
SQL patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1
OPatchAuto successful.

--------------------------------Summary--------------------------------
Analysis for applying patches has completed successfully:
Host:vna01
RAC Home:/u01/app/oracle/product/12.2.0/dbhome_1

==Following patches were SKIPPED:
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/25586399
Reason: This patch is not applicable to this specified target type - "rac_database"

==Following patches were SUCCESSFULLY analyzed to be applied:
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778
Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_19-53-51PM_1.log
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830
Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_19-53-51PM_1.log

Host:vna01
CRS Home:/u01/app/12.2.0/grid
==Following patches were SUCCESSFULLY analyzed to be applied:
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_19-53-51PM_1.log
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/25586399
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_19-53-51PM_1.log
Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830
Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_19-53-51PM_1.log
OPatchauto session completed at Wed Sep 20 19:57:09 2017
Time taken to complete the session 3 minutes, 44 seconds


Now OPatchauto Apply process:

[root@vna01 OPatch]# $ORACLE_HOME/OPatch/opatchauto apply /home/oracle/software/patches/DB-GI-RU/GI/26133434

OPatchauto session is initiated at Wed Sep 20 20:18:27 2017

System initialization log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2017-09-20_08-18-28PM.log.

Session log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2017-09-20_08-18-50PM.log

The id for this session is CNCU

Executing OPatch prereq operations to verify patch applicability on home /u01/app/12.2.0/grid

Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

Patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Patch applicability verified successfully on home /u01/app/12.2.0/grid

Verifying SQL patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

"/bin/sh -c 'ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1 ORACLE_SID=VNADB1 /u01/app/oracle/product/12.2.0/dbhome_1/OPatch/datapatch -prereq'" command failed with errors. Please refer to logs for more details. SQL changes, if any, can be analyzed by manually retrying the same command.

SQL patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Preparing to bring down database service on home /u01/app/oracle/product/12.2.0/dbhome_1

Successfully prepared home /u01/app/oracle/product/12.2.0/dbhome_1 to bring down database service

Bringing down CRS service on home /u01/app/12.2.0/grid

Prepatch operation log file location: /u01/app/oracle/crsdata/vna01/crsconfig/crspatch_vna01_2017-09-20_08-22-15PM.log

CRS service brought down successfully on home /u01/app/12.2.0/grid

Performing prepatch operation on home /u01/app/oracle/product/12.2.0/dbhome_1

Perpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Start applying binary patch on home /u01/app/oracle/product/12.2.0/dbhome_1

Binary patch applied successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Performing postpatch operation on home /u01/app/oracle/product/12.2.0/dbhome_1

Postpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Start applying binary patch on home /u01/app/12.2.0/grid

Binary patch applied successfully on home /u01/app/12.2.0/grid

Starting CRS service on home /u01/app/12.2.0/grid

Postpatch operation log file location: /u01/app/oracle/crsdata/vna01/crsconfig/crspatch_vna01_2017-09-20_08-27-01PM.log

CRS service started successfully on home /u01/app/12.2.0/grid

Preparing home /u01/app/oracle/product/12.2.0/dbhome_1 after database service restarted

No step execution required.........

Prepared home /u01/app/oracle/product/12.2.0/dbhome_1 successfully after database service restarted

Trying to apply SQL patch on home /u01/app/oracle/product/12.2.0/dbhome_1

"/bin/sh -c 'ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1 ORACLE_SID=VNADB1 /u01/app/oracle/product/12.2.0/dbhome_1/OPatch/datapatch'" command failed with errors. Please refer to logs for more details. SQL changes, if any, can be applied by manually retrying the same command.

SQL patch applied successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

OPatchAuto successful.

--------------------------------Summary--------------------------------

Patching is completed successfully. Please find the summary as follows:

Host:vna01

RAC Home:/u01/app/oracle/product/12.2.0/dbhome_1

Summary:

==Following patches were SKIPPED:

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/25586399

Reason: This patch is not applicable to this specified target type - "rac_database"



==Following patches were SUCCESSFULLY applied:

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_20-23-57PM_1.log

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_20-23-57PM_1.log


Host:vna01

CRS Home:/u01/app/12.2.0/grid

Summary:

==Following patches were SUCCESSFULLY applied:

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26002778

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_20-24-44PM_1.log

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/25586399

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_20-24-44PM_1.log

Patch: /home/oracle/software/patches/DB-GI-RU/GI/26133434/26123830

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-20_20-24-44PM_1.log

OPatchauto session completed at Wed Sep 20 20:34:23 2017

Time taken to complete the session 15 minutes, 56 seconds


lsInventory Output:

[oracle@vna01 OPatch]$ opatch lsinventory

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/app/12.2.0/grid

Central Inventory : /u01/app/oraInventory

from           : /u01/app/12.2.0/grid/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/opatch2017-09-20_20-38-46PM_1.log



lsinventory Output file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2017-09-20_20-38-46PM.txt

--------------------------------------------------------------------------------

Local Machine Information::

Hostname: vna01

ARU platform id: 226

ARU platform description:: Linux x86-64

Installed Top-level Products (1):

Oracle Grid Infrastructure 12c                                       12.2.0.1.0

There are 1 products installed in this Oracle Home.

Interim patches (3) :

Patch  26123830     : applied on Wed Sep 20 20:26:39 BST 2017

Unique Patch ID:  21405588

Patch description:  "DATABASE RELEASE UPDATE: 12.2.0.1.170718 (26123830)"

Created on 7 Jul 2017, 00:33:59 hrs PST8PDT

Bugs fixed:

23026585, 24336249, 24929210, 24942749, 25036474, 25110233, 25410877

25417050, 25427662, 25459958, 25547901, 25569149, 25600342, 25600421

25606091, 25655390, 25662088, 24385983, 24923215, 25099758, 25429959

25662101, 25728085, 25823754, 22594071, 23665623, 23749454, 24326846

24334708, 24560906, 24573817, 24578797, 24609996, 24624166, 24668398

24674955, 24744686, 24811725, 24827228, 24831514, 24908321, 24976007

25184555, 25210499, 25211628, 25223839, 25262869, 25316758, 25337332

25455795, 25457409, 25539063, 25546608, 25612095, 25643931, 25410017

22729345, 24485174, 24509056, 24714096, 25329664, 25410180, 25607726

25957038, 25973152, 26024732, 24376878, 24589590, 24676172, 23548817

24796092, 24907917, 25044977, 25736747, 25766822, 25856821, 25051628

24534401, 24835919, 25050160, 25395696, 25430120, 25616359, 25715167

25967985

Patch  25586399     : applied on Wed Sep 20 20:26:17 BST 2017

Unique Patch ID:  21306685

Patch description:  "ACFS Patch Set Update : 12.2.0.1.170718 (25586399)"

Created on 16 Jun 2017, 00:35:19 hrs PST8PDT

Bugs fixed:

24679041, 24964969, 25098392, 25078431, 25491831


Patch  26002778     : applied on Wed Sep 20 20:25:26 BST 2017

Unique Patch ID:  21306682

Patch description:  "OCW Patch Set Update : 12.2.0.1.170718 (26002778)"

Created on 3 Jul 2017, 03:26:30 hrs PST8PDT

Bugs fixed:

26144044, 25541343, 25715179, 25493588, 24932026, 24801915, 25832375

25728787, 25825732, 24578464, 25832312, 25742471, 25790699, 25655495

25307145, 25485737, 25505841, 25697364, 24663993, 25026470, 25591658

25537905, 24451580, 25409838, 25371632, 25569634, 25245759, 24665035

25646592, 25025157, 24732650, 24664849, 24584419, 24423011, 24831158

25037836, 25556203, 24464953, 24657753, 25197670, 24796183, 20559126

25197395, 24808260

--------------------------------------------------------------------------------

OPatch succeeded.

[oracle@vna01 OPatch]

From the Database Home :

[oracle@vna01 OPatch]$ . oraenv

ORACLE_SID = [+ASM1] ? VNADB1

The Oracle base remains unchanged with value /u01/app/oracle

[oracle@vna01 OPatch]$  export PATH=$ORACLE_HOME/OPatch:$PATH

[oracle@vna01 OPatch]$ which opatch

/u01/app/oracle/product/12.2.0/dbhome_1/OPatch/opatch

[oracle@vna01 OPatch]$ opatch lsinventory

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1

Central Inventory : /u01/app/oraInventory

from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_20-40-03PM_1.log

lsinventory Output file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2017-09-20_20-40-03PM.txt

--------------------------------------------------------------------------------

Local Machine Information::

Hostname: vna01

ARU platform id: 226

ARU platform description:: Linux x86-64

Installed Top-level Products (1):

Oracle Database 12c                                                  12.2.0.1.0

There are 1 products installed in this Oracle Home.

Interim patches (2) :

Patch  26123830     : applied on Wed Sep 20 20:24:26 BST 2017

Unique Patch ID:  21405588

Patch description:  "DATABASE RELEASE UPDATE: 12.2.0.1.170718 (26123830)"

Created on 7 Jul 2017, 00:33:59 hrs PST8PDT

Bugs fixed:

23026585, 24336249, 24929210, 24942749, 25036474, 25110233, 25410877

25417050, 25427662, 25459958, 25547901, 25569149, 25600342, 25600421

25606091, 25655390, 25662088, 24385983, 24923215, 25099758, 25429959

25662101, 25728085, 25823754, 22594071, 23665623, 23749454, 24326846

24334708, 24560906, 24573817, 24578797, 24609996, 24624166, 24668398

24674955, 24744686, 24811725, 24827228, 24831514, 24908321, 24976007

25184555, 25210499, 25211628, 25223839, 25262869, 25316758, 25337332

25455795, 25457409, 25539063, 25546608, 25612095, 25643931, 25410017

22729345, 24485174, 24509056, 24714096, 25329664, 25410180, 25607726

25957038, 25973152, 26024732, 24376878, 24589590, 24676172, 23548817

24796092, 24907917, 25044977, 25736747, 25766822, 25856821, 25051628

24534401, 24835919, 25050160, 25395696, 25430120, 25616359, 25715167

25967985



Patch  26002778     : applied on Wed Sep 20 20:24:11 BST 2017

Unique Patch ID:  21306682

Patch description:  "OCW Patch Set Update : 12.2.0.1.170718 (26002778)"

Created on 3 Jul 2017, 03:26:30 hrs PST8PDT

Bugs fixed:

26144044, 25541343, 25715179, 25493588, 24932026, 24801915, 25832375

25728787, 25825732, 24578464, 25832312, 25742471, 25790699, 25655495

25307145, 25485737, 25505841, 25697364, 24663993, 25026470, 25591658

25537905, 24451580, 25409838, 25371632, 25569634, 25245759, 24665035

25646592, 25025157, 24732650, 24664849, 24584419, 24423011, 24831158

25037836, 25556203, 24464953, 24657753, 25197670, 24796183, 20559126

25197395, 24808260

--------------------------------------------------------------------------------

OPatch succeeded.

[oracle@vna01 OPatch]$



Node 2 : 

Run OPatch Conflict Check

From GI Home:

[oracle@vna02 patches]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/patches/26133434/26123830

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/12.2.0/grid

Central Inventory : /u01/app/oraInventory

from           : /u01/app/12.2.0/grid/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/opatch2017-09-20_20-48-20PM_1.log



Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[oracle@vna02 patches]$

[oracle@vna02 patches]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/patches/26133434/26002778

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.



PREREQ session

Oracle Home       : /u01/app/12.2.0/grid

Central Inventory : /u01/app/oraInventory

from           : /u01/app/12.2.0/grid/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/opatch2017-09-20_20-48-32PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

For the DB Home:

[oracle@vna02 patches]$ export PATH=$ORACLE_HOME/OPatch:$PATH

[oracle@vna02 patches]$ which opatch

/u01/app/oracle/product/12.2.0/dbhome_1/OPatch/opatch

[oracle@vna02 patches]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/patches/26133434/26123830

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1

Central Inventory : /u01/app/oraInventory

from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_20-52-24PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[oracle@vna02 patches]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /home/oracle/patches/26133434/26002778

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1

Central Inventory : /u01/app/oraInventory

from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-20_20-52-38PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

[oracle@vna02 patches]$



OPATCH Conflict Checks:

[root@vna02 12.2.0]# $ORACLE_HOME/OPatch/opatchauto apply /home/oracle/patches/26133434 -analyze

OPatchauto session is initiated at Thu Sep 21 02:18:32 2017

System initialization log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2017-09-21_02-18-33AM.log.

Session log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2017-09-21_02-18-53AM.log

The id for this session is NWN8

Executing OPatch prereq operations to verify patch applicability on home /u01/app/12.2.0/grid

Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

Patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

Patch applicability verified successfully on home /u01/app/12.2.0/grid

Verifying SQL patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

SQL patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1

OPatchAuto successful.

--------------------------------Summary--------------------------------

Analysis for applying patches has completed successfully:

Host:vna02

RAC Home:/u01/app/oracle/product/12.2.0/dbhome_1

==Following patches were SKIPPED:

Patch: /home/oracle/patches/26133434/25586399

Reason: This patch is not applicable to this specified target type - "rac_database"

==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /home/oracle/patches/26133434/26002778

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-18-56AM_1.log

Patch: /home/oracle/patches/26133434/26123830

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-18-56AM_1.log

Host:vna02

CRS Home:/u01/app/12.2.0/grid

==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /home/oracle/patches/26133434/26002778

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-18-56AM_1.log

Patch: /home/oracle/patches/26133434/25586399

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-18-56AM_1.log



Patch: /home/oracle/patches/26133434/26123830

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-18-56AM_1.log

OPatchauto session completed at Thu Sep 21 02:22:48 2017

Time taken to complete the session 4 minutes, 16 seconds


OPatchauto apply:



[root@vna02 12.2.0]# $ORACLE_HOME/OPatch/opatchauto apply /home/oracle/patches/26133434



OPatchauto session is initiated at Thu Sep 21 02:25:35 2017



System initialization log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2017-09-21_02-25-36AM.log.



Session log file is /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2017-09-21_02-25-57AM.log

The id for this session is PM1S



Executing OPatch prereq operations to verify patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1



Executing OPatch prereq operations to verify patch applicability on home /u01/app/12.2.0/grid

Patch applicability verified successfully on home /u01/app/12.2.0/grid



Patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1





Verifying SQL patch applicability on home /u01/app/oracle/product/12.2.0/dbhome_1

SQL patch applicability verified successfully on home /u01/app/oracle/product/12.2.0/dbhome_1





Preparing to bring down database service on home /u01/app/oracle/product/12.2.0/dbhome_1

Successfully prepared home /u01/app/oracle/product/12.2.0/dbhome_1 to bring down database service





Bringing down CRS service on home /u01/app/12.2.0/grid

Prepatch operation log file location: /u01/app/oracle/crsdata/vna02/crsconfig/crspatch_vna02_2017-09-21_02-30-11AM.log

CRS service brought down successfully on home /u01/app/12.2.0/grid





Performing prepatch operation on home /u01/app/oracle/product/12.2.0/dbhome_1

Perpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/dbhome_1





Start applying binary patch on home /u01/app/oracle/product/12.2.0/dbhome_1

Binary patch applied successfully on home /u01/app/oracle/product/12.2.0/dbhome_1





Performing postpatch operation on home /u01/app/oracle/product/12.2.0/dbhome_1

Postpatch operation completed successfully on home /u01/app/oracle/product/12.2.0/dbhome_1





Start applying binary patch on home /u01/app/12.2.0/grid

Binary patch applied successfully on home /u01/app/12.2.0/grid





Starting CRS service on home /u01/app/12.2.0/grid

Postpatch operation log file location: /u01/app/oracle/crsdata/vna02/crsconfig/crspatch_vna02_2017-09-21_02-34-30AM.log

CRS service started successfully on home /u01/app/12.2.0/grid





Preparing home /u01/app/oracle/product/12.2.0/dbhome_1 after database service restarted

No step execution required.........

Prepared home /u01/app/oracle/product/12.2.0/dbhome_1 successfully after database service restarted





Trying to apply SQL patch on home /u01/app/oracle/product/12.2.0/dbhome_1

SQL patch applied successfully on home /u01/app/oracle/product/12.2.0/dbhome_1



OPatchAuto successful.



--------------------------------Summary--------------------------------



Patching is completed successfully. Please find the summary as follows:



Host:vna02

RAC Home:/u01/app/oracle/product/12.2.0/dbhome_1

Summary:



==Following patches were SKIPPED:



Patch: /home/oracle/patches/26133434/25586399

Reason: This patch is not applicable to this specified target type - "rac_database"





==Following patches were SUCCESSFULLY applied:



Patch: /home/oracle/patches/26133434/26002778

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-31-39AM_1.log



Patch: /home/oracle/patches/26133434/26123830

Log: /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-31-39AM_1.log





Host:vna02

CRS Home:/u01/app/12.2.0/grid

Summary:



==Following patches were SUCCESSFULLY applied:



Patch: /home/oracle/patches/26133434/26002778

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-32-21AM_1.log



Patch: /home/oracle/patches/26133434/25586399

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-32-21AM_1.log



Patch: /home/oracle/patches/26133434/26123830

Log: /u01/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2017-09-21_02-32-21AM_1.log







OPatchauto session completed at Thu Sep 21 02:41:44 2017

Time taken to complete the session 16 minutes, 9 seconds

[root@vna02 12.2.0]#

LsInventory Checks:

GRIDHome Inventory

[oracle@vna02 ~]$ . oraenv

ORACLE_SID = [oracle] ? +ASM2
The Oracle base has been set to /u01/app/oracle

[oracle@vna02 ~]$ export PATH=$ORACLE_HOME/OPatch:$PATH
[oracle@vna02 ~]$ which opatch
/u01/app/12.2.0/grid/OPatch/opatch

[oracle@vna02 ~]$ opatch lsinventory

Oracle Interim Patch Installer version 12.2.0.1.9
Copyright (c) 2017, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/app/12.2.0/grid
Central Inventory : /u01/app/oraInventory
from           : /u01/app/12.2.0/grid/oraInst.loc
OPatch version    : 12.2.0.1.9
OUI version       : 12.2.0.1.4
Log file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/opatch2017-09-21_02-44-21AM_1.log
Lsinventory Output file location : /u01/app/12.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2017-09-21_02-44-21AM.txt

--------------------------------------------------------------------------------
Local Machine Information::
Hostname: vna02
ARU platform id: 226
ARU platform description:: Linux x86-64
Installed Top-level Products (1):
Oracle Grid Infrastructure 12c                                       12.2.0.1.0
There are 1 products installed in this Oracle Home.

Interim patches (3) :
Patch  26123830     : applied on Thu Sep 21 02:34:08 BST 2017
Unique Patch ID:  21405588
Patch description:  "DATABASE RELEASE UPDATE: 12.2.0.1.170718 (26123830)"
Created on 7 Jul 2017, 00:33:59 hrs PST8PDT

Bugs fixed:
23026585, 24336249, 24929210, 24942749, 25036474, 25110233, 25410877

25417050, 25427662, 25459958, 25547901, 25569149, 25600342, 25600421

25606091, 25655390, 25662088, 24385983, 24923215, 25099758, 25429959

25662101, 25728085, 25823754, 22594071, 23665623, 23749454, 24326846

24334708, 24560906, 24573817, 24578797, 24609996, 24624166, 24668398

24674955, 24744686, 24811725, 24827228, 24831514, 24908321, 24976007

25184555, 25210499, 25211628, 25223839, 25262869, 25316758, 25337332

25455795, 25457409, 25539063, 25546608, 25612095, 25643931, 25410017

22729345, 24485174, 24509056, 24714096, 25329664, 25410180, 25607726

25957038, 25973152, 26024732, 24376878, 24589590, 24676172, 23548817

24796092, 24907917, 25044977, 25736747, 25766822, 25856821, 25051628

24534401, 24835919, 25050160, 25395696, 25430120, 25616359, 25715167

25967985



Patch  25586399     : applied on Thu Sep 21 02:33:51 BST 2017

Unique Patch ID:  21306685

Patch description:  "ACFS Patch Set Update : 12.2.0.1.170718 (25586399)"

Created on 16 Jun 2017, 00:35:19 hrs PST8PDT

Bugs fixed:

24679041, 24964969, 25098392, 25078431, 25491831



Patch  26002778     : applied on Thu Sep 21 02:33:01 BST 2017

Unique Patch ID:  21306682

Patch description:  "OCW Patch Set Update : 12.2.0.1.170718 (26002778)"

Created on 3 Jul 2017, 03:26:30 hrs PST8PDT

Bugs fixed:

26144044, 25541343, 25715179, 25493588, 24932026, 24801915, 25832375

25728787, 25825732, 24578464, 25832312, 25742471, 25790699, 25655495

25307145, 25485737, 25505841, 25697364, 24663993, 25026470, 25591658

25537905, 24451580, 25409838, 25371632, 25569634, 25245759, 24665035

25646592, 25025157, 24732650, 24664849, 24584419, 24423011, 24831158

25037836, 25556203, 24464953, 24657753, 25197670, 24796183, 20559126

25197395, 24808260







--------------------------------------------------------------------------------



OPatch succeeded.

[oracle@vna02 ~]$









DBHome Inventory:







[oracle@vna02 ~]$ export PATH=$ORACLE_HOME/OPatch:$PATH

[oracle@vna02 ~]$ which opatch

/u01/app/oracle/product/12.2.0/dbhome_1/OPatch/opatch

[oracle@vna02 ~]$

[oracle@vna02 ~]$

[oracle@vna02 ~]$ opatch lsinventory

Oracle Interim Patch Installer version 12.2.0.1.9

Copyright (c) 2017, Oracle Corporation.  All rights reserved.





Oracle Home       : /u01/app/oracle/product/12.2.0/dbhome_1

Central Inventory : /u01/app/oraInventory

from           : /u01/app/oracle/product/12.2.0/dbhome_1/oraInst.loc

OPatch version    : 12.2.0.1.9

OUI version       : 12.2.0.1.4

Log file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/opatch2017-09-21_02-45-58AM_1.log



Lsinventory Output file location : /u01/app/oracle/product/12.2.0/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2017-09-21_02-45-58AM.txt



--------------------------------------------------------------------------------

Local Machine Information::

Hostname: vna02

ARU platform id: 226

ARU platform description:: Linux x86-64



Installed Top-level Products (1):



Oracle Database 12c                                                  12.2.0.1.0

There are 1 products installed in this Oracle Home.





Interim patches (2) :



Patch  26123830     : applied on Thu Sep 21 02:32:03 BST 2017

Unique Patch ID:  21405588

Patch description:  "DATABASE RELEASE UPDATE: 12.2.0.1.170718 (26123830)"

Created on 7 Jul 2017, 00:33:59 hrs PST8PDT

Bugs fixed:

23026585, 24336249, 24929210, 24942749, 25036474, 25110233, 25410877

25417050, 25427662, 25459958, 25547901, 25569149, 25600342, 25600421

25606091, 25655390, 25662088, 24385983, 24923215, 25099758, 25429959

25662101, 25728085, 25823754, 22594071, 23665623, 23749454, 24326846

24334708, 24560906, 24573817, 24578797, 24609996, 24624166, 24668398

24674955, 24744686, 24811725, 24827228, 24831514, 24908321, 24976007

25184555, 25210499, 25211628, 25223839, 25262869, 25316758, 25337332

25455795, 25457409, 25539063, 25546608, 25612095, 25643931, 25410017

22729345, 24485174, 24509056, 24714096, 25329664, 25410180, 25607726

25957038, 25973152, 26024732, 24376878, 24589590, 24676172, 23548817

24796092, 24907917, 25044977, 25736747, 25766822, 25856821, 25051628

24534401, 24835919, 25050160, 25395696, 25430120, 25616359, 25715167

25967985



Patch  26002778     : applied on Thu Sep 21 02:31:51 BST 2017

Unique Patch ID:  21306682

Patch description:  "OCW Patch Set Update : 12.2.0.1.170718 (26002778)"

Created on 3 Jul 2017, 03:26:30 hrs PST8PDT

Bugs fixed:

26144044, 25541343, 25715179, 25493588, 24932026, 24801915, 25832375

25728787, 25825732, 24578464, 25832312, 25742471, 25790699, 25655495

25307145, 25485737, 25505841, 25697364, 24663993, 25026470, 25591658

25537905, 24451580, 25409838, 25371632, 25569634, 25245759, 24665035

25646592, 25025157, 24732650, 24664849, 24584419, 24423011, 24831158

25037836, 25556203, 24464953, 24657753, 25197670, 24796183, 20559126

25197395, 24808260







--------------------------------------------------------------------------------



OPatch succeeded.

[oracle@vna02 ~]$

 

BMCS-PeopleSoft Deployment Guide

This article illustrates a joint cookbook-approach for provisioning a PeopleSoft application on Bare Metal Cloud Services configuration; including network, compute, database, load balancing service, and storage. The second section of this paper describes the migration of an on- premise PeopleSoft Database to the Bare Metal Cloud.

The following link describes this in detail.  Enjoy !!

BMCS-PeopleSoft Deployment Guide

ACFS Snapshot – A Walk Through

This blog explores some of the new 12.2 ACFS features.  We will walk through the ACFS snapshot process flow:

 

[oracle@oracle122 log]$ acfsutil snap info /acfsmounts/acfsdata/

snapshot name:               just_before_load

snapshot location:           /acfsmounts/acfsdata/.ACFS/snaps/just_before_load

RO snapshot or RW snapshot:  RO

parent name:                 /acfsmounts/acfsdata/

snapshot creation time:      Wed Mar 22 20:36:09 2017

storage added to snapshot:   8650752   (   8.25 MB )

number of snapshots:  1

snapshot space usage: 8704000  (   8.30 MB )

[oracle@oracle122 log]$ du -sk .

18292  .


[oracle@oracle122 log]$ acfsutil snap create -w -p just_before_load just_about_batch_upload /acfsmounts/acfsdata/

acfsutil snap create: Snapshot operation is complete.

[oracle@oracle122 log]$ acfsutil snap info /acfsmounts/acfsdata

snapshot name:               just_before_load

snapshot location:           /acfsmounts/acfsdata/.ACFS/snaps/just_before_load

RO snapshot or RW snapshot:  RO

parent name:                 /acfsmounts/acfsdata

snapshot creation time:      Wed Mar 22 20:36:09 2017

storage added to snapshot:   8650752   (   8.25 MB )

snapshot name:               just_about_batch_upload

snapshot location:           /acfsmounts/acfsdata/.ACFS/snaps/just_about_batch_upload

RO snapshot or RW snapshot:  RW

parent name:                 just_before_load

snapshot creation time:      Wed Mar 22 20:42:56 2017

storage added to snapshot:   8650752   (   8.25 MB )

root@oracle122 ~]# acfsutil compress on /acfsmounts/acfsdata/log/wtf

acfsutil compress on: ACFS-05518: /acfsmounts/acfsdata/log/wtf is not an ACFS mount point

[root@oracle122 ~]# acfsutil compress info /acfsmounts/acfsdata/log/wtf

The file /acfsmounts/acfsdata/log/wtf is not compressed.

[root@oracle122 ~]# acfsutil compress info /acfsmounts/acfsdata/log/nitin

nitin             nitin_compressed 

[root@oracle122 ~]# acfsutil compress info /acfsmounts/acfsdata/log/nitin_compressed

Compression Unit size: 32768

Disk storage used:   (  60.00 KB )

Disk storage saved:  (   7.75 MB )

Storage used is 1% of what the uncompressed file would use.

File is not scheduled for asynchronous compression.

oracle@oracle122 log]$ ls -l lastlog*

-rw-r--r--. 1 oracle oracle 145708 Mar 22 12:07 lastlog

-rw-r--r--. 1 oracle oracle 145708 Mar 23 05:49 lastlog_compressed

[oracle@oracle122 log]$

[root@oracle122 ~]# acfsutil compress info /acfsmounts/acfsdata/log/lastlog_compressed

Compression Unit size: 32768

Disk storage used:   (  32.00 KB )

Disk storage saved:  ( 110.29 KB )

Storage used is 22% of what the uncompressed file would use.

File is not scheduled for asynchronous compression.

If you are curious about the other snapshop options... then look below !!

[oracle@oracle122 log]$ acfsutil snap -h

 Command Subcmd    Arguments

--------------- --------- ------------------------------------------

snap create    [-w|-r|-c] [-p parent_snap_name] <snap_name> <mountpoint>

snap create    [-w]                      - create a writeable snapshot

snap create    [-r]                      - create a read-only snapshot

snap create                                This is the default behavior

snap create    [-c]                      - create a writable snapshot of a

snap create                                snap duplicate target

snap create    [-p parent_snap_name]     - create a snapshot from a snapshot

snap delete    <snap_name> <mountpoint> - delete a file system snapshot

snap rename    <old_snap_name> <new_snap_name> <mountpoint>

snap rename                             - rename a file system snapshot

snap convert   -w|-r <snap_name> <mountpoint>

snap convert   -w                       - convert to a writeable snapshot

snap convert   -r                       - convert to a read-only snapshot

snap info      [-t] [<snap_name>] <mountpoint>

snap info                    - get information about snapshots

snap info      [-t]          - display family tree starting at next name given

snap info      [<snap_name>] - snapshot name

snap info      <mountpoint>  - mount point

snap remaster  {<snap_name> | -c} <volume_path>

snap remaster                           - make the specified snapshot

snap remaster                             the master file system.  The

snap remaster                             current master and all other

snap remaster                             snapshots will be deleted.

snap remaster                             WARNING: This operation cannot

snap remaster                             be reversed.  Admin privileges

snap remaster                             are required.  The file system

snap remaster                             must be unmounted on all nodes.

snap remaster                             The file system must not have

snap remaster                             Replication running.

snap remaster  [-c]                     - Continue an interrupted snapshot

snap remaster                             remastering.  Use the -c option,

snap remaster                             instead of the <snap_name>, to

 snap remaster                             complete an interrupted

snap remaster                             snapshot remastering.

snap remaster  [-f]                     - Force the snapshot remastering.

 snap duplicate apply     [-b] [-d {0..6}] [<snap_name>] <mountpoint>

 snap duplicate apply     -b                       - maintain backup snapshot

 snap duplicate apply     [-d {0..6}]              - set trace level for debugging

 snap duplicate apply     [<snap_name>]            - target snapshot

 snap duplicate apply     <mountpoint>             - mount point for target site

 snap duplicate create    [-r] [-i oldsnapname] [-d {0..6}] <newsnapname> <mountpoint>

 snap duplicate create    [-r]              - restart of data stream

 snap duplicate create    [-p parentsnap]   - parent snap for base site

 snap duplicate create    [-i oldsnapname]  - old snapshot name

 snap duplicate create    [-d {0..6}]       - set trace level for debugging

 snap duplicate create    <newsnapname>     - new snapshot name

 snap duplicate create    <mountpoint>      - mount point for base site

 snap quota     [[-|+]nnn[K|M|G|T|P]]<snap_name> <mountpoint>

 snap quota                              - set quota for snapshot

 

Grid Infrastructure and RAC 12.2 New Features – a Recap

The following list illustrates the new 12.2 Oracle RAC and Grid Infrastructure. This is a personal list which “I believe to be the most interesting.” I apologize to the RAC Dev team if I left out any features.

Streamlined Grid Infrastructure Installation

12.2 Grid Infrastructure software is available as an image file for download and installation. The key objective of this feature was to enable a simpler and quicker installation of Grid Infrastructure. Administrators simply prep the system by creating a new Grid home directory, appropriate users, permissions and kernel settings. Once completed, Admins extract the image file into the newly-created Grid home, and execute the gridsetup.sh script to invoke setup wizard to register the Oracle Grid Infrastructure stack with Oracle inventory. This installation approach can be used for Oracle Grid Infrastructure for Cluster and Standalone Servers configurations. This new software installation will improve large scale deployment automation as well as deployment of customized images, Patch Set Updates (PSUs) and patches.

Real Application Clusters Reader Nodes

In 12.2, Oracle extended the capability of Flex Clusters by introducing Reader nodes. Reader nodes are Leaf nodes (in a Flex Cluster) that run read-only RAC database instances. The Reader nodes are not affected by RAC reconfigurations, caused by node evictions or other cluster node membership changes, as long as the Hub Node, to which it is connected, is part of the cluster. Reader Nodes allows users to create huge reader farms (up to 64 reader nodes per Hub Node), thus enabling massive parallel processing. In this architecture, updates to the read/write instances (running on Hub nodes) are immediately propagated to the read-only instances on the Leaf Nodes, where they can be used for online reporting or instantaneous queries. Users can create services to direct queries to read-only instances running on reader nodes.

Service-Oriented Buffer Cache Access

RAC Services, which are used to allocate and distribute workloads across RAC instances, are the cornerstone of RAC workload management. There is a strong relationship between a RAC Service, a specific workload, and the database object it accesses. With 12.2 RAC, a Service- oriented buffer cache feature was introduced to improve scale and performance, by optimizing instance and node-buffer cache affinity. This is done by caching or pre-warming instances with data blocks for objects accessed where a service is expected to run.

Twelve Days of 12.2

Server Weight-Based Node Eviction

When there is a spilt-brain, or when a node eviction decision must be made, traditionally the decision was based on age, or duration of the nodes, in the cluster; i.e., nodes with a large uptime in the cluster will survive. In 12.2 RAC, Server weight-based node eviction uses a more intelligent, tie-breaker mechanism to evict a particular node or a group of nodes from a cluster. The Server Weight-based node eviction feature introspects the current load on those servers as part of the decision. Two principle mechanisms, a system inherent automatic mechanism and a user input-based mechanism is used to offer and provide guidance.

Load-Aware Resource Placement

Load-aware resource placement, prevents overloading a server with more database instances than the server is capable of running. The metrics used to determine whether an application can be started on a given server, is based on the expected resource consumption of the application, as well as the capacity of the server in terms of CPU and memory. Administrators can define database resources such as CPU (cpu_count) and memory (memory_target) to Clusterware. Clusterware uses this information to place the database instances only on servers that meet a sufficient number of CPUs, amount of memory or both.

srvctl modify database -db testdb -cpucount 8 -memorytarget 64g

Hang Manager

The Hang Manager features first became available in 11gR1. In this initial version, Hang Manager evaluated and identified system hangs, then dumped the relevant information, “wait for graph,” into a trace file. In 12.2, Hang Manager takes action and attempts to resolve the system hang. An ORA-32701 error message is logged in the alert log to reflect the hang resolution. Hang Manager also runs in both single-instance and Oracle RAC database instances. With Hang Manager, it is constantly aware of processes running in reader nodes instances, and checks whether any of these processes are blocking progress on Hub Nodes to take action, if possible.

Separation of Duty for Administering RAC Clusters

12.2 RAC introduces a new administrative privilege called SYSRAC. This privilege is used by the Clusterware agent, and removes the need to use SYSDBA privilege for RAC administrative tasks, thus reducing the reliance on SYSDBA on production systems. Note, SYSRAC privilege is the default mode for connecting to the database by Clusterware agent; e.g, when executing RAC utilities such as SRVCTL.

Rapid Home Provisioning of Oracle Software

Rapid Home Provisioning enables you to create clusters, provision, patch, and upgrade Oracle Grid Infrastructure and Oracle Database homes. It also provisions 11.2 Clusters, applications, and middleware using Rapid Home Provisioning.

Extended Clusters

In 12.2 GI Administrators can create an extended RAC cluster across two, or more, geographically separate sites. Note, each site will include a set of servers with its own storage. If a site fails, the other site acts as an active standby. 12.2 Extended Clusters can be built on initial installation or be converted from an existing (non-Flex ASM) cluster, using the ConvertToExtended script.

De-support of OCR and Voting Files on Shared Filesystem

In Grid Infrastructure 12.2, the placement of Oracle Clusterware files: the Oracle Cluster Registry (OCR), and the Voting Files, directly on a shared file system is desupported. Only ASM or NFS is supported. If you need to use a supported shared file system, either a Network File System, or a shared cluster file system instead of native disk devices, then you must create Oracle ASM disks on supported network file systems that you plan to use for hosting Oracle Clusterware files before installing Oracle Grid Infrastructure. You can then use the Oracle ASM disks in an Oracle ASM disk group to manage Oracle Clusterware files. If your Oracle Database files are stored on a shared file system, then you can continue to use shared file system storage for database files, instead of moving them to Oracle ASM storage.

Clonewars – Next Gen Cloning with Oracle 12.2 Multitenancy (Part Deux)… With a Sprinkle of PDB Refresh

 

This is Part 2 of the Remote [PDB] Cloning capabilities of Oracle 12.2 Mulitenant.

Cloning Example 2:  Remote clone copy from an existing CBD/PDB into a local PDB (PDB->PDB).  In this example “darkside” is  CDB with darthmaul being the source/remote PDB and  yoda (PDB) is local target

 

SQL> select database_name from v$database;

DATABASE_NAME
--------------------------------------------------------
DARKSIDE

darkside$SQL> alter pluggable database darthmaul open;
Pluggable database altered.

SQL> select name, open_mode from v$pdbs;
NAME .    OPEN_MODE

--------------------
PDB$SEED  READ ONLY
DARTHMAUL READ WRITE

darkside$SQL> archive log list ;
Database log mode            Archive Mode
Automatic archival           Enabled
Archive destination          USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     1
Next log sequence to archive   3
Current log sequence         3

darkside$SQL> select name, open_mode from v$database;
NAME     OPEN_MODE
--------- --------------------
DARKSIDE  READ WRITE

darkside$SQL> COLUMN property_name FORMAT A30
COLUMN property_value FORMAT A30
SELECT property_name, property_value
FROM   database_properties
WHERE  property_name = 'LOCAL_UNDO_ENABLED'; 
PROPERTY_NAME                PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED           TRUE


$ cat darkside_create_remote_clone_user.sql
create user c##darksidecloneuser identified by cloneuser123 container=ALL;
grant create session, create pluggable database to c##darksidecloneuser  container=ALL;

$cat darkside_db_link.sql
create database link darksideclone_link
CONNECT TO c##darksidecloneuser IDENTIFIED BY cloneuser123 USING 'darkside'

Nishan$SQL> select DB_LINK,HOST from dba_db_links;
DB_LINK        HOST
------------  ---------------------------
SYS_HUB          SEEDDATA
REMOTECLONELINK  hansolo
DARKSIDECLONE_LINK darkside

darkside$SQL> select name from v$datafile;
NAME
-------------------------------------------------------------------------------

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/system.276.942656929

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/sysaux.277.942656929

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/undotbs1.275.942656929

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/users.279.942657041

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/rey.291.942877803

+ACFSDATA/DARKSIDE/4E63D836FC5AF80DE053B214A8C07E55/DATAFILE/luke.292.942877825

darkside$SQL> show con_name
CON_NAME
-----------------------------
DARTHMAUL


darkside$SQL> create table foofighters tablespace rey as select * from obj$;
Table created.

Nishan$SQL> create pluggable database yoda from darthmaul@DARKSIDECLONE_LINK;

Pluggable database created.

Nishan$SQL> alter session set container = yoda;
Session altered.

yoda$SQL> select name, open_mode from v$pdbs;
NAME                    OPEN_MODE
----------------------------------------
YODA                   MOUNTED

yoda$SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/system.310.942878321
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/sysaux.311.942878321
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/undotbs1.309.942878321
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/users.306.942878319
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/rey.307.942878319
+DATA/NISHAN/4E82D233272C7273E0538514A8C00DF3/DATAFILE/luke.308.942878319


Now on to Refresh the PDB

SQL>create table foofighters tablespace rey as select * from obj$

Table created.




SQL> select segment_name from dba_segments where tablespace_name = 'REY'

SEGMENT_NAME

----------------------------------------------------------------

FOOFIGHTERS




SQL> select name, open_mode from v$pdbs;

NAME            OPEN_MODE

------------------------------

PDB$SEED        READ ONLY

OBIWAN          READ WRITE

FORCEAWAKENS    MOUNTED

YODA            MOUNTED




SQL> alter pluggable database yoda open read only;

Pluggable database altered.




SQL> select segment_name from dba_segments where tablespace_name = 'REY';

no rows selected




SQL> alter session set container = yoda;

Session altered.




SQL> ALTER PLUGGABLE DATABASE CLOSE IMMEDIATE;

Pluggable database altered.




SQL> ALTER PLUGGABLE DATABASE refresh;

Pluggable database altered.




SQL> select segment_name from dba_segments where tablespace_name = 'REY';

select segment_name from dba_segments where tablespace_name = 'REY'  

ERROR at line 1:

ORA-01219: database or pluggable database not open: queries allowed on fixed

tables or views only




SQL> ALTER PLUGGABLE DATABASE open read only;

Pluggable database altered.




SQL> select segment_name from dba_segments where tablespace_name = 'REY';

SEGMENT_NAME

-----------------------------------------------------

FOOFIGHTERS

 

 

 

 

 

Clonewars – Next Gen Cloning with Oracle 12.2 Multitenancy (Part Un)

In this blog, we will walk through Oracle 12.2 Remote Cloning of PDB feature. In Oracle 12.1, remote cloning was also available, however, this required placing the productions database (which is usually the source) in read-only mode. This makes the cloning feature very inefficient to leverage. In 12.2, it is now possible to maintain the production database in read-write mode and allow for online copy of the database, this is reffered to as a “hot clone”.  The distinction between a hot clone and a cold clone is only relevant for customers running 12.1 Multitenancy. As of 12.2 all clones are hot clones, unless the source database is explicitly closed.

We will illustrate two examples of this real-world example, just the names have been changed to protect the extremely innocent. And sorry about the StarWars references.. just couldn’t help myself!!

Note, for clarity, the remote DB is source database which will cloned, and the local DB is the CDB where the PDB will cloned into.

Cloning Example 1: Remote clone copy from existing non-CDB into a local PDB (non-CDB->PDB).  In this example “hansolo” is remote non-CDB (source PDB).

Cloning Example 2: Remote clone copy from existing CBD/PDB into a local PDB (PDB->PDB). In this example “darkside” is CDB with obiwan being the source PDB and  nishan-obiwan (PDB) is local.

Cloning Example 1

Prep work and validation
 Hansolo$SQL> startup
 ORACLE instance started.
 Total System Global Area 2483027968 bytes
 Fixed Size 8795808 bytes
 Variable Size 637536608 bytes
 Database Buffers 1610612736 bytes
 Redo Buffers 7979008 bytes
 In-Memory Area 218103808 bytes
 Database mounted.
 Database opened.
Hansolo$SQL> select database_name from v$database;
 DATABASE_NAME
 ------------------------------------------------------
 HANSOLO

Nishan$SQL> select name from v$pdbs;
 NAME
 ------------------------------------------------------------------------------
 PDB$SEED
 OBIWAN

In 12.2, each PDB will have its own undo tablespace. 
This new undo management configuration is called local undo mode, and is the underlying 
design for many of the portability features in 12.2. Local Undo is the default for greefield/fresh 12.2 installs, 
for upgrades to 12.2 the Shared Undo will need to converted to Local (we won't cover that here)
 
Hansolo$SQL> SELECT property_name, property_value FROM database_properties WHERE property_name = 'LOCAL_UNDO_ENABLED ';
PROPERTY_NAME PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED TRUE

Hansolo$SQL> archive log list
 Database log mode Archive Mode
 Automatic archival Enabled
 Archive destination USE_DB_RECOVERY_FILE_DEST
 Oldest online log sequence 118
 Next log sequence to archive 120
 Current log sequence 120

Hansolo$SQL> select name, open_mode from v$database
NAME OPEN_MODE
--------- --------------------
HANSOLO READ WRITE

Hansolo$SQL> create tablespace kyloren datafile size 20M;

Tablespace created.

Hansolo$SQL> create tablespace MazKanata datafile size 20M

Tablespace created.

Hansolo$SQL> select tablespace_name from dba_tablespaces;

TABLESPACE_NAME
------------------------------
 SYSTEM
 SYSAUX
 UNDOTBS1
 TEMP
 USERS
 KYLOREN
 MAZKANATA

Hansolo$SQL> select current_scn from v$database;

CURRENT_SCN
 -----------
 27506427

$cat hansolo_create_remoteclone.sql
 CREATE USER cloneuser IDENTIFIED BY cloneuser123;
 GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE TO cloneuser;

Hansolo$SQL>@hansolo_create_remoteclone.sql

Verify user connection

Hansolo$SQL> connect cloneuser/cloneuser123;
 Connected.

Now, prep the source environment

Nishan$SQL> select database_name from v$database;

DATABASE_NAME
-------------------------------------------------
NISHAN

Create DBLink to hansolo from nishan

$cat pdbclone_dblink.sql
CREATE DATABASE LINK remoteclonelink CONNECT TO cloneuser IDENTIFIED BY 
cloneuser123 USING 'hansolo'

Nishan$SQL> @pdbclone_dblink.sql

Nishan$SQL> select db_link, host from dba_db_links;
DB_LINK            HOST
----------------  -----------------
SYS_HUB           SEEDDATA 
REMOTECLONELINK   hansolo 

Verify connection to hansolo from forceawakens PDB

$ sqlplus cloneuser/cloneuser123@hansolo

Nishan$SQL> create pluggable database forceawakens from non$cdb@REMOTECLONELINK;

Pluggable database created.

Nishan$SQL> alter session set container = FORCEAWAKENS;
Session altered.

forceawakens$SQL> select name, open_mode from v$pdbs;
 NAME           OPEN_MODE
---------       ----------------------
FORCEAWAKENS    MOUNTED

forceawakens$SQL> select name from v$datafile;
NAME
-------------------------------------------------------------------------------
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/system.302.942700581
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/sysaux.301.942700581
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/undotbs1.300.942700581
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/users.297.942700581
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/kyloren.298.942700581
 +DATA/NISHAN/4E6DBABFDE2EBBECE0538514A8C0247B/DATAFILE/mazkanata.299.942700581

forceawakens$SQL> select current_scn from v$database;

CURRENT_SCN
-----------
 0

Since the source database was a non-CDB, it needs to be cleansed to be PDB-capable using the @$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql. This is a requirement before you can open and online the PDB.

forceawakens$SQL> @$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql

forceawakens$SQL> alter pluggable database open;

Flex Your Inner ASM – ASM 12.2 New Features

The following article will describe at a high-level the key ASM improvements in Oracle 12.2.  Note, due to number of changes and improvements in ACFS, we cover ACFS is a separate article.

Oracle ASM Flex Disk Groups and File Groups

In previous releases disk group storage attributes were defined only at the disk group level, which was generally quite coarse from a storage management perspective. In 12.2, the concept of ASM flex disk group is introduced to enable users to manage storage at the database level, allowing greater granularity of control. Note, this capability is complimentary to the existing disk group manageability.  Flex groups is built on the concept of File groups.  File groups are a group of files that share the same set of properties and characteristics and used to describe database files.   A significant benefit of file groups is the capability to have a different availability specification for each database; a key example is capability to create point-in-time database clones.

The following example illustrates how flex diskgroup is create.

SQL> create diskgroup vna_data flex redundancy disk ‘/dev/mapper/mpath*’

Or Convert existing standard diskgroup to flex diskgroup

SQL> alter diskgroup vna_data convert redundancy to flex;

Each database that is built on ASM (that has compatible.asm and compatible.rdbms is set to 12.2.0.0)  will consist of file group, which allows granular storage management capabilities, such as  redundancy, rebalance power limits and priority, striping and quota groups; i.e., at the file group level.  Since the redundancy is now at the file group level and not at the disk group level, you can convert and change the redundancy of database from normal to high.  Note, that you cannot currently change from external to high/normal.

Disk group can contain multiple file groups each with its independent Flex redundancy.  A file group can belong to only one disk group; however, a database can span multiple disk groups with multiple file groups in different disk groups

 

ASM Support for Preferred Read on Extended Clusters

In previous releases the ASM_PREFERRED_READ_FAILURE_GROUPS defined read preference to a specific failure group in extended clusters.

In ASM 12.2, the preferred read failure groups capability is now automatically detected and set in the ASM instance when extended clusters are deployed. The ASM instance will evaluate which disks are local to that instance and set preference accordingly.  Thus the ASM_PREFFERED_READ parameter is no longer necessary.

 

 

 

Oracle IOServer

In 12.2 Oracle extends the capability of Flex ASM by enabling the ASM instance to be disjointed and separate from the physical servers hosting databases.  This feature is referred to as ASM IO Server (IOS). This “far cluster” capability enables the deployment of larger clusters of ASM instances that can support more database clients while reducing the ASM instance footprint, thus storage consolidation occurs by placing larger number database into a single set of disk groups.

With the introduction of IOS, ASM and database storage access can be configured in the following configurations:

  • direct access to ASM disks with local clients (same as pre-12.2)
  • Flex ASM clients with direct access to ASM disks
  • ACFS access through the ASM proxy instance
  • Remote-Network based connectivity to ASM disk groups with Oracle IOServer (IOS)

Updates for Oracle ASM Filter Driver Installation and Configuration

Oracle 12.1 introduced ASM filter driver(ASMFD) for improved device management and disk group protection; however, the installation required upfront enablement before Grid Infrastructure. In 12.2, the installation and configuration for ASM Filter Driver (ASMFD) is now streamlined and enabled as part of the Oracle Grid Infrastructure installation.

ASM Extended Support for 4K Sector Size

The full support for 4K sector sizes has been looming since 11.2.  Now in 12.2 ASM, a new diskgroup attribute, logical_sector_size, will define the logical sector size (in bytes) of the disk group and specifies the smallest I/O that can be issued to the underlying ASM disks.

Deprecated Features

Deprecation of Oracle ASM Intelligent Data Placement

Deprecation of ASM_PREFERRED_READ_FAILURE_GROUPS Initialization Parameter

In-Memory of.. Sorry I mean 12.2 In-Memory New Features

As part our of continuing 12.2 New Feature Series we explore different areas of Oracle 12.2

In this blog we discuss the new In-Memory 12.2 features

In-Memory Expressions

An In-memory expression, or “hot” expression, enables frequently evaluated query expressions to be materialized in the In-Memory Column Store, for subsequent reuse. By default, the procedure DBMS_INMEMORY_ADMIN.IME_CAPTURE_EXPRESSIONS identifies and populates IM expressions.

Populating the materialized values of frequently used query expressions, into the In-Memory Column Store, greatly reduces the system resources required to execute queries, allowing for better scalability. The procedure, IME_CAPTURE_EXPRESSIONS, will capture and populate the 20 “hottest” expressions in the database for a specified time range.

In-Memory Virtual Columns

An IM virtual column, is a value derived by evaluating an expression. IM virtual columns improve query performance by avoiding repeated calculations. Also, the database can scan and filter IM virtual columns, using techniques such as SIMD vector processing.

In-Memory FastStart

Before 12.2, the columnar format was only available In-Memory, meaning that after a database restart, the In-Memory Column Store would have to be populated. This multiple step process, converted traditional, row formatted data into the compressed columnar format and placed in-memory.

Now, In-Memory Column Store optimizes the compressed columnar population of database objects (tables, partitions, and subpartitions) in the In-Memory column store. This process, significantly reduces the time required to re-populate In-Memory objects.

Use DBMS_INMEMORY_ADMIN.FASTSTART_ENABLE procedure to enable a specific tablespace for FastStart

Automatic Data Optimization (ADO) Support for In-Memory Column Store

In 12.2, ADO now also manages the IM column store as a new data tier. When enabled, the Heat Map feature automatically tracks data access patterns; ADO uses this Heat Map data to implement user-defined policies at the database level. ADO manages the In-Memory Column Store, by moving objects (tables, partitions or subpartitions) in and out of the memory, based on Heat Map statistics.

Twelve Days of 12.2

Copyright © 2016 Viscosity North America, Inc. All rights reserved.

In-Memory Join Groups

IM column stores can use join groups, to optimize joins of populated IM tables. Join groups, eliminate the performance overhead of decompressing and hashing column values. Create join groups using the CREATE INMEMORY JOIN GROUP statement:

CREATE INMEMORY JOIN GROUP prodid_jg (mine.items(product_id),mine.product_line(product_id));

In-Memory Support on Oracle Active Data Guard

12.2, allows IM column store to be enabled on Oracle Active Data Guard environments, by setting the init.ora parameter INMEMORY_ADG_ENABLED to TRUE. Using the in-memory column store, on an Active Data Guard standby database, enables users to offload larger and heavier reporting workloads, onto Standby Databases. Moreover, 12.2 permits the Standby Database to populate a completely different set of data in the in-memory column store than the Primary Database, providing greater data access flexibility.

In-Memory Column Store Dynamic Resizing

You can now dynamically increase the size of the in-memory area, while the database is open, assuming that enough memory is available within the SGA. Thus, the in-memory column store can be resized without restarting the database, providing greater application availability.

ACFS 12.2 New Features – a Recap

Oracle Automatic Storage Management Cluster File System (ACFS) made it’s debut with Oracle 11.2. Many DBAs are not aware of the vast features that are available with ACFS. With each release and update to Oracle, significant enhancements have been made. With Oracle Database 12c Release 2, new feature/functionality was made to ACFS.

Snapshot Enhancements

In Oracle 12.2, Oracle extends ACFS snapshot functionality and further simplifies file system snapshot operations. The following are a few of the key new features with snapshots:

Admins can now, if needed, impose quotas to snapshots to limit amount of write operations that can be done on a snapshot. Quotas can be set on the snapshot level. Oracle also provides the capability to rename an existing ACFS snapshot, to allow more user-friendly names.

When we delete a snapshot with the “acfsutil snap delete snapshot mount_point” command, we can force a delete, even if there are open files.

There are several new capabilities with snapshot re-mastering and duplication. The new ACFS snapshot remaster capability allows for a snapshot in the snapshot registry to become the primary file system. ACFS snapshot duplication features are introduced. With the “acfsutil snap duplicate create” command, can be used to duplicate a snapshot from an existing snapshot, to a standby target file system.

The “apply” option to the “acfsutil snap duplicate” command, allows us to apply deltas to the target ACFS file system or snapshot. If this is the initial apply, the target file system must be empty. If the target had been applied before, then the apply process becomes an incremental update. Before the incremental update occurs, the contents of the target file system must match the content of the older snapshot, since the last incremental update. Also, the contents of the target snapshot cannot be modified while the apply is happening.

Additionally, ACFS snapshot-based replication now uses SSH protocols to transmit data streams.

4k Sectors and Metadata

When Admins create an ACFS file system, they have the option to create the file system with the 4096-byte metadata structure. When issuing the mkfs command, you can specify the metadata block size with the –i option; two valid options are 512 bytes or 4096 bytes. The 4096-byte metadata structure is made up of multiple 512-byte logical sectors.

If the COMPATIBLE.ADVM ASM Diskgroup attribute is set to 12.2 or greater, then the metadata block is 4096 bytes by default. If COMPATIBLE.ADVM attribute is set to less than 12.2, then the block size is set to 512 bytes. When the ADVM volume of the ACFS file system is set with 4K logical disk sector size, Direct I/O requests should be aligned on the 4K offset and be a multiple of 4k size for optimal performance.

Defragger

Very rarely would you need the defragmentation tool, due to the fact that ACFS algorithm is for allocation and coalesce-ment of free space. However, for those rare situations, when we can get into fragmented situations under heavy workloads or for compressed files, Oracle provides the defrag option to the acfsutil command. Now, we can issue “acfsutil defrag dir” or “acfsutil defrag file” commands for on-demand defragmentation.

ACFS will perform all defrag operations in the background. With the –r option of the “acfsutil defrag dir”command, you can recursively defrag subdirectories.

Compression Enhancements

ACFS compression can significantly reduce disk storage requirements for customers running databases on ACFS. Databases running on ACFS, must be of versions 11.2.0.4 or higher. ACFS compression can be enabled for specific ACFS file systems for database files, RMAN backup files, archivelogs, data pump extract files, and general purpose files. Oracle does not support redo log/flashback logs/control file compression.

When enabling ACFS compression for a file system, only new incoming files will be compressed. All existing files on the file system will remain un-compressed. Likewise, if you decide to uncompress a file system, Oracle will not de-compress files. Oracle will simply disable compression for newly created files.

To compress and uncompress ACFS file systems, execute the acfsutil compress on or acfsutil compress off commands. To view compression state and space consumption information, you can execute the “acfsutil compress info” command. The commands “acfsutil info fs” and “acfsutil info file” now support ACFS compression status.

At this time, databases with 2K or 4K block sizes are not supported for ACFS compression. ACFS compression is supported on Linux and AIX. ACFS is also supported to work with ACFS snapshot-based replication.

Loopback Devices

ACFS now supports loopback devices on the Linux operating system. With ACFS loopback device support, we can now take OVM images, templates, and virtual disks and present them as a block device. Files can be sparse or non-sparse. ACFS also supports Direct I/O on sparse images.

Metadata Collector

The metadata collector, copies metadata structures from an Oracle ACFS file system to a separate output file that can be ingested for analysis and diagnostics. The metadata collector reads the contents of the file system and all metadata is written out to a specified output file. The metadata collector can read the ACFS file system online without requiring an outage. Note, this tool is not a replacement for the file system checker command (fsck), but a supplement for additional diagnosis and support. Even though the metadata collector can read the file system while it is online, for best results, unmount the file system prior to metadata collection. The size of the output file, is directly correlated to the size of the file system that the collection is specified for. To collect metadata for a file system, invoke the “acfsutil meta” command.

The auto-resize feature, allows us to “autoextend” a file system if the size of the file system is about to run out of space. Just like an Oracle datafile that has the autoextend option enabled, we can now “autoextend” the ACFS file system to the size of the increment by option. With the –a option to the “acfsutil size” command, we can specify the increment by size.

We can also specify the maximum size or quota for the ACFS file system to “autoextend” to guard against a runaway space consumption. To set the maximum size for an ACFS file system, execute the “acfsutil size” command with the –x option.

12.2 SQLPlus History command – features and fumbles

Yes, there’s been a lot of hoopla about the HISTORY capability in 12.2 SQlPlus, and I know my friend Gokhan Atil has written about it too. So I’m just gonna share this bit for my team and my feedback on it

SQLplus always lacked the history capability like U/Linux shell history. Now in 12.2 SQLPlus its here. Let me describe a little bit of the feature and its quirks.
Here’s what SQLPlus help has to say about the functionality

SQL> help hist

 HISTORY
 -------

 Stores, lists, executes, edits of the commands
 entered during the current SQL*Plus session.

 HIST[ORY] [N {RUN | EDIT | DEL[ETE]}] | [CLEAR]

 N is the entry number listed in the history list.
 Use this number to recall, edit or delete the command.

 Example:
 HIST 3 RUN - will run the 3rd entry from the list.

 HIST[ORY] without any option will list all entries in the list.

So, let’s walk thru this thing:

[oracle@oracle122 admin]$ sqlplus "/ as sysdba"
SQL*Plus: Release 12.2.0.1.0 Production on Sat Mar 4 14:43:55 2017

Copyright (c) 1982, 2016, Oracle.  All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

To enable SQLPlus history, you set "set history on" at the SQLPlus prompt. 
However, it has to be set each time you connect to SQLPlus. I know my feeble little brain 
will forget when I'm in a hurry and login to SQLPlus, thus, 
I added "set history on" into $ORACLE_HOME/sqlplus/admin/glogin.sql

SQL> hist
SP2-1651: History list is empty.


Since I haven't done anything, thus the history is obviously empty.  Now let's do stuff !!

SQL> select name from v$datafile
  2  ;

NAME
--------------------------------------------------------------------------------
+DATA/NISHAN/DATAFILE/system.257.937616243
+DATA/NISHAN/DATAFILE/sysaux.258.937616333
+DATA/NISHAN/DATAFILE/undotbs1.259.937616357
+DATA/NISHAN/4700A987085B3DFAE05387E5E50A8C7B/DATAFILE/system.267.937616485
+DATA/NISHAN/4700A987085B3DFAE05387E5E50A8C7B/DATAFILE/sysaux.266.937616485
+DATA/NISHAN/DATAFILE/users.260.937616359
+DATA/NISHAN/4700A987085B3DFAE05387E5E50A8C7B/DATAFILE/undotbs1.268.937616485
+DATA/NISHAN/49CF3DA922C680E1E0539C14A8C0E4E3/DATAFILE/system.272.937617037
+DATA/NISHAN/49CF3DA922C680E1E0539C14A8C0E4E3/DATAFILE/sysaux.273.937617039
+DATA/NISHAN/49CF3DA922C680E1E0539C14A8C0E4E3/DATAFILE/undotbs1.271.937617037
+DATA/NISHAN/49CF3DA922C680E1E0539C14A8C0E4E3/DATAFILE/users.275.937617207

11 rows selected.

SQL> hist
  1  select name from v$datafile
     ;

However, all these silly little mistakes get recorded into history too.... and thus my sloppiness gets shown in broad daylight :-(
SQL> hist
  1  select name from v$datafile
     ;
  2  1
  3  2
  4  del

Here's the delete command to remove my sloppiness:

SQL> hist 4 del
SQL> hist
  1  select name from v$datafile
     ;
  2  1
  3  2

Let's run some stuff to populate the history with real commands. Note, that all desc, show, set, select commands get recorded into history. 
This may or may not be a good thing....think bloated-ness

SQL> show parameter mem

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address	     integer	 0
inmemory_adg_enabled		     boolean	 TRUE
inmemory_clause_default 	     string
inmemory_expressions_usage	     string	 ENABLE
inmemory_force			     string	 DEFAULT
inmemory_max_populate_servers	     integer	 2
inmemory_query			     string	 ENABLE
inmemory_size			     big integer 208M
inmemory_trickle_repopulate_servers_ integer	 1
percent
inmemory_virtual_columns	     string	 MANUAL
memory_max_target		     big integer 0
memory_target			     big integer 0
optimizer_inmemory_aware	     boolean	 TRUE
shared_memory_address		     integer	 0

SQL> show parameter inmemory

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
inmemory_adg_enabled		     boolean	 TRUE
inmemory_clause_default 	     string
inmemory_expressions_usage	     string	 ENABLE
inmemory_force			     string	 DEFAULT
inmemory_max_populate_servers	     integer	 2
inmemory_query			     string	 ENABLE
inmemory_size			     big integer 208M
inmemory_trickle_repopulate_servers_ integer	 1
percent
inmemory_virtual_columns	     string	 MANUAL
optimizer_inmemory_aware	     boolean	 TRUE

SQL> hist
  1  select name from v$datafile
     ;
  2  1
  3  2
  4  show parameter mem
  5  show parameter sga
  6  show parameter inmemory

SQL> desc v$inmemory_area
 Name					   Null?    Type
 ----------------------------------------- -------- ----------------------------
 POOL						    VARCHAR2(26)
 ALLOC_BYTES					    NUMBER
 USED_BYTES					    NUMBER
 POPULATE_STATUS				    VARCHAR2(26)
 CON_ID 					    NUMBER

Let's say I screw up this query (and I really did)!!

SQL> select * form v$inmemory_area;
select * form v$inmemory_area
         *
ERROR at line 1:
ORA-00923: FROM keyword not found where expected

I could do the old-school way, using the change command as follows:

SQL> c/form/from/
  1* select * from v$inmemory_area
SQL> /

POOL			   ALLOC_BYTES USED_BYTES POPULATE_STATUS
-------------------------- ----------- ---------- --------------------------
    CON_ID
----------
1MB POOL		     166723584		0 DONE
	 1

64KB POOL		      33554432		0 DONE
	 1

1MB POOL		     166723584		0 DONE
	 2


POOL			   ALLOC_BYTES USED_BYTES POPULATE_STATUS
-------------------------- ----------- ---------- --------------------------
    CON_ID
----------
64KB POOL		      33554432		0 DONE
	 2

1MB POOL		     166723584		0 DONE
	 3

64KB POOL		      33554432		0 DONE
	 3


6 rows selected.

SQL> hist
  1  select name from v$datafile
     ;
  2  1
  3  2
  4  show parameter mem
  5  show parameter sga
  6  show parameter inmemory
  ..
  ..
 11  select * form v$inmemory_area;
 12  c/for/from/
 15  /

But I sure wish I could delete multiple lines like this, but alas, I cannot


SQL> hist 11,12,13 del
SP2-1655: History command syntax error.

Anyways, Here's the new way of editing the command in the history :

SQL> hist 
  1  select name from v$datafile
     ;
  2  show parameter mem
  3  show parameter sga
  4  show parameter inmemory
  5  desc v$inmemory_pool
  6  desc v$inmemory_size
  7  esc v$inmemory_area
  8  desc v$inmemory_area
  9  select * form v$inmemory_area;
 10  c/form/from/
 11  /

SQL> hist 9 edit
This pops up the OS editor (vi of course), you edit as you normally would; save/quit, 
and you're back to the SQLPus prompt:

But look what happens after "hist 9 edit", 9 is still the same; its an immutable entry.  
Which suppose it kinda expected, as you shouldn't be able to change history :-) !!

Thus, by editing you're effective storing a new entry in the SQLPlus buffer and 
you'll have to execute this buffer, just like to old school way.  
You can do sqlplus "l" command to list the current buffer

 
This execution adds an new entry for the new command rather than replace the history "9" entry  !!!

SQL> hist 
  1  select name from v$datafile
     ;
  2  show parameter mem
  3  show parameter sga
  4  show parameter inmemory
  5  desc v$inmemory_pool
  6  desc v$inmemory_size
  7  esc v$inmemory_area
  8  desc v$inmemory_area
  9  select * form v$inmemory_area;
 10  c/for/from/
 11  /
 12  select * from  v$inmemory_area;

This feature is good start, but I hope they add more capabilities to this thing as its still rudimentary.

ASR and IP Addresses on PCA/OVCA

How to determine OVCA or PCA Management Node, Compute Node, and ILOM service processor IP addresses

The asr command has various switches that give information on the assets; however, the assets are generally list by ILOM address.  So how do you get the asset listing and how do you map it back to the primary IP of the Compute node?

 

[root@ovcamn06r1 bin]# ./asr list_asset

        Usage: list_asset [-i ip] [-h host] [-s subnet] [-c Display assets list in csv format] [-?]

-s subnet

--subnet=subnet

List activation and ASR status by subnet. Subnet value can be a comma delimited list.

[root@ovcamn06r1 bin]# ./asr list_asset -s 192.168.4

IP_ADDRESS    HOST_NAME           SERIAL_NUMBER PARENT_SERIAL ASR PROTOCOL SOURCE LAST_HEARTBEAT PRODUCT_NAME                  

----------    ---------           ------------- ------------- --- -------- ------ -------------- ------------                  

192.168.4.114 ORACLESP-1527NM10F6 1527NM10F6                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.105 ORACLESP-1534NM1011 1534NM1011                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.103 ilom-ovcamn05r1     1534NM1024                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.116 ORACLESP-1534NM102A 1534NM102A                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.120 ORACLESP-1534NM103A 1534NM103A                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.106 ORACLESP-1534NM103C 1534NM103C                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.109 ORACLESP-1534NM103X 1534NM103X                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.125 ORACLESP-1534NM1043 1534NM1043                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.108 ORACLESP-1534NM1047 1534NM1047                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.110 ORACLESP-1534NM104A 1534NM104A                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.115 ORACLESP-1534NM104D 1534NM104D                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.122 ORACLESP-1546NM10JR 1546NM10JR                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.117 ORACLESP-1546NM10JV 1546NM10JV                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.118 ORACLESP-1546NM10K0 1546NM10K0                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.119 ORACLESP-1546NM10K3 1546NM10K3                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.121 ORACLESP-1546NM10K7 1546NM10K7                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.124 ORACLESP-1546NM10K8 1546NM10K8                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2             

192.168.4.112 ORACLESP-1546NM10KA 1546NM10KA                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.113 ORACLESP-1546NM10KB 1546NM10KB                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.111 ORACLESP-1546NM10KD 1546NM10KD                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.107 ORACLESP-1546NM10KE 1546NM10KE                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.104 ilom-ovcamn06r1     1546NM10KL                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2            

192.168.4.200 ovcasw21ar1         AK00335296                  Y   SNMP     ILOM   NA             Oracle Switch ES1-24          

192.168.4.201 ovcasw21br1         AK00335297                  Y   SNMP     ILOM   NA             Oracle Switch ES1-24          

192.168.4.203 ovcasw20r1          AK00335855                  Y   SNMP     ILOM   NA             Sun Datacenter InfiniBand Switch 36

192.168.4.202 ovcasw19r1          AK00335857                  Y   SNMP     ILOM   NA             Sun Datacenter InfiniBand Switch 36

 

Once you have the asset list, you can get the individual asset lists per host (using ILOM hostname) or IP (using -i).

[root@ovcamn06r1 bin]# ./asr list_asset -h ORACLESP-1546NM10K8

IP_ADDRESS    HOST_NAME           SERIAL_NUMBER PARENT_SERIAL ASR PROTOCOL SOURCE LAST_HEARTBEAT PRODUCT_NAME

----------    ---------           ------------- ------------- --- -------- ------ -------------- ------------

192.168.4.124 ORACLESP-1546NM10K8 1546NM10K8                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2


-i ip

--ipaddress=ip

List activation and ASR status by ipaddress. IP value can be a comma delimited list.

[root@ovcamn06r1 bin]# ./asr list_asset -i 192.168.4.108

IP_ADDRESS    HOST_NAME           SERIAL_NUMBER PARENT_SERIAL ASR PROTOCOL SOURCE LAST_HEARTBEAT PRODUCT_NAME

----------    ---------           ------------- ------------- --- -------- ------ -------------- ------------

192.168.4.108 ORACLESP-1534NM1047 1534NM1047                  Y   SNMP     ILOM   NA             ORACLE SERVER X5-2


If you want to map the Server hostname back to the ILOM hostname, you can execute the following.  The ilom suffix will pre-pend the actual Server hostname.

 

[root@ovcamn06r1 bin]# cat /etc/dhcp/dhcpd_dynamic.conf |grep ilom

host ilom-ovcacn10r1 { hardware ethernet 00:xx:xx:x0:17:37; fixed-address 192.168.4.105;default-lease-time 600;}

host ilom-ovcacn26r1 { hardware ethernet 00:xx:xx:xd:a0:cb; fixed-address 192.168.4.106;default-lease-time 600;}

host ilom-ovcacn33r1 { hardware ethernet 00:xx:xx:xe:2f:cd; fixed-address 192.168.4.107;default-lease-time 600;}

host ilom-ovcacn14r1 { hardware ethernet 00:xx:xx:xd:5d:4b; fixed-address 192.168.4.108;default-lease-time 600;}

host ilom-ovcacn11r1 { hardware ethernet 00:xx:xx:xd:67:a1; fixed-address 192.168.4.109;default-lease-time 600;}

host ilom-ovcacn29r1 { hardware ethernet 00:xx:xx:xd:6f:7b; fixed-address 192.168.4.110;default-lease-time 600;}

host ilom-ovcacn07r1 { hardware ethernet 00:xx:xx:xe:2f:4f; fixed-address 192.168.4.111;default-lease-time 600;}

host ilom-ovcacn36r1 { hardware ethernet 00:xx:xx:xe:30:69; fixed-address 192.168.4.112;default-lease-time 600;}

host ilom-ovcacn35r1 { hardware ethernet 00:xx:xx:xe:68:13; fixed-address 192.168.4.113;default-lease-time 600;}

host ilom-ovcacn30r1 { hardware ethernet 00:xx:xx:xa:e1:89; fixed-address 192.168.4.114;default-lease-time 600;}

host ilom-ovcacn12r1 { hardware ethernet 00:xx:xx:xd:4d:a3; fixed-address 192.168.4.115;default-lease-time 600;}

host ilom-ovcacn28r1 { hardware ethernet 00:xx:xx:xd:a0:47; fixed-address 192.168.4.116;default-lease-time 600;}

host ilom-ovcacn37r1 { hardware ethernet 00:xx:xx:xe:5f:4f; fixed-address 192.168.4.117;default-lease-time 600;}

host ilom-ovcacn34r1 { hardware ethernet 00:xx:xx:xe:5f:a9; fixed-address 192.168.4.118;default-lease-time 600;}

host ilom-ovcacn31r1 { hardware ethernet 00:xx:xx:xe:61:53; fixed-address 192.168.4.119;default-lease-time 600;}

host ilom-ovcacn13r1 { hardware ethernet 00:xx:xx:xd:4e:39; fixed-address 192.168.4.120;default-lease-time 600;}

host ilom-ovcacn32r1 { hardware ethernet 00:xx:xx:xe:2f:55; fixed-address 192.168.4.121;default-lease-time 600;}

host ilom-ovcacn08r1 { hardware ethernet 00:xx:xx:xe:60:db; fixed-address 192.168.4.122;default-lease-time 600;}

host ilom-ovcacn09r1 { hardware ethernet 00:xx:xx:xd:8c:fd; fixed-address 192.168.4.124;default-lease-time 600;}

host ilom-ovcacn27r1 { hardware ethernet 00:xx:xx:xd:66:6f; fixed-address 192.168.4.125;default-lease-time 600;}

host ilom-ovcamn06r1 { hardware ethernet 00:xx:xx:xe:5f:b5; fixed-address 192.168.4.104; default-lease-time 600;}

host ilom-ovcamn05r1 { hardware ethernet 00:xx:xx:xd:a1:55; fixed-address 192.168.4.103; default-lease-time 600;}


Note, the IP address is ILOM IP, to get Server IP subtract the last octet by 100;eg, 105 -100 = 5, this 192.168.4.5 is the Server IP.  To validate, execute:

 

PCA> list compute-node

 

Compute_Node  IP_Address    Provisioning_Status  ILOM_MAC            Provisioning_State

————  ———-    ——————-  ——–            ——————

ovcacn34r1    192.168.4.18  RUNNING              00:xx:xx:xe:5f:a9   running

ovcacn37r1    192.168.4.17  RUNNING              00:xx:xx:xe:5f:4f   running

ovcacn29r1    192.168.4.10  RUNNING              00:xx:xx:xd:6f:7b   running

ovcacn36r1    192.168.4.12  RUNNING              00:xx:xx:xe:30:69   running

ovcacn11r1    192.168.4.9   RUNNING              00:xx:xx:xd:67:a1   running

ovcacn26r1    192.168.4.6   RUNNING              00:xx:xx:xd:a0:cb   running

ovcacn07r1    192.168.4.11  RUNNING              00:xx:xx:xe:2f:4f   running

ovcacn30r1    192.168.4.14  RUNNING              00:xx:xx:xa:e1:89   running

ovcacn35r1    192.168.4.13  RUNNING              00:xx:xx:xe:68:13   running

ovcacn33r1    192.168.4.7   RUNNING              00:xx:xx:xe:2f:cd   running

ovcacn10r1    192.168.4.5   RUNNING              00:xx:xx:x0:17:37   running

ovcacn28r1    192.168.4.16  RUNNING              00:xx:xx:xd:a0:47   running

ovcacn12r1    192.168.4.15  RUNNING              00:xx:xx:xd:4d:a3   running

ovcacn08r1    192.168.4.22  RUNNING              00:xx:xx:xe:60:db   running

ovcacn14r1    192.168.4.8   RUNNING              00:xx:xx:xd:5d:4b   running

ovcacn32r1    192.168.4.21  RUNNING              00:xx:xx:xe:2f:55   running

ovcacn31r1    192.168.4.19  RUNNING              00:xx:xx:xe:61:53   running

ovcacn09r1    192.168.4.24  RUNNING              00:xx:xx:xd:8c:fd   running

ovcacn27r1    192.168.4.25  RUNNING              00:xx:xx:xd:66:6f   running

ovcacn13r1    192.168.4.20  RUNNING              00:xx:xx:xd:4e:39   running

 

PCA> list compute-node

 

Compute_Node  IP_Address    Provisioning_Status  ILOM_MAC            Provisioning_State

————  ———-    ——————-  ——–            ——————

ovcacn34r1    192.168.4.18  RUNNING              00:xx:xx:xe:5f:a9   running

ovcacn37r1    192.168.4.17  RUNNING              00:xx:xx:xe:5f:4f   running

ovcacn29r1    192.168.4.10  RUNNING              00:xx:xx:xd:6f:7b   running

ovcacn36r1    192.168.4.12  RUNNING              00:xx:xx:xe:30:69   running

ovcacn11r1    192.168.4.9   RUNNING              00:xx:xx:xd:67:a1   running

ovcacn26r1    192.168.4.6   RUNNING              00:xx:xx:xd:a0:cb   running

ovcacn07r1    192.168.4.11  RUNNING              00:xx:xx:xe:2f:4f   running

ovcacn30r1    192.168.4.14  RUNNING              00:xx:xx:xa:e1:89   running

ovcacn35r1    192.168.4.13  RUNNING              00:xx:xx:xe:68:13   running

ovcacn33r1    192.168.4.7   RUNNING              00:xx:xx:xe:2f:cd   running

ovcacn10r1    192.168.4.5   RUNNING              00:xx:xx:x0:17:37   running

ovcacn28r1    192.168.4.16  RUNNING              00:xx:xx:xd:a0:47   running

ovcacn12r1    192.168.4.15  RUNNING              00:xx:xx:xd:4d:a3   running

ovcacn08r1    192.168.4.22  RUNNING              00:xx:xx:xe:60:db   running

ovcacn14r1    192.168.4.8   RUNNING              00:xx:xx:xd:5d:4b   running

ovcacn32r1    192.168.4.21  RUNNING              00:xx:xx:xe:2f:55   running

ovcacn31r1    192.168.4.19  RUNNING              00:xx:xx:xe:61:53   running

ovcacn09r1    192.168.4.24  RUNNING              00:xx:xx:xd:8c:fd   running

ovcacn27r1    192.168.4.25  RUNNING              00:xx:xx:xd:66:6f   running

ovcacn13r1    192.168.4.20  RUNNING              00:xx:xx:xd:4e:39   running

 

I generally do a asset list generation via a csv

Display asset list to csv format. Please run “list_asset -c > asr_assets.csv” to copy the list_asset output into a csv file.

./asr list_asset –c >$HOME/asr_assets_all.csv

 

 

 

 

Dallas Oracle User Group Performance & 12.2 New Features Technical Day

Hey DFW Oracle Folks … heads up I’m speaking at the DOUG Performance & Tuning and 12.2 New Features Technical Day!

Charles Kim and I be speaking on the following topic:

  • “What to Expect .. When You are Expecting to Virtualize Your Database” –  (OVM or VMware)
  • Linux Best Practices for Oracle Database Systems

Time:

  • Thursday 20 October 2016 9:30am-5:30pm

Location: 

  • Courtyard & TownePlace Suites DFW Airport North/Grapevine, TX
    2200 Bass Pro Court|Grapevine, TX 76051 [map]

Speakers (Seven Oracle ACE Directors!):

  • Jim Czuprynski

  • Charles Kim

  • Cary Millsap

  • Dan Morgan

  • Kerry Osborne

  • Tanel Poder

  • Nitin Vengurlekar

Sign up & more details:

Data Guard Setup …its a recap

The intent of this section is to illustrate the build of the physical standby (disaster recovery) database from a production database.  For this scenario both databases will reside on the 1 physical server.

This section assumes that the Oracle Grid Infrasturcture, either Standalone or Cluster configuration is installed on both the primary host and standby host.  Additionally, the primary and standby databases will reside in an ASM diskgroup.   The primary database, VNA is currently in open mode.  The db_unique_name of the physical standby database is VNADR

The detailed doc is download-able here:    dataguardbook-11204setup

DATAGUARD CONFIGURATION

Building the Physical standby Database

  1. Add entries to tnsnames.ora for the VNA database and the DR database VNADR to both the primary database host and the DR database host.

 

VNA=

  (DESCRIPTION=

     (ADDRESS=(PROTOCOL=tcp)(HOST=dallas.viscosityna.com)(PORT=1532))

     (CONNECT_DATA=

       (SID=VNA)

     )

   )

 

VNADR = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.9.168)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = VNADR ) ))

 

  1. Add listener entry and reload the listener.

LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))            # line added by Agent

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON              # line added by Agent

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = VNADR)

      (SID_NAME = VNADR)

      (ORACLE_HOME = /u001/app/oracle/product/11.2.0.4/db_2)

    )

  )

 

[oracle@dallas admin]$ lsnrctl reload listener

 

LSNRCTL for Linux: Version 11.2.0.4.0 – Production on 11-JUL-2014 15:39:16

 

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

 

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

The command completed successfully

  1. An entry for for VNADR will need to added to /etc/oratab on the DR database host.

# This file is used by ORACLE utilities.  It is created by root.sh

# and updated by either Database Configuration Assistant while creating

# a database or ASM Configuration Assistant while creating ASM instance.

 

# A colon, ‘:’, is used as the field terminator.  A new line terminates

# the entry.  Lines beginning with a pound sign, ‘#’, are comments.

#

# Entries are of the form:

#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:

#

# The first and second fields are the system identifier and home

# directory of the database respectively.  The third filed indicates

# to the dbstart utility that the database should , “Y”, or should not,

# “N”, be brought up at system boot time.

#

# Multiple entries with the same $ORACLE_SID are not allowed.

#

+ASM:/u001/app/11.2.0.4/grid:N

VNADR:/u001/app/oracle/product/11.2.0.4/db_2:N

 

  1. The Oracle password file should be copied from the primary database to the DR database server.

 

[oracle@dallas admin]$ scp dallas.viscosityna.com:/u01/app/oracle/product/11.2.0/VNA/dbs/orapwVNA /u001/app/oracle/product/11.2.0/db_2/dbs/orapwVNADR

Uh Oh, I didnt set my Exadata core count correctly , now what?

Changing Capacity On-Demand Core Count in Exadata

We recently implemented an Exadata X6  at a one of client sites (yes, we don’t Oracle ACS, we do it ourselves).   However, the client failed to tell us that they had licensed only a subset of the cores per compute, after we actually had implmeneted and *migrated* production databases onto the X6.  So how do we set the core count correctly after implementation (post-OEDA run).  We heard horror stories about other folks saying they needed to re-image to set core count.  To be specific, its easy to increase cores, but decrease is nasty business.

The steps below are ones we used to decrease the core count:

1. Gracefully stop all databases running on all compute nodes.

2. Login to the compute nodes as root and run the “dbmcli” utility

3. Display the current core count using the following command:

LIST DBSERVER attributes coreCount

4. Change the core count to the desired count using this command (this needs done on all compute nodes):

ALTER DBSERVER pendingCoreCount = 14

NOTE:  Since we are  decreasing the number of cores after installation of the system, the FORCE option needs to be done.

ALTER DBSERVER pendingCoreCount = 14 FORCE

5. Reboot

6. Verify the change was correct by using the “LIST” command in step 3.

 

Just FYI… Troubleshooting

If there is an issue with the MS service starting up, it could be because of the Java being used on the system.

For Exadata release 12.1.2.3.1.160411, the version of Java was 1.8.0.66 and was flagged by a security audit as a vulnerability and was removed from the system.  When the system rebooted, the MS service couldn’t start back up because Java was removed. Follow these steps to reinstall Java and get the MS service restarted on the compute nodes.

1. Download the latest JDK from the Oracle site. NOTE: The RPM download was used.

2. Install the JDK package on the system:

rpm -ivh jdk-8u102- linux-x64.rpm

3. Redeploy the MS service application:

/opt/oracle/dbserver/dbms/deploy/scripts/unix/setup_dynamicDeploy DB -D

4. Restart the MS service:

ALTER DBSERVER RESTART SERVICES MS

 

iptables save

When I was working with our sysadmin person, he freaked out that when we stop/restarted iptables service, and the iptables were gone.  The iptables rules are lost upon shutdown on iptbles service or after system reboot.
 
What I usually do is save off my iptables rules into a save file as follows:
# iptables-save > $HOME/iptables.savefile
This command is essentially a print of current iptables rules to stdout.
[root@server ~]# iptables-save > iptables.dump
[root@server ~]# less iptables.dump

# Generated by iptables-save v1.4.7 on Fri Jul 22 20:24:22 2016
*filter
:INPUT ACCEPT [348542:44953290]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [9496643:512690291]
-A INPUT -i ib1 -p tcp -m tcp –dport 5042 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 5042 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 3260 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 3260 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 443 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 443 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 22 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 22 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -s 204.70.128.1/32 -i ib1 -p udp -m udp –sport 123 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib1 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib1 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib1 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib1 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 1024:65535 –tcp-flags FIN,SYN,RST,ACK SYN -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib1 -p tcp -m tcp –dport 1024:65535 -j ACCEPT
-A INPUT -i ib1 -p tcp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib1 -p udp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p tcp -m tcp –dport 5042 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 5042 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 3260 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 3260 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 443 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 443 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 22 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 22 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -s 204.70.128.1/32 -i ib0 -p udp -m udp –sport 123 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib0 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib0 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib0 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib0 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 1024:65535 –tcp-flags FIN,SYN,RST,ACK SYN -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p tcp -m tcp –dport 1024:65535 -j ACCEPT
-A INPUT -i ib0 -p tcp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p udp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -s 10.43.48.107/32 -i eth0 -p udp -m udp –dport 162 -j ACCEPT
….
COMMIT
# Completed on Fri Jul 22 20:24:22 2016
We can then execute iptables-restore, copy in or restore a dump of rules made by iptables-save.  
[root@server ~]# iptables-restore < iptables.dump
[root@server ~]# iptables -L

# Generated by iptables-save v1.4.7 on Fri Jul 22 20:24:22 2016
*filter
:INPUT ACCEPT [348542:44953290]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [9496643:512690291]
-A INPUT -i ib1 -p tcp -m tcp –dport 5042 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 5042 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 3260 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 3260 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 443 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 443 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 22 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 22 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -s 204.70.128.1/32 -i ib1 -p udp -m udp –sport 123 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib1 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib1 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib1 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib1 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -i ib1 -p tcp -m tcp –dport 1024:65535 –tcp-flags FIN,SYN,RST,ACK SYN -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib1 -p tcp -m tcp –dport 1024:65535 -j ACCEPT
-A INPUT -i ib1 -p tcp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib1 -p udp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p tcp -m tcp –dport 5042 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 5042 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 3260 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 3260 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 443 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 443 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 22 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 22 –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -s 204.70.128.1/32 -i ib0 -p udp -m udp –sport 123 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib0 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.32/32 -i ib0 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib0 -p tcp -m tcp –sport 53 -j ACCEPT
-A INPUT -s 10.13.34.31/32 -i ib0 -p udp -m udp –sport 53 -j ACCEPT
-A INPUT -i ib0 -p tcp -m tcp –dport 1024:65535 –tcp-flags FIN,SYN,RST,ACK SYN -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p tcp -m tcp –dport 1024:65535 -j ACCEPT
-A INPUT -i ib0 -p tcp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -i ib0 -p udp -j REJECT –reject-with icmp-port-unreachable
-A INPUT -s 10.43.48.107/32 -i eth0 -p udp -m udp –dport 162 -j ACCEPT
….
COMMIT
# Completed on Fri Jul 22 20:24:22 2016
Once imported back-in, simply run service iptables reload
 
 
As stated above, RHEL/OEL default configuration, when stopping or restarting the iptables service, discards the running configuration. Setting the IPTABLES_SAVE_ON_STOP=”yes” or IPTABLES_SAVE_ON_RESTART=”yes” in /etc/sysconfig/iptables-config, will prevent that discard. 
 
 
You can also do service iptables save, to save into /etc/sysconfig/iptables

Adding Physical disks to Windows 2012 Server

Since I have a terrible memory for such things, I have to keep notes for myself on How-Tos. A video is at the bottom that illustrates the process (if I can’t read it, at least I’ll see it) 🙂

This blog will walk through the process flow of adding Physical disks to Windows 2012 Server. I have already provisioned three disks via VMware (we won’t be covering this)

• Initialize new disks
• Create storage spaces, disks, and volumes with Server Manager
• Create volumes with the Disk Management snap-in

You use two different tools to bring three new disks online and initialize them in preparation for creating storage volumes.

Use the File and Storage Services submenu in Server Manager

1. In Server Manager, in the File and Storage Services submenu, click Volumes.
2. When Volumes home page appears, choose Disks. The Disks page appears. In our example, its showing one online disk and three offline disks.

3. Right-click the offline disk number 1 and, from the context menu, select Bring Online. A message box appears, warning you not to bring the disk online if it is already online and connected to another server.
4. When click Yes, the disk’s status changes to Online.
5. Right-click the same offline disk number 1 and, from the context menu, select Initialize. A message box appears, warning you that any data on the disk will be erased.
6. Click Yes. The disk is partitioned and ready to create volumes.
7. In Server Manager, click Tools > Computer Management. The Computer Management console appears.
8. In the left pane, click Disk Management. The Disk Management snap-in appears .

Using the Disk Management snap-in

9. Right-click the Disk 2 tile and, from the context menu, select Online.
10. Right-click the Disk 2 tile a second time and, from the context menu, select Initialize Disk. The Initialize Disk dialog box appears.
11. Select the GPT (GUID Partition Table) option and click OK. The Disk 2 status changes to Online.
12. Repeat steps 9 to 11 to initialize Disk 3.

You can use two methods to create simple volumes, using Server Manager and the Disk Management snap-in.
Server Manager and Disk Management both provide wizards for creating simple volumes, with similar capabilities.

1. In Server Manager, in the File and Storage Services submenu, click Volumes. The Volumes home page appears.
2. Click Tasks > New Volume. The New Volume Wizard appears, displaying the Before you begin page.
3. Click Next. The Select the server and disk page appears.
4. Select Disk 1 and click Next. The Specify the size of the volume page appears.
5. In the Volume size text box, type 10 and click Next. The Assign to a drive letter or folder page appears.
6. Click Next. The Select file system settings page appears.
7. Click Next. The Confirm selections page appears.
8. Click Create. The Completion page appears.
9. Click Close. The new volume appears in the Volumes pane.
10. Switch to the Computer Management console. The new volume you just created appears in the Disk 1 pane of the Disk Management snap-in.
11. Right-click the unallocated space on Disk 2 and, from the context menu, select New Simple Volume. The New Simple Volume Wizard appears, displaying the Welcome page.
12. Click Next. The Specify Volume Size page appears.
13. In the Simple volume size in MB spin box, type 10000 and click Next. The Assign Drive Letter or Path page appears.
14. Click Next. The Format Partition page appears.
15. Click Next. The Completing the New Simple Volume Wizard page appears.
16. Click Finish. The wizard creates the volume, and it appears in the Disk 2 pane.
17. Create a 10 GB simple volume on disk 3 with the drive letter G: using Windows PowerShell.

Creating a Storage Pool – Storage pools are a new feature in Windows Server 2012, which enable you to create a flexible storage subsystem with various types of fault tolerance.

Use the Server Manager console to create a storage pool, which consists of space from multiple physical disks.

The Storage Pools home page
1. In Server Manager, on the File and Storage Services submenu, click Storage Pools. The Storage Pools home page appears.
2. In the Storage Pools tile, click Tasks > New Storage Pool. The New Storage Pool Wizard appears, displaying the Before you begin page.
3. Click Next. The Specify a storage pool name and subsystem page appears.
4. In the Name text box, type Pool1 and click Next. The Select physical disks for the storage pool page appears.
5. Select the check boxes for PhysicalDisk1 and PhysicalDisk2 in the list and click Next. The Confirm selections page appears.
6. Click Create. The wizard creates the storage pool.
7. Click Close. The new pool appears in the Storage Pools tile.
8. Select Pool1.
9. In the Virtual Disks tile, click Tasks > New Virtual Disk. The New Virtual Disk Wizard appears, displaying the Before you begin page.
10. Click Next. The Select the storage pool page appears.
11. Click Next. The Specify the virtual disk name page appears.
12. In the name text box, type Data1 and click Next. The Select the storage layout page appears.
13. In the layout list, select Parity and click Next. A warning appears, stating that the storage pool does not contain a sufficient number of physical disks to support the Parity layout.

14. In the layout list, select Mirror and click Next. The Specify the provisioning type page appears.
15. Leave the default Fixed option selected and click Next. The Specify the size of the virtual disk page appears.
16. In the Virtual disk size text box, type 10 and click Next. The Confirm selections page appears.
17. Click Create. The wizard creates the virtual disk and the View results page appears. Deselect the Create a volume when this wizard closes option.
18. Click Close. The virtual disk appears on the Storage Pools page.
19. In the Virtual Disks tile, right-click the Data1 disk you just created and, from the context menu, select New Volume. The New Volume Wizard appears.
20. Using the wizard, create a volume on Disk 4 (Data1) using all of the available space, the NTFS file system, and the drive letter J:

AddPhyDisk_2_Pool_WinSrv2012.mp4