Skip to main content
NetApp Solutions
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Procedure di implementazione Oracle dettagliate su Azure VM e Azure NetApp Files

Collaboratori

In questa sezione vengono descritte le procedure di implementazione del database personalizzato Oracle RDS con lo storage FSX.

Implementare una macchina virtuale Azure con ANF per Oracle tramite la console del portale Azure

Se non hai ancora utilizzato Azure, devi prima configurare un ambiente di account Azure. Ciò include la registrazione dell'organizzazione per l'utilizzo di Azure Active Directory. La sezione seguente è un riepilogo di questi passaggi. Per ulteriori informazioni, consulta la documentazione specifica di Linked Azure.

Creare e utilizzare risorse Azure

Una volta configurato l'ambiente Azure e creato un account associato a un abbonamento, è possibile accedere al portale Azure con l'account per creare le risorse necessarie per eseguire Oracle.

1. Creare una rete virtuale o VNET

Azure Virtual Network (VNET) è l'elemento fondamentale della tua rete privata in Azure. VNET consente a molti tipi di risorse Azure, come le macchine virtuali Azure (VM), di comunicare in modo sicuro tra loro, Internet e reti on-premise. Prima di eseguire il provisioning di una macchina virtuale Azure, è necessario configurare una VNET (in cui viene implementata una macchina virtuale).

2. Creare un account di storage NetApp e un pool di capacità per ANF

In questo scenario di implementazione, il provisioning di un sistema operativo Azure VM viene eseguito utilizzando il normale storage Azure, ma i volumi ANF vengono forniti per eseguire il database Oracle tramite NFS. Innanzitutto, è necessario creare un account di storage NetApp e un pool di capacità per ospitare i volumi di storage.

Vedere "Configurare Azure NetApp Files e creare un volume NFS" Per impostare un pool di capacità ANF.

3. Provisioning di Azure VM per Oracle

In base al carico di lavoro, determinare il tipo di Azure VM necessario e le dimensioni della VM vCPU e della RAM da implementare per Oracle. Quindi, dalla console di Azure, fare clic sull'icona della macchina virtuale per avviare il flusso di lavoro di implementazione della macchina virtuale.

  1. Dalla pagina di Azure VM, fare clic su Create, quindi scegliere Azure virtual machine.

    Questa schermata mostra l'elenco delle macchine virtuali Azure disponibili.

  2. Scegliere l'ID di abbonamento per l'implementazione, quindi scegliere il gruppo di risorse, la regione, il nome host, l'immagine della macchina virtuale, le dimensioni, e metodo di autenticazione. Accedere alla pagina disco.

    Questa schermata mostra l'input per la pagina Create a Virtual Machine (Crea una macchina virtuale). Questa schermata mostra l'input aggiuntivo per la pagina Create a Virtual Machine (Crea una macchina virtuale).

  3. Scegliere SSD premium per la ridondanza locale del sistema operativo e lasciare vuoto il disco dati perché i dischi dati sono montati dallo storage ANF. Accedere alla pagina rete.

    Questa schermata mostra l'input per la pagina Create a Virtual Machine Disks (Crea dischi macchina virtuale).

  4. Scegliere VNET e subnet. Assegnare un IP pubblico per l'accesso alle macchine virtuali esterne. Quindi andare alla pagina Management (Gestione).

    Questa schermata mostra ulteriori input per la pagina Create a Virtual Machine (Crea una macchina virtuale).

  5. Mantenere tutte le impostazioni predefinite per la gestione e passare alla pagina Avanzate.

    Questa schermata mostra l'input per la pagina Create a Virtual Machine Management (Crea una macchina virtuale).

  6. Mantenere tutte le impostazioni predefinite per la pagina Advanced (Avanzate), a meno che non sia necessario personalizzare una macchina virtuale dopo la distribuzione con script personalizzati. Quindi andare alla pagina Tag.

    Questa schermata mostra l'input per la pagina Create a Virtual Machine Advanced (Crea una macchina virtuale avanzata).

  7. Aggiungere un tag per la macchina virtuale, se lo si desidera. Quindi, accedere alla pagina Review + create (Rivedi e crea).

    Questa schermata mostra l'input per la pagina Create a Virtual Machine Tags (Crea tag macchina virtuale).

  8. Il flusso di lavoro di implementazione esegue una convalida sulla configurazione e, se la convalida ha esito positivo, fare clic su Create (Crea) per creare la macchina virtuale.

    Questa schermata mostra l'input per la pagina di revisione e creazione di una macchina virtuale

