Connessione a un'istanza dell'infrastruttura Exadata Cloud

Questo argomento spiega come connettersi a un'istanza dell'infrastruttura Exadata Cloud utilizzando SSH o SQL Developer.

La modalità di connessione dipende dall'impostazione della rete cloud. È possibile trovare informazioni su vari scenari di rete in Panoramica di rete, ma per suggerimenti specifici su come connettersi a un database nel cloud, contattare l'amministratore della sicurezza di rete.

Nota

I server dell'infrastruttura Exadata Cloud non possono essere uniti ai domini Active Directory e il servizio non supporta l'uso di Active Directory per l'autenticazione e l'autorizzazione degli utenti.

Prerequisiti

Lista dei requisiti per l'accesso SSH a un nodo di calcolo in un'istanza dell'infrastruttura Exadata Cloud.

Avrai bisogno di:

  • Il percorso completo del file che contiene la chiave privata associata alla chiave pubblica utilizzata all'avvio del sistema.

  • Indirizzo IP pubblico o privato dell'istanza dell'infrastruttura Exadata Cloud.

    Utilizzare l'indirizzo IP privato per connettersi al sistema dalla rete on premise o dalla rete cloud virtuale (VCN, Virtual Cloud Network). È inclusa la connessione da un host situato in locale che si connette tramite una VPN o FastConnect alla VCN o da un altro host nella stessa VCN. Utilizza l'indirizzo IP pubblico per connetterti al sistema dall'esterno del cloud (senza VPN). Puoi trovare gli indirizzi IP in Oracle Cloud InfrastructureConsole come indicato di seguito:

    • Cluster VM cloud (nuovo modello di risorse): nella pagina Dettagli cluster VM Exadata, fare clic su Virtual Machine nella lista Risorse.
    • Sistemi DB: nella pagina Dettagli sistema DB, fare clic su Nodi nella lista Risorse.

    I valori vengono visualizzati nelle colonne Indirizzo IP pubblico e Indirizzo IP privato e nome DNS della tabella che visualizzano le Virtual Machine o i nodi dell'istanza dell'infrastruttura Exadata Cloud.

Informazioni sulla connessione a un nodo di calcolo con SSH

È possibile connettersi ai nodi di calcolo in un sistema dell'infrastruttura Exadata Cloud utilizzando una connessione Secure Shell (SSH).

La maggior parte dei sistemi di tipo Unix (inclusi Linux, Oracle Solaris e Apple MacOS) include un client SSH. Per Microsoft Windows, è possibile scaricare un client SSH gratuito denominato PuTTY dal seguente indirizzo: http://www.putty.org

Connessione da un sistema Unix-Style

Per accedere a una virtual machine su un sistema ExaDB-D Oracle da un sistema di tipo Unix che utilizza SSH, attenersi alla procedura riportata di seguito.

  • Immettere il seguente comando SSH per accedere alla virtual machine:
    ssh –i private-key user@node

    Nella sintassi precedente:

    • private-key è il percorso completo e il nome del file che contiene la chiave privata SSH che corrisponde a una chiave pubblica registrata nel sistema.
    • user è l'utente del sistema operativo che si desidera utilizzare per la connessione:
      • Per eseguire operazioni come proprietario del software Oracle Database, connettersi come opc e su oracle. L'utente oracle non dispone dell'accesso utente root alla virtual machine.
      • Per eseguire operazioni che richiedono l'accesso root alla virtual machine, ad esempio l'applicazione di patch, connettersi come opc. L'utente opc può utilizzare il comando sudo -s per ottenere l'accesso root alla virtual machine.
    • node indica il nome host o l'indirizzo IP della virtual machine a cui si desidera accedere.

Connessione a una Virtual Machine da un sistema Microsoft Windows mediante PuTTY

Impara ad accedere a una virtual machine da un sistema Microsoft Windows utilizzando PuTTY.

Prima di iniziare

Prima di utilizzare il programma PuTTY per connettersi a una macchina virtuale, è necessario quanto segue:
  • L'indirizzo IP della virtual machine

  • File della chiave privata SSH che corrisponde alla chiave pubblica associata alla distribuzione. Questo file di chiavi private deve essere in formato PuTTY .ppk. Se il file di chiave privata è stato originariamente creato sulla piattaforma Linux, è possibile utilizzare il programma PuTTYgen per convertirlo nel formato .ppk.

