Monitoraggio e gestione di Exadata Storage Servers con ExaCLI

La utility della riga di comando ExaCLI consente di eseguire funzioni di monitoraggio e gestione sui server di storage Exadata in un'istanza dell'infrastruttura Exadata Cloud.

Informazioni sul comando ExaCLI

Il comando ExaCLI fornisce un subset dei comandi trovati nella utility della riga di comando Exadata in locale.

ExaCLI offre un subset dei comandi presenti nella utility della riga di comando Exadata in locale utility CellCLI. La utility viene eseguita sulle virtual machine del database in Exadata Cloud Service.

Per informazioni sui comandi disponibili, vedere l'elenco ExaCLI Command in questo argomento.

Nome utente e password Exadata Storage Server

Per connettersi a Exadata Storage Server, sono necessari un nome utente e una password.

Nell'infrastruttura Exadata Cloud l'utente preconfigurato per Exadata Storage Server è cloud_user_clustername, dove clustername è il nome del cluster virtual machine (VM) utilizzato.

È possibile determinare il nome del cluster VM eseguendo il seguente comando crsctl come utente grid su qualsiasi nodo cluster:
crsctl get cluster name

Il comando IThis restituisce CRS-6724: Current cluster name is <cluster_name>

La password per cloud_user_clustername viene inizialmente impostata su un valore casuale, che è possibile visualizzare eseguendo il comando seguente come utente root su qualsiasi nodo del cluster:
/opt/exacloud/get_cs_data.py

Restituisce una password <pwd>

Quindi eseguire il test con ExaCLI come root:
exacli -l cloud_user_<clusternmae> -c 192.168.136.14
Password: ****************************
exacli cloud_user_<cluster_name>@192.168.136.14>

Sintassi dei comandi ExaCLI

Per le destinazioni Exadata Storage Server, creare i comandi utilizzando la sintassi riportata di seguito.

Si noti che l'esempio di sintassi presuppone che l'utente opc sia l'utente su un nodo di calcolo.
exacli -c [username@]remotehost[:port] [-l username] [--xml] [--cookie-jar filename] [-e {command | 'command; command' | @batchfile}]
Questo esempio mostra l'utente su un nodo di calcolo Exadata che esegue il comando per eseguire il login a ExaCLI e avviare una sessione ExaCLI interattiva su un server di storage.
[opc@exacs-node1 ~]$ exacli -l cloud_user_clustername -c 192.168.136.7

Per informazioni su come determinare l'indirizzo IP del server di storage, vedere Connessione a un server di storage con ExaCLI.

Una volta eseguito il login, eseguire comandi aggiuntivi come indicato di seguito.
exacli cloud_user_clustername@192.168.136.7> LIST DATABASE
ASM
HRCDB
Esempio 2

Questo esempio mostra un singolo comando eseguito su un nodo di calcolo che esegue le operazioni riportate di seguito.

  • Si connette a un server di storage
  • Esegue un'azione LIST
  • Esce dalla sessione (specificato con il flag "-e")
[opc@exacs-node1 ~]$ exacli -l cloud_user_clustername -c 192.168.136.7 --xml --cookie-jar -e list griddisk detail
Opzione descrizione;

-c [username@]remotehost oppure

--connect [username@]remotehost[:port]

Specifica il nodo remoto a cui si desidera connettersi. Se non specificato, ExaCLI richiede il nome utente.

-l username oppure

--login-name username

Specifica il nome utente per eseguire il login al nodo remoto. L'utente preconfigurato è cloud_user_clustername.
--xml Visualizza l'output in formato XML.
--cookie-jar [filename]

Specifica il nome del file del file jar del cookie da utilizzare. Se il nome file non viene specificato, il cookie viene memorizzato in un file jar di cookie predefinito situato in HOME/.exacli/cookiejar, dove HOME è la directory HOME dell'utente del sistema operativo che esegue il comando ExaCLI.

La presenza di un cookie valido consente all'utente ExaCLI di eseguire comandi senza dover effettuare il login nelle successive sessioni ExaCLI.

-e command oppure

-e 'command[; command]' o

-e @batchFile

Specifica i comandi ExaCLI da eseguire o un file batch. ExaCLI esce dopo aver eseguito i comandi.

Se si specificano più comandi da eseguire, racchiudere i comandi tra apici per evitare che la shell interpreti il punto e virgola.

Omettere questa opzione per avviare una sessione ExaCLI interattiva.

