Quantcast
Channel: Blog dbi services
Viewing all articles
Browse latest Browse all 1431

Nutanix Era with oracle databases : Part 3 – Provision an oracle database

$
0
0

In the previous blog (Part 2) we have created a VM template for oracle database and we could successfully registered it in Nutanix Era. Now we are going to use it to provision an oracle database named ORATEST on a new VM called test1-VM.

Check

As we can see our VM template has been previously correctly registered in Nutanix Era and is currently stopped. No need to have the VM template up and running to use it provisioning new databases.

Software profile

We first need to create a software profile using our recently VM template. This will be the reference and used as template to provision new oracle database.

From the “Profiles” Menu, we will choose Software, create, Oracle and Single Instance Database :

We will then provide :

  • A name for the profile.
  • A description.
  • The system will create automatically a 1.0 version of the software profile. This one can later be patched with new RU for example.
  • We will provide the Software profile version.
  • And choose our VM template as VM reference.

We can check the progress from the “Operations” menu.

And see that our software profile has been created.

This operation is of course only needed one time as long as we would like to use this software profile as reference.

Compute profile

If none compute profile answer our needs, we will have to create one. The compute profile needs to be set accordingly of which database parameter profile we are using.
We need to provide enough resource in compute profile that will be provided to oracle SGA and PGA in the database parameter. Otherwise the provisioning might fail with following error :

Let’s create a compute profile named SMALL_COMPUTE with 2 cores and 16 GB RAM.

Database parameters profile

Let’s finally create a database parameters profile to match configuration for database we would like to provision.

From the profile menu, database parameters part, chose create, then Oracle and click next.

We will not use AMM (Automatic Memory Management) here, so resetting memory_target parameter, and use ASMM (Automatic Shared Memory Management) instead. We will therefore set both sga and pga parameters.

Provision a database

All is now ready for us to provision a database.

This will be done from the “Databases” Menu, choosing “Oracle Source DBs” :

Click on Provision, Oracle, Single Instance Database :

We will choose to create a new VM. Of course we could deploy a new database on an existing VM that would have previously already registered in Nutanix Era.

We will provide :

  • Name of the VM.
  • The Software Profile we would like to use to deploy the oracle database. We will choose the one we just created.
  • The Compute Profile, we just created to match the database sizing we would like.
  • The Network Profile
  • The Public key of the oracle user we generated in previous blog when creating the VM template.

We will then provide :

  • The database name.
  • The SID.
  • SYS and SYSTEM password.
  • The size of the file system.
  • The size of the FRA.
  • The Character Set.
  • The National Character Set.
  • The Listener Port.

Additional information for the Time Machine Snapshots.

We can now push the provision button to start provisioning the database. And with the Operations menu we can check that all is going as expected.

Connect to the new provisioned database and do some checks

Let’s see how Nutanix Era provisioned the oracle database and if it is working.

We will first connect with ssh on the new created VM. As expected, we can connect with the private key of the oracle user we generated on the VM template :

ec2-user@ip-10-0-129-41 .ssh]$ ssh -i oracle-nutanix-era-template-oracleDB-vm.pem oracle@X.X.X.174
The authenticity of host 'X.X.X.174 (X.X.X.174)' can't be established.
ECDSA key fingerprint is SHA256:FbmiWaGZ51o+Y9oCusUYt4IpSyji3YxehWs/hnXQ4hY.
ECDSA key fingerprint is MD5:c9:38:14:5f:7f:a8:41:7b:14:04:42:c6:fd:c8:54:f1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'X.X.X.174' (ECDSA) to the list of known hosts.
Last login: Wed Aug 11 14:33:44 2021 from X.X.X.253
[oracle@test1-VM ~]$

We can check the file system :

