Skip to main content
NetApp Solutions
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Procédures détaillées de déploiement d'Oracle sur Azure VM et Azure NetApp Files

Contributeurs

Cette section décrit les procédures de déploiement de la base de données personnalisée Oracle RDS avec un système de stockage FSX.

Déployez une machine virtuelle Azure avec ANF pour Oracle via la console du portail Azure

Si vous découvrez Azure, vous devez d'abord configurer un environnement de compte Azure. Vous pouvez notamment inscrire votre entreprise à l'utilisation d'Azure Active Directory. La section suivante récapitule ces étapes. Pour plus d'informations, consultez la documentation liée spécifique à Azure.

Créez et utilisez les ressources Azure

Une fois votre environnement Azure configuré et qu'un compte est créé et associé à un abonnement, vous pouvez vous connecter au portail Azure avec le compte pour créer les ressources nécessaires à l'exécution d'Oracle.

1. Créez un réseau virtuel ou un réseau virtuel

Azure Virtual Network (vnet) est l'élément de base fondamental de votre réseau privé sur Azure. Vnet permet la communication de nombreux types de ressources Azure, notamment les machines virtuelles Azure, avec Internet et les réseaux sur site, en toute sécurité. Avant de provisionner une machine virtuelle Azure, vous devez d'abord configurer un vnet (où une machine virtuelle est déployée).

2. Créez un compte de stockage NetApp et un pool de capacité pour ANF

Dans ce scénario de déploiement, un système d'exploitation de machine virtuelle Azure est provisionné à l'aide d'un stockage Azure standard, mais les volumes ANF sont provisionnés pour exécuter la base de données Oracle via NFS. Tout d'abord, il faut créer un compte de stockage NetApp et un pool de capacité pour héberger les volumes de stockage.

Voir "Configurez Azure NetApp Files et créez un volume NFS" Pour configurer un pool de capacité ANF.

3. Provisionnement d'Azure VM pour Oracle

En fonction du workload, déterminez le type de machine virtuelle Azure dont vous avez besoin, ainsi que la taille du processeur virtuel et de la mémoire RAM à déployer pour Oracle. Depuis la console Azure, cliquez sur l'icône de machine virtuelle pour lancer le workflow de déploiement de machine virtuelle.

  1. Sur la page VM Azure, cliquez sur Créer, puis choisissez machine virtuelle Azure.

    Cette capture d'écran affiche la liste des machines virtuelles Azure disponibles.

  2. Choisissez l'ID d'abonnement pour le déploiement, puis choisissez le groupe de ressources, la région, le nom d'hôte, l'image de la machine virtuelle, la taille, et la méthode d'authentification. Accédez à la page disque.

    Cette capture d'écran montre les données saisies pour la page Créer une machine virtuelle. Cette capture d'écran affiche des informations supplémentaires pour la page Créer une machine virtuelle.

  3. Choisissez Premium SSD pour la redondance locale du système d'exploitation et laissez le disque de données vide car les disques de données sont montés depuis le stockage ANF. Accédez à la page réseau.

    Cette capture d'écran montre les données saisies pour la page Créer des disques de machine virtuelle.

  4. Choisissez le vnet et le sous-réseau. Allouez une IP publique pour l'accès à un serveur virtuel externe. Ensuite, accédez à la page gestion.

    Cette capture d'écran affiche des informations supplémentaires pour la page Créer une machine virtuelle.

  5. Conservez toutes les valeurs par défaut pour la gestion et passez à la page Avancé.

    Cette capture d'écran montre les données saisies pour la page Créer une gestion de machine virtuelle.

  6. Conservez toutes les valeurs par défaut de la page Avancé, sauf si vous avez besoin de personnaliser une machine virtuelle après un déploiement avec des scripts personnalisés. Ensuite, accédez à la page balises.

    Cette capture d'écran montre les données saisies pour la page Créer une machine virtuelle avancée.

  7. Ajoutez une balise pour la machine virtuelle si vous le souhaitez. Ensuite, accédez à la page révision + création.

    Cette capture d'écran montre les données saisies pour la page Créer une étiquette de machine virtuelle.

  8. Le flux de travail de déploiement exécute une validation sur la configuration et, si la validation réussit, cliquez sur Create pour créer la VM.

    « Cette capture d'écran montre les données saisies pour la page Créer une machine virtuelle de révision et de création ».

4. Provisionnement de volumes de base de données ANF pour Oracle

