Oracle Database Cloud Service

Oracle Cloud consente di utilizzare l'ampia gamma dei prodotti Oracle in modalita' on Demand ovvero attivando e pagando i servizi solo quando necessario.
Utilizzare Oracle Cloud e' il modo piu' facile per attivare in tempi brevissimi un'infrastruttura composta da prodotti Oracle. Un ulteriore vantaggio e' la certezza che l'installazione venga implementata seguendo secondo le best pratice di ogni componente.

Questo articolo descrive in dettaglio l'attivazione pratica di un servizio Database su Oracle Cloud.

Il precedente articolo su Oracle Cloud ha descritto gia' l'attivazione dei servizi e l'utilizzo del portale My Account per il controllo dell'uso e dei costi.

Questo documento e' organizzato nei seguenti capitoli: Portale My Services, Creazione servizio database, Utilizzo, Architettura, ...
La versione di riferimento utilizzata in questo documento e' quella piu' recente di Oracle Cloud [NdE 2Q 2015].

Portale My Services

Una volta acquistato ed attivato Oracle Cloud sono necessari solo alcuni semplici passi sul portale Oracle CLOUD My Services per attivare un servizio. Tutti i passi sono guidati ed utilizzano semplici wizard.

Il portale Oracle CLOUD My Services e' semplice da utilizzare anche se richiede una base di competenze tecniche sul tipo di servizi attivati. Per creare un'istanza Oracle bisogna definire versione, edition, sizing, ... Questo si puo' fare correttemente solo se si conoscono le differenze tra le varie scelte proposte dai wizard di configurazione dei servizi.

L'accesso avviene sull'URL: https://dbaas.oraclecloud.com/ [NdE Attenzione: si tratta di un portale diverso da quello CLOUD My Account] ed e' necessario indicare il dominio utilizzando l'utenza ricevuta via email: Oracle Cloud - Domain Un URL diretto ai servizi e' quello ricevuto nella mail di conferma del servizio, ma e' diverso per ogni cliente. Effettuato il login viene presentata la pagina iniziale: Oracle Cloud - My Services

Sono presenti 3 tab:

Vediamo ora in pratica la creazione di un servizio database che si effettua dalla dashboard.

Creazione servizio database

Dal portale My Services si accede alla dashboard. Sono riportate le tipologie di servizi acquistati ed i relativi dettagli. Naturalmente quello che ci interessa sono i Database Cloud Service. Per creare un nuovo database basta premere il bottone Create service: Oracle Cloud - Database Service La prima pagina del wizard di creazione del database fa due domande molto importanti.

Il Service Level indica il grado di gestione del database e di flessibilita' nella configurazione. Con la prima scelta viene creata automaticamente un'istanza con i parametri indicati nel wizard e possono essere utilizzati tutti i tool di cloud per la gestione (eg. backup). Scegliendo invece la Virtual Image non viene creata alcuna instanza che deve essere installata manualmente dal DBA, che puo' configurarla a proprio piacimento.
Si tratta di scelte molto differenti dal punto di vista di gestione: la prima scelta e' adatta per automatizzare completamente la gestione del DB. La seconda scelta e' invece da utilizzare quando sono necessarie personalizzazioni specifiche dell'istanza e richiede le attivita' di un DBA per la gestione. Un'ultima differenza: il costo OCPU delle Virtual Image e' inferiore in modo significativo [NdE -40%].