[oracle@test1-VM .ssh]$ df -h
Filesystem                                                                                                                          Size  Used Avail Use% Mounted on
devtmpfs                                                                                                                            7.7G     0  7.7G   0% /dev
tmpfs                                                                                                                               3.0G     0  3.0G   0% /dev/shm
tmpfs                                                                                                                               7.7G  8.7M  7.7G   1% /run
tmpfs                                                                                                                               7.7G     0  7.7G   0% /sys/fs/cgroup
/dev/mapper/vgroot--lv-root                                                                                                         6.0G  108M  5.9G   2% /
/dev/mapper/vgroot--lv-usr                                                                                                          3.0G  1.6G  1.5G  53% /usr
/dev/sda1                                                                                                                           496M  224M  273M  46% /boot
/dev/sda2                                                                                                                          1022M   12K 1022M   1% /boot/efi
/dev/sdb                                                                                                                             50G  9.8G   38G  21% /u02
/dev/mapper/vgroot--lv-home                                                                                                         4.0G   72M  4.0G   2% /home
/dev/mapper/vgroot--lv-opt                                                                                                          4.0G   69M  4.0G   2% /opt
/dev/mapper/vgroot--lv-tmp                                                                                                          3.0G  911M  2.2G  30% /tmp
/dev/mapper/vgroot--lv-var                                                                                                          3.0G  3.0G   60M  99% /var
/dev/mapper/ntnx_era_agent_vg_f5f089e315114644a8921b21a51d82f2-ntnx_era_agent_lv_era_software_f5f089e315114644a8921b21a51d82f2      2.9G  668M  2.1G  25% /opt/era_base/era_engine
/dev/mapper/ntnx_era_agent_vg_47aab96bac4343b2a4a73453130a22fd-ntnx_era_agent_lv_db_stagging_logs_47aab96bac4343b2a4a73453130a22fd   98G   71M   93G   1% /opt/era_base/db_logs/ORATEST
/dev/mapper/ntnx_era_agent_vg_f5f089e315114644a8921b21a51d82f2-ntnx_era_agent_lv_era_config_f5f089e315114644a8921b21a51d82f2         93M  1.6M   85M   2% /opt/era_base/cfg
/dev/mapper/ntnx_era_agent_vg_f5f089e315114644a8921b21a51d82f2-ntnx_era_agent_lv_era_logs_f5f089e315114644a8921b21a51d82f2          7.7G   72M  7.2G   1% /opt/era_base/logs
/dev/mapper/oradata_fra_ORATEST_vg-oradata_fra_ORATEST_lv                                                                           9.8G  955M  8.4G  11% /u02/app/oracle/oradata/fra_ORATEST
/dev/mapper/oradata_ORATEST_vg-oradata_ORATEST_lv                                                                                    20G  2.9G   16G  16% /u02/app/oracle/oradata/datafiles_ORATEST
tmpfs                                                                                                                               1.6G     0  1.6G   0% /run/user/54321      

We can check the database files :

[oracle@test1-VM .ssh]$ ls -ltrh /u02/app/oracle/oradata/datafiles_ORATEST/ORATEST/
total 12K
drwxr-x---. 2 oracle oinstall 4.0K Aug 11 14:35 controlfile
drwxr-x---. 2 oracle oinstall 4.0K Aug 11 14:35 onlinelog
drwxr-x---. 2 oracle oinstall 4.0K Aug 11 14:44 datafile

[oracle@test1-VM .ssh]$ ls -ltrh /u02/app/oracle/oradata/datafiles_ORATEST/ORATEST/controlfile/
total 11M
-rw-r-----. 1 oracle oinstall 11M Aug 12 15:05 o1_mf_jk7r16xw_.ctl

[oracle@test1-VM .ssh]$ ls -ltrh /u02/app/oracle/oradata/datafiles_ORATEST/ORATEST/onlinelog/
total 601M
-rw-r-----. 1 oracle oinstall 201M Aug 12 14:09 o1_mf_2_jk7r196j_.log
-rw-r-----. 1 oracle oinstall 201M Aug 12 14:38 o1_mf_3_jk7r1986_.log
-rw-r-----. 1 oracle oinstall 201M Aug 12 15:04 o1_mf_1_jk7r195y_.log

[oracle@test1-VM .ssh]$ ls -ltrh /u02/app/oracle/oradata/datafiles_ORATEST/ORATEST/datafile/
total 2.2G
-rw-r-----. 1 oracle oinstall 129M Aug 11 14:43 o1_mf_temp_jk7rk1xc_.tmp
-rw-r-----. 1 oracle oinstall 5.1M Aug 12 14:43 o1_mf_users_jk7r05t2_.dbf
-rw-r-----. 1 oracle oinstall 771M Aug 12 15:00 o1_mf_sysaux_jk7qzopd_.dbf
-rw-r-----. 1 oracle oinstall 961M Aug 12 15:02 o1_mf_system_jk7qywmo_.dbf
-rw-r-----. 1 oracle oinstall 513M Aug 12 15:02 o1_mf_undotbsp_jk7rk221_.dbf
[oracle@test1-VM .ssh]$

We can see that Nutanix Era used our software profile, let’s say our VM template we created in previous blog, and setted up :

  • a file system /u02/app/oracle/oradata/datafiles_ORATEST for the database files (control files, online log files, and datafiles) sized as requested with 20 GB.
  • a file system /u02/app/oracle/oradata/fra_ORATEST for the FRA sized as requested with 10 GB.

On the other hand the directory we used on the VM template for the ORACLE_HOME does not exist any more…