4. Provisioning di volumi di database ANF per Oracle

È necessario creare tre volumi NFS per un pool di capacità ANF rispettivamente per i volumi binari, dati e log Oracle.

  1. Dalla console Azure, sotto l'elenco dei servizi Azure, fare clic su Azure NetApp Files (Apri) per aprire un flusso di lavoro per la creazione di un volume. Se si dispone di più account storage ANF, fare clic sull'account da cui si desidera eseguire il provisioning dei volumi.

    Questa schermata mostra la pagina Azure Services, con ANF evidenziato.

  2. Nell'account storage NetApp, fare clic su Volumes, quindi su Add volume per creare nuovi volumi Oracle.

    Questa schermata mostra la schermata iniziale di un account storage NetApp. Questa schermata mostra i volumi disponibili per l'account storage NetApp.

  3. Come buona pratica, identificare i volumi Oracle con il nome host della macchina virtuale come prefisso e quindi il punto di montaggio sull'host, come u01 per il binario Oracle, u02 per i dati Oracle e u03 per il registro Oracle. Scegliere lo stesso VNET per il volume della macchina virtuale. Fare clic su Avanti: Protocollo>.

    Schermata di creazione del volume.

  4. Scegliere il protocollo NFS, aggiungere l'indirizzo IP dell'host Oracle al client consentito e rimuovere il criterio predefinito che consente l'accesso a tutti gli indirizzi IP 0.0.0.0/0. Quindi fare clic su Avanti: Tag>.

    Protocol input (immissione protocollo) nella schermata Volume Creation (creazione volume).

  5. Aggiungere un tag di volume, se lo si desidera. Quindi fare clic su Review + Create> (Rivedi + Crea).

    Immissione dei tag nella schermata Volume Creation (creazione volume).

  6. Se la convalida ha esito positivo, fare clic su Create (Crea) per creare il volume.

    Esaminare e creare la fase della schermata Volume Creation (creazione volume).

Installare e configurare Oracle su Azure VM con ANF

Il team delle soluzioni NetApp ha creato molti toolkit di automazione basati su Ansible per aiutarti a implementare Oracle in Azure senza problemi. Seguire questi passaggi per implementare Oracle su una macchina virtuale Azure.

Configurare un controller Ansible

Se non è stato configurato un controller Ansible, vedere "Automazione delle soluzioni NetApp", Che contiene istruzioni dettagliate su come configurare un controller Ansible.

Ottieni il toolkit per l'automazione dell'implementazione Oracle

Clonare una copia del toolkit di implementazione Oracle nella home directory con l'ID utente utilizzato per accedere al controller Ansible.

git clone https://github.com/NetApp-Automation/na_oracle19c_deploy.git

Eseguire il toolkit con la configurazione

Vedere "Implementazione CLI Database Oracle 19c" Per eseguire il manuale con la CLI. È possibile ignorare la parte ONTAP della configurazione delle variabili nel file VAR globale quando si creano volumi di database dalla console Azure anziché dalla CLI.

Nota Il toolkit predefinito implementa Oracle 19c con RU 19.8. Può essere facilmente adattato a qualsiasi altro livello di patch con lievi modifiche di configurazione predefinite. Inoltre, i file di log attivi predefiniti del database seme vengono implementati nel volume di dati. Se sono necessari file di log attivi sul volume di log, è necessario riallocarli dopo la distribuzione iniziale. Se necessario, contatta il team delle soluzioni NetApp.

Configura lo strumento di backup AzAcSnap per snapshot coerenti con l'applicazione per Oracle

Azure Application-coerenti Snapshot Tool (AzAcSnap) è uno strumento a riga di comando che consente la protezione dei dati per database di terze parti gestendo tutte le orchestrazione necessarie per inserirli in uno stato coerente con l'applicazione prima di eseguire uno snapshot di storage. Quindi, riporta questi database a uno stato operativo. NetApp consiglia di installare lo strumento sull'host del server di database. Consultare le seguenti procedure di installazione e configurazione.

Installare lo strumento AzAcSnap

  1. Scarica la versione più recente di "Il programma di installazione di AzArcSnap".

  2. Copiare il programma di installazione automatica scaricato nel sistema di destinazione.

  3. Eseguire il programma di installazione automatica come utente root con l'opzione di installazione predefinita. Se necessario, rendere il file eseguibile utilizzando chmod +x *.run comando.

     ./azacsnap_installer_v5.0.run -I

Configurare la connettività Oracle