La Billing Frequency invece fa riferimento alla modalita' di calcolo del costo dell'istanza. E' possibile effettuare il conteggio dell'uso del servizio su base oraria o mensile. Si tratta di scelte differenti dal punto di vista dei costi. Infatti il costo orario e' maggiore rispetto a quello calcolato su base mensile [NdE indicativamente +20%]. Il billing orario e' conveniente per tutte le attivita' di test e quando e' possibile disattivare le istanze per diversi giorni in un mese. Se un'istanza deve essere sempre attiva il billing mesile risulta invece piu' conveniente. Oracle Cloud - Database Service Wizard - Subscription E' ora necessario scegliere la release del database. La scelta dipende principalmente da esigenze applicative, anche se e' tipicamente consigliabile utilizzare l'ultima release. Naturalmente sono disponibili solo le release piu' recenti e supportate di Oracle RDBMS: Oracle Cloud - Database Service Wizard - Release A seconda della release scelta vi sono possibilita' diverse sull'Edition. La scelta dell'Edition e' molto importante sia dal punto di vista funzionale che di costo. La differenza delle OCPU tra una Standard Edition One ed un Enterprise Edition-Extreme Performance e' di un ordine di grandezza [NdE anche se ad essere pignoli il confronto non si puo' effettuare].

Nelle installazioni on Premise il listino di Oracle permette di scegliere l'Edition e, se si utilizza l'Enterprise Edition [NdE che e' la scelta piu' diffusa per la sua completezza], permette di scegliere singolarmente le database Option che si desiderano. Nella soluzione in cloud non e' possibile scegliere singolarmente ogni Option e sono state individuate quattro tipologie di Edition tra cui scegliere:

A questo punto e' molto importante individuare i requisiti della propria installazione e scegliere l'edizione di conseguenza. Deve essere notato che a seconda della Release scelta nel passo precedente il wizard presenta scelte di Edition differenti:
Oracle Cloud - Database Service Wizard - Edition 12c Oracle Cloud - Database Service Wizard - Edition 11g

La sucessiva pagina del wizard richiede i dettagli per la configurazione dell'istanza. Oracle Cloud - Database Service Wizard - OCPU/Memory I parametri di dettaglio da impostare dipendono dalle scelte precedenti... diamo quindi una descrizione sommaria dei parametri piu' indicativi. Un primo suggerimento e' quello di adottare uno stanza di nomenclatura dei servizi che ne consenta una facile individuazione. Un fattore molto importante per le prestazioni [NdE ed ovviamente per i costi] e' il Compute shape che permette di indicare quante OCPU/Memoria vengono associate al servizio. Altro elemento importante e' lo spazio che va indicato come GB utilizzabili, il calcolo dell'effettiva dimensione dei file system necessari e' effettuato dal wizard. Se e' stato scelto il Cloud Service Level e' anche possibile indicare la destinazione dei backup. Da ultimo, ma non ultimo come importanza, e' il file di VM public key che consente l'accesso alla VM (la chiave si genera facilmente su un qualsiasi unix con il comando ssh-keygen che pone nella directory .ssh la coppia di chiavi pubblica/privata): Oracle Cloud - Database Service Wizard - Service Details Molto piu' limitate sono le parametrizzazioni nel caso di installazione VI (Virtual Image): Oracle Cloud - Database Service Wizard - Service Details Nell'ultima videata vengono riassunti i parametri impostati e viene conferamata la creazione del servizio. L'attivazione del DB as a Service richiede ora un tempo variabile [NdE ad esempio 30 minuti]. Terminate le attivita' l'istanza di DBaaS e' gestibile facilmente dal portale. Da notare l'indicazione dell'IP pubblico fondamentale per utilizzare il sistema ed il DB: Oracle Cloud - Database Service Wizard - DDaaS

Utilizzo

Una volta attivo il servizio... non si raggiunge!
E' una battuta: per evidenti ragioni di sicurezza l'unico accesso disponibile e' via SSH con la chiave definita durante la creazione verso l'IP pubblico del servizio.
Per le successive abilitazioni e' sufficiente autorizzare le chiavi degli altri utenti/sistemi. Mentre per l'accesso e' possibile percorrere due strade alternative: autorizzare le porte desiderate (eg. 1521) o utilizzare un tunnel SSH. Per abilitare l'accesso basta configurare le politiche desiderate sul portale, e' facile: sono gia' state create ma non abilitate durante la configurazione del servizio [NdA e probabilmente lo descriveremo in un prossimo articolo]. Mentre per creare un tunnel basta un'opzione dell'SSH:
 ssh -L 1521:129.152.XXX.XXX:1521 oracle@129.152.XXX.XXX