--cert-proxy proxy[:port] Specifica il server proxy da utilizzare per il download dei certificati. Se port viene omessa, la porta 80 viene utilizzata per impostazione predefinita.

-n o

--no-prompt

Elimina la richiesta di input dell'utente.
  • Note per l'opzione --cookie-jar:

    • Il nome utente e la password vengono inviati al nodo remoto per l'autenticazione. In caso di autenticazione riuscita, il nodo remoto emette un cookie (le credenziali di login) memorizzato nel file filename specificato sul nodo del database. Se filename non viene specificato, il cookie viene memorizzato in un file jar di cookie predefinito situato in HOME/.exacli/cookiejar, dove HOME è la directory HOME dell'utente del sistema operativo che esegue il comando ExaCLI. Per l'utente opc, la home è /home/opc.
    • L'utente del sistema operativo che esegue il comando ExaCLI è il proprietario del file cookie-jar.
    • Un file jar di cookie può contenere più cookie di più utenti su più nodi in sessioni parallele.
    • I cookie vengono invalidati dopo 24 ore.
    • Se il cookie non viene trovato o non è più valido, ExaCLI richiede la password. Il nuovo cookie viene memorizzato nel file jar dei cookie identificato da filename o nel file jar dei cookie predefinito se non viene specificato filename.
    • Anche senza l'opzione --cookie-jar, ExaCLI controlla ancora i cookie dal file jar dei cookie predefinito. Tuttavia, se il cookie non esiste o non è più valido, il nuovo cookie non verrà memorizzato nel file jar del cookie predefinito se l'opzione --cookie-jar non viene specificata.

  • Note per l'opzione -e:

    • ExaCLI esce dopo aver eseguito i comandi.
    • Se si specificano più comandi da eseguire, assicurarsi di racchiudere i comandi tra apici per evitare che la shell interpreti il punto e virgola.
    • Il file batch è un file di testo che contiene uno o più comandi ExaCLI da eseguire.
  • Note per l'opzione -n (--no-prompt):

    • Se ExaCLI necessita di informazioni aggiuntive da parte dell'utente, ad esempio se ExaCLI deve richiedere all'utente una password (forse perché non vi erano cookie validi nel file cookie-jar) o per richiedere all'utente di confermare l'identità del nodo remoto, ExaCLI stampa un messaggio di errore ed esce.

Connessione a un server di storage con ExaCLI

Per utilizzare ExaCLI sugli storage server, è necessario conoscere l'indirizzo IP del server di storage di destinazione.

Se non si conosce l'indirizzo IP del nodo a cui si desidera connettersi, è possibile trovarlo visualizzando il contenuto del file cellip.ora.

L'esempio seguente illustra come eseguire questa operazione sulla riga di comando UNIX per un sistema Quarter Rack. Tenere presente che un Quarter Rack dispone di tre celle di storage e che ciascuna cella dispone di due connessioni, pertanto viene visualizzato un totale di sei indirizzi IP.
cat /etc/oracle/cell/
network-config/cellip.oracle
cell="192.168.136.5;cell="192.168.136.6"
cell="192.168.136.7;cell="192.168.136.8"
cell="192.168.136.9;cell="192.168.136.10"
Se si esegue la connessione a una cella di storage per la prima volta utilizzando ExaCLI, potrebbe essere richiesto di accettare un certificato SSL. L'output ExaCLI in questo caso sarà simile al seguente:
exacli -l cloud_user_clustername -c 192.168.136.7 --cookie-jar
No cookies found for cloud_user_clustername@192.168.136.7
Password: *********
EXA-30016: This connection is not secure. You have asked ExaCLI to connect to cell 192.168.136.7 securely. The identity of 192.168.136.7 cannot be verified.
Got certificate from server:
C=US,ST=California,L=Redwood City,O=Oracle Corporation,OU=Oracle Exadata,CN=ed1cl03clu01-priv2.usdc2.oraclecloud.com
Do you want to accept and store this certificate? (Press y/n)

Accettare il certificato Oracle autofirmato premendo "y" per continuare a utilizzare ExaCLI.

Riferimento per il comando ExaCLI

È possibile eseguire vari comandi ExaCLI per monitorare e gestire i server Exadata Storage Servers associati al sistema Oracle Cloud Infrastructure Exadata DB. ExaCLI ti consente di ottenere informazioni aggiornate e in tempo reale su Exadata Cloud Service.