Gli strumenti di snapshot comunicano con il database Oracle e richiedono un utente del database con le autorizzazioni appropriate per attivare o disattivare la modalità di backup.

1. Configurare l'utente del database AzAcSnap

Gli esempi seguenti mostrano la configurazione dell'utente del database Oracle e l'utilizzo di sqlplus per la comunicazione con il database Oracle. I comandi di esempio configurano un utente (AZACSNAP) nel database Oracle e modificano l'indirizzo IP, i nomi utente e le password in base alle esigenze.

  1. Dall'installazione del database Oracle, avviare sqlplus per accedere al database.

    su – oracle
    sqlplus / AS SYSDBA
  2. Creare l'utente.

    CREATE USER azacsnap IDENTIFIED BY password;
  3. Concedere le autorizzazioni dell'utente. In questo esempio viene impostata l'autorizzazione per l'utente AZACSNAP per attivare la modalità di backup del database.

    GRANT CREATE SESSION TO azacsnap;
    GRANT SYSBACKUP TO azacsnap;
  4. Impostare la scadenza predefinita della password dell'utente su Unlimited.

    ALTER PROFILE default LIMIT PASSWORD_LIFE_TIME unlimited;
  5. Convalidare la connettività azacsnap per il database.

    connect azacsnap/password
    quit;

2. Configurare azacsnap utente Linux per l'accesso DB con Oracle wallet

L'installazione predefinita di AzAcSnap crea un utente del sistema operativo azacsnap. Il suo ambiente shell Bash deve essere configurato per l'accesso al database Oracle con la password memorizzata in un portafoglio Oracle.

  1. Come utente root, eseguire cat /etc/oratab Per identificare le variabili ORACLE_HOME e ORACLE_SID sull'host.

    cat /etc/oratab
  2. Aggiungere LE variabili ORACLE_HOME, ORACLE_SID, TNS_ADMIN e PATH al profilo bash dell'utente azacsnap. Modificare le variabili in base alle necessità.

    echo "export ORACLE_SID=ORATEST" >> /home/azacsnap/.bash_profile
    echo "export ORACLE_HOME=/u01/app/oracle/product/19800/ORATST" >> /home/azacsnap/.bash_profile
    echo "export TNS_ADMIN=/home/azacsnap" >> /home/azacsnap/.bash_profile
    echo "export PATH=\$PATH:\$ORACLE_HOME/bin" >> /home/azacsnap/.bash_profile
  3. Come utente Linux azacsnap, creare il portafoglio. Viene richiesta la password del portafoglio.

    sudo su - azacsnap
    
    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -create
  4. Aggiungere le credenziali della stringa di connessione a Oracle Wallet. Nel seguente comando di esempio, AZACSNAP è la ConnectString utilizzata da AzAcSnap, azacsnap è l'utente database Oracle e AzPasswd1 è la password database dell'utente Oracle. Viene nuovamente richiesta la password del portafoglio.

    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -createCredential AZACSNAP azacsnap AzPasswd1
  5. Creare il tnsnames-ora file. Nel seguente comando di esempio, L'HOST deve essere impostato sull'indirizzo IP del database Oracle e il SID del server deve essere impostato sul SID del database Oracle.

    echo "# Connection string
    AZACSNAP=\"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.30.137.142)(PORT=1521))(CONNECT_DATA=(SID=ORATST)))\"
    " > $TNS_ADMIN/tnsnames.ora
  6. Creare il sqlnet.ora file.

    echo "SQLNET.WALLET_OVERRIDE = TRUE
    WALLET_LOCATION=(
        SOURCE=(METHOD=FILE)
        (METHOD_DATA=(DIRECTORY=\$TNS_ADMIN/.oracle_wallet))
    ) " > $TNS_ADMIN/sqlnet.ora
  7. Verificare l'accesso Oracle utilizzando il portafoglio.

    sqlplus /@AZACSNAP as SYSBACKUP

    L'output previsto dal comando:

    [azacsnap@acao-ora01 ~]$ sqlplus /@AZACSNAP as SYSBACKUP
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 8 18:02:07 2022
    Version 19.8.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.8.0.0.0
    
    SQL>

Configurare la connettività ANF