Per connettersi a una macchina virtuale utilizzando il programma PuTTY in Windows:

  1. Scaricare e installare PuTTY.

    Per scaricare PuTTY, andare a http://www.putty.org/ e fare clic sul collegamento È possibile scaricare PuTTY qui.

  2. Eseguire il programma PuTTY (putty.exe).

    Viene visualizzata la finestra Configurazione PuTTY, che mostra il pannello Sessione.

  3. Nel campo Nome host (o indirizzo IP), immettere il nome host o l'indirizzo IP della virtual machine a cui si desidera accedere.
  4. Verificare che l'opzione Tipo di connessione sia impostata su SSH.
  5. Nella struttura ad albero Categoria espandere Connessione, se necessario, quindi fare clic su Dati.

    Viene visualizzato il pannello Dati.

  6. Nel campo Nome utente login automatico, immettere l'utente del sistema operativo che si desidera connettere come:
    1. Connettersi come utente opc per eseguire operazioni che richiedono l'accesso root o oracle alla virtual machine, quali ad esempio l'esecuzione di backup o l'applicazione di patch; questo utente può utilizzare il comando sudo per ottenere l'accesso root o oracle alla VM.
  7. Verificare che l'opzione Quando il nome utente non viene specificato sia impostata su Richiedi.
  8. Nella struttura ad albero Categoria espandere SSH, quindi fare clic su Autore.

    Viene visualizzato il pannello Autore.

  9. Fare clic sul pulsante Sfoglia accanto al campo File di chiavi private per l'autenticazione. Quindi, nella finestra Seleziona file di chiavi private, individuare e aprire il file di chiavi private che corrisponde alla chiave pubblica associata alla distribuzione.
  10. Nella struttura ad albero Categoria fare clic su Sessione.

    Viene visualizzato il pannello Sessione.

  11. Nel campo Sessioni salvate, immettere un nome per la configurazione di connessione. quindi fare clic su Salva.
  12. Fare clic su Apri per aprire la connessione.

    La finestra di configurazione PuTTY si chiude e viene visualizzata la finestra del terminale PuTTY.

    Se questa è la prima volta che ci si connette alla VM, viene visualizzata la finestra Avviso di sicurezza PuTTY, in cui viene richiesto di confermare la chiave pubblica. Fare clic su per continuare la connessione.

Per accedere a un database dopo aver eseguito la connessione al nodo di calcolo

Per connettersi al database, è necessario impostare le informazioni sull'ambiente per il database.

  1. Eseguire il login come opc, quindi utilizzare sudo per connettersi come utente oracle.
    login as: opc
    			
    [opc@<host_name> ~]$ sudo su - oracle
  2. Individuare il file .env del database per impostare l'ambiente.
    
    [oracle@<host_name>]# . <database_name>.env

    Nell'esempio seguente, il nome host è "ed1db01" e il nome del database è "cdb01".

    [oracle@ed1db01]# . cdb01.env
    ORACLE_SID = [root] ? +ASM1
    The Oracle base has been set to /u01/app/grid

Connettersi a Exadata Cloud Infrastructure Service

Scopri come connettersi a un sistema dell'infrastruttura Exadata Cloud utilizzando SSH e come connettersi a un database dell'infrastruttura Exadata Cloud utilizzando Oracle Net Services (SQL*Net).

Connessione a un database con SQL Developer

È possibile connettersi a un database con SQL Developer utilizzando uno dei metodi riportati di seguito.

  • Creare un tunnel SSH temporaneo dal computer al database. Questo metodo fornisce l'accesso solo per la durata del tunnel. Al termine dell'utilizzo del database, assicurarsi di chiudere il tunnel SSH uscendo dalla sessione SSH.
  • Aprire la porta utilizzata come listener SCAN Oracle aggiornando la lista di sicurezza utilizzata per il cluster VM cloud o la risorsa del sistema DB nell'istanza di Exadata Cloud Service. La porta predefinita del listener SCAN è 1521. Questo metodo garantisce un accesso più duraturo al database. Per ulteriori informazioni, vedere Aggiornamento della lista di sicurezza.

Dopo aver creato un tunnel SSH o aperto la porta del listener SCAN come descritto in precedenza, puoi connetterti a un'istanza dell'infrastruttura Exadata Cloud utilizzando gli indirizzi IP SCAN o gli indirizzi IP pubblici, a seconda di come viene impostata la rete e da dove ti stai connettendo. È possibile trovare gli indirizzi IP nella console nella pagina dei dettagli del database.