Utilizzare il comando LIST con i seguenti servizi e oggetti:

  • ACTIVEREQUEST: elenca tutte le richieste attive attualmente gestite dagli storage server.
  • ALERTDEFINITION: elenca tutti i possibili avvisi e le relative origini per i server di storage.
  • ALERTHISTORY: elenca tutti gli avvisi che si sono verificati problemi per gli storage server.
  • CELL: elenca i dettagli degli attributi specifici degli storage server (celle di storage).
    LIST CELL ATTRIBUTES A,B,C

    dove A, B e C rappresentano gli attributi da visualizzare.

    Per visualizzare tutti gli attributi cella, utilizzare:

    LIST CELL ATTRIBUTES ALL
  • CELLDISK: elenca gli attributi dei dischi cella negli storage server.
    LIST CELLDISK cell_disk_name DETAIL

    Visualizza informazioni dettagliate per il disco cella specificato.

  • DATABASE: elenca i dettagli dei DATABASE.
    LIST DATABASE

    Visualizza un riepilogo di tutti i database.

    LIST DATABASE DETAIL

    Visualizza informazioni dettagliate per tutti i database.

    LIST DATABASE ATTRIBUTES NAME

    Visualizza l'attributo specificato (in questo caso, NAME) per ogni database.

  • FLASHCACHE: elenca i dettagli della cache flash del sistema Exadata.
    LIST FLASHCACHE DETAIL

    Visualizza informazioni dettagliate sulla cache flash.

    LIST FLASHCACHE ATTRIBUTES attribute_name

    Visualizza l'attributo specificato per la cache flash.

  • FLASHCACHECONTENT: elenca i dettagli di tutti gli oggetti nella cache flash o l'ID di un oggetto specificato.
    LIST FLASHCACHECONTENT DETAIL

    Visualizza informazioni dettagliate per tutti gli oggetti nella cache flash.

    LIST FLASHCACHECONTENT WHERE objectNumber=12345 DETAIL

    Visualizza informazioni dettagliate per l'oggetto con il valore objectNumber specificato.

    Nota

    Per trovare l'ID oggetto di un oggetto specifico, eseguire una query su user_objects utilizzando il nome dell'oggetto per recuperare il valore data_object_id di una partizione o di una tabella.

  • FLASHLOG: elenca gli attributi per il log Smart Flash di Oracle Exadata.
  • GRIDDISK: elenca i dettagli di un determinato disco griglia. La sintassi è simile al comando CELLDISK.
    LIST GRIDDISK grid_disk_name DETAIL

    Visualizza tutti gli attributi del disco griglia specificato.

    LIST GRIDDISK grid_disk_name ATTRIBUTES size, name

    Visualizza solo gli attributi (dimensione, nome) specificati del disco griglia.

  • IBPORT: elenca i dettagli delle porte InfiniBand.
    LIST IBPORT DETAIL

    Visualizza informazioni dettagliate per tutte le porte InfiniBand.

  • IORMPROFILE: elenca tutti i profili IORM impostati negli storage server. È inoltre possibile fare riferimento all'attributo profilo nell'oggetto DATABASE per verificare se a un DATABASE è associato un profilo IORM.
    LIST IORMPROFILE

    Visualizza i profili IORM configurati negli storage server.

  • LUN: rappresenta i numeri di unità logica (LUN, Logical Unit Number) dei dischi fisici negli storage server.
    LIST LUN

    Visualizza un riepilogo di tutte le LUN.

    LIST LUN lun_number DETAIL

    Visualizza informazioni dettagliate per il LUN specificato.

  • METRICCURRRENT: elenca le metriche correnti per un determinato tipo di oggetto.
    LIST METRICCURRENT WHERE objectType = 'CELLDISK'

    Visualizza le metriche correnti per il tipo di oggetto specificato (in questo caso, CELLDISK).

    LIST METRICCURRENT ATTRIBUTES name, metricObjectName 
    ORDER BY metricObjectName ASC, name DESC LIMIT 5

    Visualizza gli attributi selezionati, ordinati per metricObjectName (crescente) e name (decrescente), limitati ai primi 5 risultati.

  • METRICDEFINITION: elenca le definizioni delle metriche disponibili per un determinato tipo di oggetto. Queste definizioni possono quindi essere utilizzate per recuperare i dettagli per metriche specifiche.
    LIST METRICDEFINITION WHERE objectType = cell

    Visualizza tutte le definizioni delle metriche per il tipo di oggetto (cella) specificato.

    LIST METRICDEFINITION WHERE name = IORM_MODE DETAIL

    Visualizza informazioni dettagliate per la metrica specificata (IORM_MODE).

  • METRICHISTORY: elenca le metriche raccolte in un periodo di tempo specificato.
    LIST METRICHISTORY WHERE ageInMinutes < 30

    Visualizza tutte le metriche raccolte negli ultimi 30 minuti.

    LIST METRICHISTORY WHERE collectionTime > '2018-04-01T21:12:00-10:00'

    Visualizza tutte le metriche raccolte dopo l'indicatore orario specificato.

    LIST METRICHISTORY CT_FD_IO_RQ_SM

    Visualizza la cronologia di una metrica specifica per nome.

    LIST METRICHISTORY WHERE name LIKE 'CT_.*'

    Visualizza tutte le metriche con nomi corrispondenti al pattern specificato.

  • OFFLOADGROUP: elenca gli attributi dei gruppi di scaricamento in esecuzione nei server di storage.
    LIST OFFLOADGROUP DETAIL

    Visualizza informazioni dettagliate per tutti i gruppi di scaricamento.

    LIST OFFLOADGROUP offloadgroup4

    Visualizza i dettagli di un gruppo di scaricamento specifico (offloadgroup4).

    LIST OFFLOADGROUP ATTRIBUTES name

    Visualizza solo gli attributi specificati, ad esempio il nome, per tutti i gruppi di scaricamento.

  • PHYSICALDISK: elenca tutti i dischi fisici negli storage server. Utilizzare i risultati per identificare un disco specifico per ulteriori indagini.
    LIST PHYSICALDISK

    Visualizza un riepilogo di tutti i dischi fisici.

    LIST PHYSICALDISK 20:10 DETAIL

    Visualizza informazioni dettagliate per un disco specifico (20:10).

    LIST PHYSICALDISK FLASH_1_0 DETAIL

    Visualizza informazioni dettagliate per un disco flash specifico (FLASH_1_0).

  • PLUGGABLEDATABASE: elenca tutti i pluggable database (PDB) nell'ambiente.
    LIST PLUGGABLEDATABASE

    Visualizza un riepilogo di tutti i pluggable database.

    LIST PLUGGABLEDATABASE pdb_name

    Visualizza informazioni dettagliate per il pluggable database specificato (pdb_name).

  • QUARANTINE: elenca tutte le istruzioni SQL a cui è stato impedito di utilizzare Smart Scans.
    LIST QUARANTINE DETAIL

    Visualizza informazioni dettagliate per tutte le istruzioni SQL in quarantena.

    LIST QUARANTINE WHERE attribute = value

    Filtra i risultati in base ad attributi specifici utilizzando una clausola WHERE.