Vous devez créer trois volumes NFS pour un pool de capacité ANF pour les volumes binaires, de données et de journaux Oracle respectivement.

  1. Dans la console Azure, sous la liste des services Azure, cliquez sur Azure NetApp Files pour ouvrir un workflow de création de volumes. Si vous disposez de plusieurs comptes de stockage ANF, cliquez sur le compte à partir duquel vous souhaitez provisionner des volumes.

    Cette capture d'écran présente la page des services Azure avec la fonctionnalité ANF mise en surbrillance.

  2. Sous votre compte de stockage NetApp, cliquez sur volumes, puis sur Add volume pour créer de nouveaux volumes Oracle.

    Cette capture d'écran affiche l'écran d'accueil d'un compte de stockage NetApp. Cette capture d'écran montre les volumes disponibles pour le compte de stockage NetApp.

  3. Il est conseillé d'identifier les volumes Oracle dont le nom d'hôte de la machine virtuelle est préfixe, puis le point de montage sur l'hôte, par exemple u01 pour le binaire Oracle, u02 pour les données Oracle et u03 pour le journal Oracle. Choisissez le même vnet pour le volume que pour la machine virtuelle. Cliquez sur Suivant : Protocole>.

    Écran de création de volume.

  4. Choisissez le protocole NFS, ajoutez l'adresse IP de l'hôte Oracle au client autorisé et supprimez la stratégie par défaut qui autorise toutes les adresses IP 0.0.0.0/0. Cliquez ensuite sur Suivant : balises>.

    Entrée de protocole sur l'écran de création de volume.

  5. Ajoutez une balise de volume si vous le souhaitez. Cliquez ensuite sur Revue + Créer>.

    Saisie de balises sur l'écran de création de volume.

  6. Si la validation réussit, cliquez sur Créer pour créer le volume.

    Passer en revue et créer l'étape de l'écran de création de volume.

Installez et configurez Oracle sur Azure VM avec ANF

L'équipe NetApp a créé de nombreux kits d'automatisation basés sur Ansible afin de vous aider à déployer Oracle sur Azure de façon fluide. Suivez ces étapes pour déployer Oracle sur une machine virtuelle Azure.

Configurez un contrôleur Ansible

Si vous n'avez pas configuré de contrôleur Ansible, reportez-vous à la section "Automatisation des solutions NetApp", Qui contient des instructions détaillées sur la configuration d'un contrôleur Ansible.

Kit d'automatisation du déploiement Oracle

Cloner une copie du kit de déploiement Oracle dans votre répertoire local sous l'ID utilisateur que vous utilisez pour vous connecter au contrôleur Ansible.

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

Exécuter le kit d'outils avec votre configuration

Voir la "Déploiement de la base de données Oracle 19c par CLI" Pour exécuter le manuel de vente avec l'interface de ligne de commande. Vous pouvez ignorer la partie ONTAP de la configuration des variables dans le fichier global VARS lorsque vous créez des volumes de base de données à partir de la console Azure plutôt que de l'interface de ligne de commande.

Remarque Le kit d'outils par défaut déploie Oracle 19c avec RU 19.8. Il peut être facilement adapté à n'importe quel autre niveau de patch avec des modifications mineures de configuration par défaut. Les fichiers journaux actifs par défaut de la base de données d'origine sont également déployés dans le volume de données. Si vous avez besoin de fichiers journaux actifs sur le volume du journal, il doit être déplacé après le déploiement initial. Demandez de l'aide à l'équipe NetApp solution si nécessaire.

Configurez l'outil de sauvegarde AzAcSnap pour les snapshots cohérents avec les applications pour Oracle

Azure application Snapshot Tool (AzAcSnap) est un outil de ligne de commandes qui protège les données des bases de données tierces en gérant toute l'orchestration requise pour les placer dans un état cohérent avec les applications avant de créer une copie Snapshot de stockage. Il renvoie ensuite ces bases de données à un état opérationnel. NetApp recommande d'installer l'outil sur le serveur de base de données hôte. Voir les procédures d'installation et de configuration suivantes.

Installer l'outil AzAcSnap

  1. Obtenir la version la plus récente du "Le programme d'installation AzArcSnap".

  2. Copiez le programme d'installation automatique téléchargé sur le système cible.

  3. Exécutez le programme d'installation automatique en tant qu'utilisateur racine avec l'option d'installation par défaut. Si nécessaire, rendre le fichier exécutable à l'aide de chmod +x *.run commande.

     ./azacsnap_installer_v5.0.run -I

Configurez la connectivité Oracle

Les outils de snapshot communiquent avec la base de données Oracle et ont besoin d'un utilisateur de base de données disposant des autorisations appropriées pour activer ou désactiver le mode de sauvegarde.

1. Configurez l'utilisateur de la base de données AzAcSnap