Connessione a un database con Oracle Net Services

È possibile connettersi alle virtual machine in un sistema di infrastruttura Exadata Cloud utilizzando Oracle Net Services.

Utilizzo di Oracle Net Services per connettersi a un database

Oracle Database Exadata Cloud Infrastructure supporta l'accesso remoto al database utilizzando Oracle Net Services.

Poiché Exadata Cloud Infrastructure utilizza Oracle Grid Infrastructure, è possibile creare connessioni Oracle Net Services utilizzando le connessioni Single Client Access Name (SCAN). SCAN è una funzione che fornisce un meccanismo coerente per consentire ai client di accedere alle istanze di Oracle Database in esecuzione in un cluster.

Per impostazione predefinita, SCAN è associato a tre indirizzi IP virtuali (VIP). Ogni VIP SCAN è inoltre associato a un listener SCAN che fornisce un endpoint di connessione per le connessioni a Oracle Database utilizzando Oracle Net Services. Per massimizzare la disponibilità, Oracle Grid Infrastructure distribuisce i VIP SCAN e i listener SCAN nei nodi cluster disponibili. Inoltre, se si verifica una chiusura o un errore del nodo, viene eseguita automaticamente la migrazione dei VIP SCAN e dei listener SCAN in un nodo rimasto. L'uso delle connessioni SCAN consente di migliorare la capacità dei client Oracle Database di disporre di un set affidabile di endpoint di connessione in grado di servire tutti i database in esecuzione nel cluster.

I listener SCAN si aggiungono ai listener Oracle Net eseguiti su ogni nodo del cluster, noti anche come listener dei nodi. Quando una connessione Oracle Net Services viene eseguita tramite una connessione SCAN, il listener SCAN instrada la connessione a uno dei listener dei nodi e non svolge alcuna ulteriore parte nella connessione. Una combinazione di fattori, tra cui la disponibilità del listener, il posizionamento delle istanze di database e la distribuzione del carico di lavoro, determina quale listener di nodi riceve ogni connessione.

Nota

Questa documentazione fornisce i requisiti di base per la connessione ai database dell'infrastruttura Exadata Cloud utilizzando Oracle Net Services.

Prerequisiti per la connessione a un database con Oracle Net Services

Rivedere i prerequisiti per connettersi a un'istanza di Oracle Database in Oracle ExaDB-D utilizzando Oracle Net Services.

Per connettersi a un'infrastruttura Oracle Database on Exadata Cloud con Oracle Net Services, sono necessari gli elementi riportati di seguito.
  • Gli indirizzi IP dei VIP SCAN o il nome host o l'indirizzo IP di una virtual machine che ospita il database a cui si desidera accedere.
  • L'identificativo di database: l'identificativo di sistema (SID) del database o un nome di servizio.
Connessione a un database mediante SCAN

Per creare una connessione Oracle Net Services utilizzando i listener SCAN, è possibile scegliere tra due approcci.

Identificazione degli indirizzi IP mediante l'SDK o l'interfaccia CLI

È possibile utilizzare l'SDK o l'interfaccia CLI OCI per identificare gli indirizzi IP dei nodi di calcolo dell'infrastruttura Exadata Cloud. È quindi possibile utilizzare gli indirizzi IP per connettersi al sistema.

  1. Utilizzare l'API GetDbNode per restituire i dettagli dell'infrastruttura Exadata ClouddbNode. Prendere nota degli OCID restituiti per i parametri hostIpId e backupIpId del dbNode.
  2. Con gli OCID trovati nei parametri hostIpId e backupIpId, è possibile utilizzare l'interfaccia API GetPrivateIp per ottenere gli indirizzi IP privati utilizzati dalle subnet client e di backup. Per gli indirizzi IP della subnet pubblica, utilizzare l'API GetPublicIpByPrivateIpId.
Connessione a un database mediante un descrittore di connessione che fa riferimento a tutti i VIP SCAN

È possibile impostare un descrittore di connessione per il sistema Oracle Exadata Database Service on Dedicated Infrastructure utilizzando più listener SCAN.