Utilizzare i comandi ExaCLI CREATE, ALTER, DROP e LIST per agire sui seguenti oggetti di Exadata Storage Server:

  • DIAGPACK: elenca i package di diagnostica e il relativo stato nel sistema Exadata.
    LIST DIAGPACK
    LIST DIAGPACK DETAIL

    Elenca tutti i pacchetti diagnostici, con DETAIL che fornisce informazioni estese.

    CREATE DIAGPACK packStartTime=2019_12_15T00_00_00

    Crea un pacchetto diagnostico a partire dall'ora specificata. È inoltre possibile utilizzare now per acquisire immediatamente la diagnostica:

    CREATE DIAGPACK packStartTime=now
    DOWNLOAD DIAGPACK cfclcx2647_diag_2018_06_03T00_44_24_1 /tmp

    Scarica il pacchetto diagnostico specificato nella directory /tmp (o in un altro percorso locale).

  • IORMPLAN: gestire i piani I/O Resource Manager (IORM) nei server di storage Exadata. È possibile elencare, creare, modificare ed eliminare i piani IORM utilizzando ExaCLI.
    LIST IORMPLAN DETAIL

    Elenca tutti i piani IORM con informazioni dettagliate.

    È inoltre possibile utilizzare CREATE IORMPLAN, ALTER IORMPLAN o DROP IORMPLAN per gestire i piani e applicarli agli storage server in base alle esigenze.

    select object_name, data_object_id from user_objects where object_name = 'BIG_CENSUS';
    OBJECT_NAME               DATA_OBJECT_ID
    ----------------------------------------
    BIG_CENSUS                29152