Una volta impostati gli accessi l'utilizzo e' del tutto analogo a quello di un sistema e di un database raggiungibili in rete: per ogni servizio e' infatti disponibile un IP pubblico da utilizzare per raggiungere il sistema.
Dal punto di vista di sistema operativo le utenze definite sono due: oracle ed opc. L'utenza oracle e' quella di installazione del DB e consente il lancio di tutti i tool Oracle. L'utenza opc puo' effettuare il sudo sull'utenza root (non accessibile direttamente in SSH) ed e' quindi utilizzata per tutte le attivita' amministrative sul sistema operativo. Ecco un qualche semplice esempio di utilizzo (oracle):

mymac:~ meo$ ssh oracle@129.152.XXX.XXX Authorized uses only. All activity may be monitored and reported. [oracle@xeniatest02 ~]$ uname -a Linux xeniatest02 2.6.39-400.109.1.el6uek.x86_64 #1 SMP Tue Jun 4 23:21:51 PDT 2013 x86_64 x86_64 x86_64 GNU/Linux [oracle@XeniaTest02 ~]$ ps -efa | grep -v root UID PID PPID C STIME TTY TIME CMD oracle 4652 1 0 19:22 ? 00:00:00 /u01/app/oracle/product/12.1.0/dbhome_1/bin/tnslsnr LISTENER -inherit oracle 8108 1 0 19:44 ? 00:00:00 ora_pmon_TST02 oracle 8112 1 0 19:44 ? 00:00:00 ora_psp0_TST02 oracle 8116 1 1 19:44 ? 00:00:04 ora_vktm_TST02 oracle 8122 1 0 19:44 ? 00:00:00 ora_gen0_TST02 oracle 8126 1 0 19:44 ? 00:00:00 ora_mman_TST02 oracle 8134 1 0 19:44 ? 00:00:00 ora_diag_TST02 oracle 8138 1 0 19:44 ? 00:00:00 ora_dbrm_TST02 oracle 8142 1 0 19:44 ? 00:00:00 ora_vkrm_TST02 oracle 8146 1 0 19:44 ? 00:00:00 ora_dia0_TST02 oracle 8150 1 0 19:44 ? 00:00:00 ora_dbw0_TST02 oracle 8154 1 0 19:44 ? 00:00:00 ora_lgwr_TST02 oracle 8158 1 0 19:44 ? 00:00:00 ora_ckpt_TST02 oracle 8162 1 0 19:44 ? 00:00:00 ora_lg00_TST02 oracle 8166 1 1 19:44 ? 00:00:04 ora_smon_TST02 oracle 8170 1 0 19:44 ? 00:00:00 ora_lg01_TST02 oracle 8174 1 0 19:44 ? 00:00:00 ora_reco_TST02 oracle 8178 1 0 19:44 ? 00:00:00 ora_lreg_TST02 oracle 8182 1 0 19:44 ? 00:00:00 ora_pxmn_TST02 oracle 8228 1 0 19:45 ? 00:00:00 ora_tmon_TST02 oracle 9391 9372 3 19:49 ? 00:00:00 oracleTST02 (DESCRIPTION=(LOCAL=YES)(ADDRESS= ... [oracle@XeniaTest02 ~]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Sun Aug 23 21:05:32 2015 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Partitioning, Oracle Label Security, OLAP, Advanced Analytics and Real Application Testing options SQL>
E come amministratore (opc):
myMac:~ meo$ ssh opc@129.152.XXX.XXX Authorized uses only. All activity may be monitored and reported. [opc@xeniatest02 ~]$ sudo su - We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. -bash-4.1# df -k Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvdb2 16313216 8021284 7463536 52% / tmpfs 3855156 1855348 1999808 49% /dev/shm /dev/xvdb1 198337 92161 95936 49% /boot /dev/xvdc1 30962684 9497184 19892688 33% /u01 /dev/mapper/dataVolGroup-lvol0 25798972 6893260 17595200 29% /u02 /dev/mapper/fraVolGroup-lvol0 43345088 4605852 36537432 12% /u03 /dev/mapper/redoVolGroup-lvol0 10317112 3299864 6493168 34% /u04