Les exemples suivants illustrent la configuration de l’utilisateur de la base de données Oracle et l’utilisation de sqlplus pour la communication avec la base de données Oracle. Les commandes exemple configurent un utilisateur (AZACSLAP) dans la base de données Oracle et modifient l'adresse IP, les noms d'utilisateur et les mots de passe selon les besoins.

  1. À partir de l'installation de la base de données Oracle, lancez sqlplus pour vous connecter à la base de données.

    su – oracle
    sqlplus / AS SYSDBA
  2. Créez l'utilisateur.

    CREATE USER azacsnap IDENTIFIED BY password;
  3. Accordez les autorisations utilisateur. Cet exemple définit l'autorisation pour l'utilisateur AZACSLAP de mettre la base de données en mode de sauvegarde.

    GRANT CREATE SESSION TO azacsnap;
    GRANT SYSBACKUP TO azacsnap;
  4. Modifier l'expiration du mot de passe de l'utilisateur par défaut sur illimité.

    ALTER PROFILE default LIMIT PASSWORD_LIFE_TIME unlimited;
  5. Valider la connectivité azacsnap pour la base de données.

    connect azacsnap/password
    quit;

2. Configurez azacsnap Linux-utilisateur pour l'accès à la base de données avec le portefeuille Oracle

L'installation par défaut d'AzAcSnap crée un utilisateur azacsnap OS. L'environnement Bash Shell doit être configuré pour l'accès à la base de données Oracle avec le mot de passe stocké dans un portefeuille Oracle.

  1. En tant qu'utilisateur root, exécutez le cat /etc/oratab Commande permettant d'identifier les variables ORACLE_HOME et ORACLE_SID sur l'hôte.

    cat /etc/oratab
  2. Ajoutez ORACLE_HOME, ORACLE_SID, TNS_ADMIN et les variables DE CHEMIN au profil bash de l'utilisateur azacsnap. Modifiez les variables selon vos besoins.

    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. En tant qu'utilisateur Linux azacsnap, créez le portefeuille. Vous êtes invité à saisir le mot de passe du porte-monnaie.

    sudo su - azacsnap
    
    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -create
  4. Ajoutez les informations d'identification de la chaîne de connexion à Oracle Wallet. Dans l'exemple de commande suivant, AZACSLAP est le ConnectString à utiliser par AzAcSnap, azacsnap est l'utilisateur Oracle Database, et AzPasswd1 est le mot de passe de la base de données de l'utilisateur Oracle. Vous êtes à nouveau invité à saisir le mot de passe du porte-monnaie.

    mkstore -wrl $TNS_ADMIN/.oracle_wallet/ -createCredential AZACSNAP azacsnap AzPasswd1
  5. Créer le tnsnames-ora fichier. Dans l'exemple de commande suivant, L'HÔTE doit être défini sur l'adresse IP de la base de données Oracle et le SID du serveur doit être défini sur le SID de la base de données 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. Créer le sqlnet.ora fichier.

    echo "SQLNET.WALLET_OVERRIDE = TRUE
    WALLET_LOCATION=(
        SOURCE=(METHOD=FILE)
        (METHOD_DATA=(DIRECTORY=\$TNS_ADMIN/.oracle_wallet))
    ) " > $TNS_ADMIN/sqlnet.ora
  7. Testez l'accès Oracle à l'aide du portefeuille.

    sqlplus /@AZACSNAP as SYSBACKUP

    Le résultat attendu de la commande :

    [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>

Configurez la connectivité ANF

Cette section explique comment activer la communication avec Azure NetApp Files (avec une VM).

  1. Dans une session Azure Cloud Shell, assurez-vous d'être connecté à l'abonnement que vous souhaitez associer par défaut au principal de service.

    az account show
  2. Si l'abonnement est incorrect, utilisez la commande suivante :

    az account set -s <subscription name or id>
  3. Créez un service principal en utilisant l'interface de ligne de commandes Azure, comme dans l'exemple suivant :

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

    Résultat attendu :

    {
      "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. Coupez et collez le contenu de sortie dans un fichier appelé oracle.json Stocké dans le répertoire bin de l'utilisateur Linux azacsnap et sécurisez le fichier avec les autorisations système appropriées.

Remarque Assurez-vous que le format du fichier JSON est exactement comme décrit ci-dessus, en particulier avec les URL placées en guillemets doubles (").

Terminez la configuration de l'outil AzAcSnap

Procédez comme suit pour configurer et tester les outils de snapshot. Une fois les tests réussis, vous pouvez effectuer le premier snapshot de stockage cohérent pour les bases de données.

  1. Passez au compte utilisateur de snapshot.

    su - azacsnap
  2. Modifier l'emplacement des commandes.

    cd /home/azacsnap/bin/
  3. Configurer un fichier de détails de sauvegarde de stockage. Cela crée un azacsnap.json fichier de configuration.

    azacsnap -c configure –-configuration new

    Résultat attendu avec trois volumes 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. En tant qu'utilisateur azacsnap Linux, exécutez la commande azacsnap test pour une sauvegarde Oracle.

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

    Résultat attendu :

    [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. Exécutez votre première sauvegarde snapshot.

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