[oracle@test1-VM .ssh]$ ls -l /u01/app
total 0
drwxrwxr-x. 5 oracle oinstall 51 Aug 13 12:59 oraInventory

The ORACLE variables are setted up :

[oracle@test1-VM ~]$ echo $ORACLE_HOME
/u02/app/oracle/product/19.0.0/dbhome_1

[oracle@test1-VM ~]$ echo $ORACLE_SID
ORATEST

So here we can see that Nutanix Era created the Oracle Binaries home directory in /u02.

[oracle@test1-VM ~]$ ls /u02/app/oracle/product/19.0.0/dbhome_1
addnode     bin          crs  data       demo         env.ora  instantclient  jdk   log      nls     OPatch.v.17  ord   owm      QOpatch  relnotes       root.sh.old.2  root.sh.ouibak  slax          sqlplus   usm
admin       cfgtoollogs  css  dbjava     diagnostics  has      inventory      jlib  md       odbc    opmn         ords  perl     R        root.sh        root.sh.old.3  runInstaller    sqldeveloper  srvm      utl
apex        client       ctx  dbs        drdaas       hs       javavm         ldap  mgw      olap    oracore      oss   plsql    racg     root.sh.old    root.sh.old.4  schagent.conf   sqlj          suptools  wwg
assistants  clone        cv   deinstall  dv           install  jdbc           lib   network  OPatch  oraInst.loc  oui   precomp  rdbms    root.sh.old.1  root.sh.old.5  sdk             sqlpatch      ucp       xdk
[oracle@test1-VM ~]$

Let’s check what version of binaries we have :

[oracle@test1-VM ~]$ cd $ORACLE_HOME/OPatch
[oracle@test1-VM OPatch]$ ./opatch lsinv | grep -i description
ARU platform description:: Linux x86-64
Patch description:  "Database Release Update : 19.12.0.0.210720 (32904851)"
Patch description:  "OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380)"
Patch description:  "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)"
[oracle@test1-VM OPatch]$

This is as expected and the version we installed on the VM template.

Is the database even started?

[oracle@test1-VM OPatch]$ ps -ef | grep pmon | grep -v grep
[oracle@test1-VM OPatch]$

No, and as expected from the /etc/oratab, which by the way has been updated accordingly by Nutanix Era :

[oracle@test1-VM OPatch]$ grep -i ORATEST /etc/oratab
ORATEST:/u02/app/oracle/product/19.0.0/dbhome_1:N
[oracle@test1-VM OPatch]$

Let’s start the database :

[oracle@test1-VM OPatch]$ echo $ORACLE_SID
ORATEST

[oracle@test1-VM OPatch]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Fri Aug 13 13:31:02 2021
Version 19.12.0.0.0

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

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 2147481648 bytes
Fixed Size		    8898608 bytes
Variable Size		  486539264 bytes
Database Buffers	 1644167168 bytes
Redo Buffers		    7876608 bytes
Database mounted.
Database opened.

Database is up and running :

[oracle@test1-VM OPatch]$ ps -ef | grep pmon | grep -v grep
oracle    107265       1  0 13:31 ?        00:00:00 ora_pmon_ORATEST
[oracle@test1-VM OPatch]$

And finally let’s check the datapatch version of the database :

[oracle@test1-VM OPatch]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Fri Aug 13 13:33:37 2021
Version 19.12.0.0.0

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


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.12.0.0.0

SQL> set linesize window
SQL> select instance_name, host_name from v$instance;

INSTANCE_NAME	 HOST_NAME
---------------- ----------------------------------------------------------------
ORATEST 	 test1-VM

SQL> select patch_id, source_version, target_version, status, description from dba_registry_sqlpatch;

  PATCH_ID SOURCE_VERSION  TARGET_VERSION  STATUS		     DESCRIPTION
---------- --------------- --------------- ------------------------- ----------------------------------------------------------------------------------------------------
  32876380 19.1.0.0.0	   19.1.0.0.0	   SUCCESS		     OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380)
  32904851 19.1.0.0.0	   19.12.0.0.0	   SUCCESS		     Database Release Update : 19.12.0.0.210720 (32904851)

SQL>

The database has been provisioned with success.

And what from Nutanix Era GUI side?

On Nutanix Era GUI side we can see that we have now 2 VMs. Our template VM which is stopped and does not need to be started to provision databases, and the new created test1-VM.


And we can see our ORATEST database been provisionned.


Conclusion

We could successfully and easily provision an oracle database with Nutanix Era. On the next blog we will see how to clone a database and how Nutanix Era interacts with the database to perform the clone.

Cet article Nutanix Era with oracle databases : Part 3 – Provision an oracle database est apparu en premier sur Blog dbi services.


Viewing all articles
Browse latest Browse all 1431

Trending Articles