L'utilizzo del DB con tool o in client/server non presenta nessuna differenza rispetto ad un altro database, se non per l'accesso attraverso la rete.

Architettura

Il titolo e' un poco fuorviante... non vogliamo descrivere in questo capitolo descrivere l'architettura dell'RDBMS Oracle (gia' descritta in altri documenti) o quella dei servizi in Cloud (che e' gestita nella Farm di Oracle e non possiamo conoscere)! Ci sono pero' alcuni aspetti di architettura che riteniamo importante segnalare.

Tutti i servizi di database sono ospitati su sistemi Linux e, per essere precisi, su OEL 6.4. I sistemi ospite sono macchine virtuali con una configurazione standard: il file system /u01, pacchetti di sistema, prerequisiti, ... La dimensione dei file system viene calcolata per rendere disponibile lo spazio utilizzabile richiesto in fase di creazione del servizio. Il numero di CPU assegnate alla VM corrisponde al numero di OPC acquistate.
Dal punto di vista di processi ed attivita' di sistema quanto presente corrisponde alle best pratice di installazione/configurazione dell'RDBMS Oracle e dei suoi componenti. Viene utilizzata la porta 1521 per il database, la porta 5500 per l'Enterprise manager, ...

L'accesso come utente root alle VM che ospitano i database consente di raccogliere un insieme molto elevato di informazioni sulla piattaforma. Quando si acquista un servizio in Cloud le caratteristiche tecniche degli ambienti non sono fisse ed il provider puo' cambiarle per fare evolvere tecnologicamente la propria Farm. Quindi il contenuto di questo ultimo paragrafo non e' assolutamente affidabile ma abbiamo preferito riportarlo comunque poiche', a nostro avviso, interessante!
Le VM sono Oracle Enterprise Linux (OEL 6.4), configurate come guest Xen paravirtualizzati (PVM: la scelta piu' efficiente), ospitate su OVM 3.3.
Le CPU fisiche sono Intel(R) Xeon(R) CPU E5-2690 a 2.90GHz. Si tratta degli stessi processori utilizzati su ODA (X3-2); a mio avviso un'ottima scelta che avvantaggia il cliente: altri processori dispongono di piu' core ma con un clock inferiore.
La latenza? Per un utilizzo in cloud e' molto importante e va valutata con attenzione l'architettura. Da questo punto e' molto importante la possibilita' di utilizzare l'infrastruttura Oracle Cloud per implementare l'intera piattaforma applicativa con evidenti vantaggi prestazionali. In ogni caso controlliamo (stiamo provando da un continente diverso):

My traceroute  [v0.86]
                                                       Packets               Pings
 Host                                                  Loss%   Snt  Last   Avg  Best Wrst  StDev
 1. 192.168.1.254                                      0.0%    39    1.8 114.7   1.7 2457. 446.5
...
20. border2.te8-1-bbnet2.chg004.pnap.net               0.0%    38  146.1 189.4 120.0 1794. 284.1
21. oraclebol-7.border2.chg004.pnap.net                2.6%    38  134.2 198.0 132.2 1761. 279.3
22. inet-160-34-15-52.us2.cloud.oracle.com             0.0%    38  157.6 194.9 132.2 1722. 267.4
...
26. oc-129-152-XXX-XXX.compute.oraclecloud.com         0.0%    38  133.4 249.5 132.6 2629. 461.7
Ulteriori dettagli? Ecco una statistica di sistema ed una statistica DB!


Titolo: Oracle Cloud - Servizio Database
Livello: Avanzato (3/5)
Data: 14 Luglio 2015
Versione: 1.0.1 - 24 Agosto 2015
Autore: mail [AT] meo.bogliolo.name