Questo approccio richiede di fornire tutti gli indirizzi VIP (Virtual IP) SCAN (Single Client Access Name) e consente a Oracle Net Services di connettersi a un listener SCAN disponibile.

  1. Utilizzare il seguente modello per definire un alias di Net Services, che in genere viene utilizzato per fornire un nome conveniente per il descrittore di connessione:
    alias-name = (DESCRIPTION=
      (ADDRESS_LIST=
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-1)(PORT=1521))
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-2)(PORT=1521))
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-3)(PORT=1521)))
      (CONNECT_DATA=(sid-or-service-entry)))

    Dove:

    alias-name è il nome utilizzato per identificare l'alias.

    SCAN-VIP-[1–3] sono gli indirizzi IP per i VIP SCAN.

    sid-or-service-entry identifica il SID del database o il nome del servizio utilizzando uno dei seguenti formati:
    • SID=sid-name. Ad esempio: SID=S12C1.
    • SERVICE_NAME=service-name. Ad esempio: SERVICE_NAME=PDB1.example.yourcloud.com.
    Nota

    Per impostazione predefinita, Oracle Net Services seleziona in modo casuale uno degli indirizzi nella lista di indirizzi per bilanciare il carico tra i listener SCAN.

Connessione a un database Utilizzare un descrittore di connessione che fa riferimento a un nome SCAN personalizzato

È possibile impostare un descrittore di connessione per il sistema Oracle Exadata Database Service on Dedicated Infrastructure utilizzando un nome SCAN personalizzato.

Utilizzando questo approccio, si definisce un nome SCAN (Single Client Access Name) personalizzato nel server dei nomi di dominio (DNS), che viene risolto nei tre indirizzi IP virtuali SCAN (VIP).

  1. Utilizzare il seguente modello per definire un alias di Net Services che faccia riferimento al nome SCAN personalizzato:
    alias-name = (DESCRIPTION=
      (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=scan-name)(PORT=1521)))
      (CONNECT_DATA=(sid-or-service-entry)))

    Dove:

    alias-name è il nome utilizzato per identificare l'alias.

    scan-name è il nome SCAN personalizzato.

    sid-or-service-entry identifica il SID del database o il nome del servizio utilizzando uno dei seguenti formati:
    • SID=sid-name. Ad esempio: SID=S12C1.
    • SERVICE_NAME=service-name. Ad esempio: SERVICE_NAME=PDB1.example.yourcloud.com.
    In alternativa, è possibile utilizzare il metodo di connessione semplice per specificare un descrittore di connessione con il formato seguente:
    scan-name:1521/sid-or-service-entry
    Ad esempio:
    exa1scan.example.com:1521/S12C1
    O
    exa1scan.example.com:1521/PDB1.example.yourcloud.com
Connessione a un database mediante un listener di nodi

Per connettersi a un'istanza di Oracle Database nell'infrastruttura Exadata Cloud con un descrittore di connessione che ignora i listener SCAN, utilizzare questa procedura per instradare la connessione direttamente a un listener dei nodi.

Utilizzando questo metodo, si rinuncia all'alta disponibilità e al bilanciamento del carico forniti da SCAN. Tuttavia, questo metodo potrebbe essere auspicabile se si desidera indirizzare le connessioni a un nodo o a un'interfaccia di rete specifica. Ad esempio, è possibile assicurarsi che le connessioni da un programma che esegue il caricamento di massa dei dati utilizzino la rete di backup.

Questo approccio consente di indirizzare la connessione utilizzando il nome host o l'indirizzo IP del nodo.

Esempio 5-1 Definizione di un alias di servizio di rete che fa riferimento direttamente al nodo

alias-name = (DESCRIPTION=
  (CONNECT_TIMEOUT=timeout)					
  (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=node)(PORT=1521)))
  (CONNECT_DATA=(sid-or-service-entry)))

Dove:

alias-name è il nome utilizzato per identificare l'alias.

timeout specifica un periodo di timeout (in secondi), che consente di terminare un tentativo di connessione senza dover attendere un timeout TCP. Il parametro (CONNECT_TIMEOUT=timeout) è facoltativo.

node è il nome host o l'indirizzo IP della virtual machine che si desidera utilizzare.

sid-or-service-entry identifica il SID del database o il nome del servizio utilizzando uno dei seguenti formati:
  • SID=sid-name. Ad esempio, SID=S12C1.
  • SERVICE_NAME=service-name. Ad esempio, SERVICE_NAME=PDB1.example.oraclecloudatcust.com.
In alternativa, è possibile utilizzare il metodo di connessione semplice per specificare un descrittore di connessione con il formato seguente:
node:1521/sid-or-service-entry
Ad esempio:
exa1node01.example.com:1521/S12C1
oppure
exa1node01.example.com:1521/PDB1.example.oraclecloudatcust.com