Questa sezione spiega come abilitare la comunicazione con Azure NetApp Files (con una macchina virtuale).

  1. All'interno di una sessione di Azure Cloud Shell, assicurarsi di aver effettuato l'accesso all'abbonamento che si desidera associare all'entità del servizio per impostazione predefinita.

    az account show
  2. Se l'abbonamento non è corretto, utilizzare il seguente comando:

    az account set -s <subscription name or id>
  3. Creare un'entità di servizio utilizzando la CLI di Azure come nell'esempio seguente:

    az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth

    Output previsto:

    {
      "clientId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "clientSecret": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "subscriptionId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "tenantId": "00aa000a-aaaa-0000-00a0-00aa000aaa0a",
      "activeDirectoryEndpointUrl": "https://login.microsoftonline.com",
      "resourceManagerEndpointUrl": "https://management.azure.com/",
      "activeDirectoryGraphResourceId": "https://graph.windows.net/",
      "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/",
      "galleryEndpointUrl": "https://gallery.azure.com/",
      "managementEndpointUrl": "https://management.core.windows.net/"
    }
  4. Tagliare e incollare il contenuto di output in un file chiamato oracle.json Memorizzato nella directory utente di Linux azacsnap user bin e sicuro il file con le autorizzazioni di sistema appropriate.

Nota Assicurarsi che il formato del file JSON sia esattamente come descritto sopra, in particolare con gli URL racchiusi tra virgolette doppie (").

Completare la configurazione dello strumento AzAcSnap

Per configurare e testare gli strumenti di snapshot, procedere come segue. Dopo aver eseguito correttamente i test, è possibile eseguire la prima snapshot di storage coerente con il database.

  1. Passare all'account utente di Snapshot.

    su - azacsnap
  2. Modificare la posizione dei comandi.

    cd /home/azacsnap/bin/
  3. Configurare un file di dettagli per il backup dello storage. In questo modo viene creato un azacsnap.json file di configurazione.

    azacsnap -c configure –-configuration new

    L'output previsto con tre volumi Oracle:

    [azacsnap@acao-ora01 bin]$ azacsnap -c configure --configuration new
    Building new config file
    Add comment to config file (blank entry to exit adding comments): Oracle snapshot bkup
    Add comment to config file (blank entry to exit adding comments):
    Enter the database type to add, 'hana', 'oracle', or 'exit' (for no database): oracle
    
    === Add Oracle Database details ===
    Oracle Database SID (e.g. CDB1): ORATST
    Database Server's Address (hostname or IP address): 172.30.137.142
    Oracle connect string (e.g. /@AZACSNAP): /@AZACSNAP
    
    === Azure NetApp Files Storage details ===
    Are you using Azure NetApp Files for the database? (y/n) [n]: y
    --- DATA Volumes have the Application put into a consistent state before they are snapshot ---
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u01
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u02
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to DATA Volume section of Database configuration? (y/n) [n]: n
    --- OTHER Volumes are snapshot immediately without preparing any application for snapshot ---
    Add Azure NetApp Files resource to OTHER Volume section of Database configuration? (y/n) [n]: y
    Full Azure NetApp Files Storage Volume Resource ID (e.g. /subscriptions/.../resourceGroups/.../providers/Microsoft.NetApp/netAppAccounts/.../capacityPools/Premium/volumes/...): /subscriptions/0efa2dfb-917c-4497-b56a-b3f4eadb8111/resourceGroups/ANFAVSRG/providers/Microsoft.NetApp/netAppAccounts/ANFAVSAcct/capacityPools/CapPool/volumes/acao-ora01-u03
    Service Principal Authentication filename or Azure Key Vault Resource ID (e.g. auth-file.json or https://...): oracle.json
    Add Azure NetApp Files resource to OTHER Volume section of Database configuration? (y/n) [n]: n
    
    === Azure Managed Disk details ===
    Are you using Azure Managed Disks for the database? (y/n) [n]: n
    
    === Azure Large Instance (Bare Metal) Storage details ===
    Are you using Azure Large Instance (Bare Metal) for the database? (y/n) [n]: n
    
    Enter the database type to add, 'hana', 'oracle', or 'exit' (for no database): exit
    
    Editing configuration complete, writing output to 'azacsnap.json'.
  4. In qualità di utente di azacsnap Linux, eseguire il comando di test azacsnap per un backup Oracle.

    cd ~/bin
    azacsnap -c test --test oracle --configfile azacsnap.json

    Output previsto:

    [azacsnap@acao-ora01 bin]$ azacsnap -c test --test oracle --configfile azacsnap.json
    BEGIN : Test process started for 'oracle'
    BEGIN : Oracle DB tests
    PASSED: Successful connectivity to Oracle DB version 1908000000
    END   : Test process complete for 'oracle'
    [azacsnap@acao-ora01 bin]$
  5. Eseguire il primo backup dello snapshot.

    azacsnap -c backup –-volume data --prefix ora_test --retention=1