Cet article est le deuxième d'une série d'articles sur l'installation d'Oracle RAC 19c sous virtualbox, à des fins de test.
Ce deuxième article traite de l'installation des logiciels :
L'installation se fera par la méthode "Image-Based Installation". Cette méthode comporte deux phases :
Copier la distribution des binaires d'Oracle GI (Grid Infrastructure) sur la VM rac1 uniquement.
# rac1 uniquement ls -l /distrib/LINUX.X64_193000_grid_home.zip -rw-r--r--. 1 root root 2889184573 25 mai 23:17 /distrib/LINUX.X64_193000_grid_home.zip |
Dézipper l'image avec le compte grid dans son ORACLE_HOME :
# rac1 uniquement su - grid cd $ORACLE_HOME pwd /u01/app/19.3.0/grid unzip -q /distrib/LINUX.X64_193000_grid_home.zip |
Effectuer les actions suivantes sur chaque noeud afin de pallier au bug référencé DOC ID 2555697.1.
# rac1 et rac2 su - root mv /usr/bin/scp /usr/bin/scp.orig echo "/usr/bin/scp.orig -T \$*" > /usr/bin/scp chmod 755 /usr/bin/scp |
Installer cvuqdisk sur chaque noeud :
# rac1 su - root cp /u01/app/19.3.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm /tmp scp /u01/app/19.3.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm rac2:/tmp # rac1 et rac2 su - root export CVUQDISK_GRP=oinstall cd /tmp rpm -iv cvuqdisk-1.0.10-1.rpm |
Lancer le script $ORACLE_HOME/gridSetup.sh en environnement graphique.
On pourra utiliser par exemple Cygwin XServer pour émuler la partie X11.
Dans une fenêtre XTerm :
# rac1 uniquement ssh -X -Y grid@192.168.56.11 echo $DISPLAY localhost:10.0 id uid=500(grid) gid=500(oinstall) groupes=500(oinstall),501(dba) contexte=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 echo $ORACLE_BASE /u01/app/grid echo $ORACLE_HOME /u01/app/19.3.0/grid export CV_ASSUME_DISTID=OEL7.6 cd $ORACLE_HOME pwd /u01/app/19.3.0/grid ./gridSetup.sh |
Choisir "Configurer Oracle Grid pour un nouveau cluster"

Choisir "Configurer un cluster autonome Oracle"

Choisir les caractéristiques du cluster :
Nom du cluster : rac-cluster
Nom scan : rac-scan
Port scan : 1521

Clique sur "Ajouter" pour ajouter un noeud au cluster

Renseigner les adresses du neoud : rac2, rac2-vip

Avec les 2 noeuds du cluster, cliquer sur "Connectivité SSH".
Cocher la case d'utilisation des clés et activer le bouton "Tester" afin de validé la connectivité.

Une fois la connectivité confirmée, faire Ok puis Suivant.

Déclarer les plages réseau :
enp0s3 10.0.2.0 Ne pas utiliser
enp0s8 192.168.56.0 Public
enp0s9 10.0.1.0 ASM et privé
virbr0 192.168.122.0 Ne pas utiliser

Pour le stockage des disques OCR et Voting, choisir ASM

Sur la fenêtre de configuration du référentiel Grid Infrastructure, choisir Non

Sur la fenêtre de création d'un disk group ASM, modifier le chemin de repérage en "/dev/asm*"

Sur la fenêtre mise à jour, renseigner les information du disk group :
Nom du disk group : DG_CRS
Redondance : Externe
Sélection des disques : /dev/asm_crs_01

Utiliser le meme mot de passe pour les comptes ASM

Ne pas utiliser Intelligent Platform Management Interface (IPMI)

Ne pas s'inscrire auprès d'Enterprise Manager Cloud Control

Gestion des groupes : laisser les options par défaut. Ignorer le message à la validation : [INS-41808] Choix non valide possible pour le groupe OSASM

Laisser la valeur par défaut pour ORACLE_BASE :
/u01/app/grid

Laisser la valeur par défaut pour l'inventory :
/u01/app/oraInventory

Cocher la case "Executer automatiquement les scripts de configuration" et fournir le mot de passe de root

Après une longue phase de vérifications, la fenêtre de synthèse s'affiche.
Les warnings sur resolv.conf et le service de nom peuvent être ignorés. Cocher la case "Ignorer tout"

Sur la fenêtre finale, cliquer sur Installer

Lors du message sur les scripts d'installation, répondre Oui

Les scripts d'installation prennent beaucoup de temps à s'exécuter. Leur progression peut être suivie au travers du fichier logs :
ls -l /u01/app/grid/crsdata/rac?/crsconfig/*.log
Le programme signale un échec dans la phase "Cluster Verify".
Cliquer donc sur Ok puis ignorer. L'utilitaire "Cluster Verify" pourra être lancé manuellement par la suite.
Emplacement du fichier log généré : /tmp/GridSetupActions2021-05-26_01-16-31AM/gridSetupActions2021-05-26_01-16-31AM.log

Fermer la dernière fenêtre.

Vérifier le statut du cluster :
# rac1
su - grid
export PATH=$PATH:$ORACLE_HOME/bin
crsctl status resource -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
ONLINE ONLINE rac1 STABLE
ONLINE ONLINE rac2 STABLE
ora.chad
ONLINE ONLINE rac1 STABLE
ONLINE ONLINE rac2 STABLE
ora.net1.network
ONLINE ONLINE rac1 STABLE
ONLINE ONLINE rac2 STABLE
ora.ons
ONLINE ONLINE rac1 STABLE
ONLINE ONLINE rac2 STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE ONLINE rac1 STABLE
2 ONLINE ONLINE rac2 STABLE
3 OFFLINE OFFLINE STABLE
ora.DG_CRS.dg(ora.asmgroup)
1 ONLINE ONLINE rac1 STABLE
2 ONLINE ONLINE rac2 STABLE
3 OFFLINE OFFLINE STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE rac2 STABLE
ora.LISTENER_SCAN2.lsnr
1 ONLINE ONLINE rac1 STABLE
ora.LISTENER_SCAN3.lsnr
1 ONLINE ONLINE rac1 STABLE
ora.asm(ora.asmgroup)
1 ONLINE ONLINE rac1 Started,STABLE
2 ONLINE ONLINE rac2 Started,STABLE
3 OFFLINE OFFLINE STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE ONLINE rac1 STABLE
2 ONLINE ONLINE rac2 STABLE
3 OFFLINE OFFLINE STABLE
ora.cvu
1 ONLINE ONLINE rac1 STABLE
ora.qosmserver
1 ONLINE ONLINE rac1 STABLE
ora.rac1.vip
1 ONLINE ONLINE rac1 STABLE
ora.rac2.vip
1 ONLINE ONLINE rac2 STABLE
ora.scan1.vip
1 ONLINE ONLINE rac2 STABLE
ora.scan2.vip
1 ONLINE ONLINE rac1 STABLE
ora.scan3.vip
1 ONLINE ONLINE rac1 STABLE
--------------------------------------------------------------------------------
|
Vérifier que l'installation est correcter manuellement avec cluster verify :
su - grid cd $ORACLE_HOME ./runcluvfy.sh stage -post crsinst -n rac1,rac2 La post-vérification de configuration des services de cluster a réussi. opération de l'utilitaire de vérification de cluster effectuée : stage -post crsinst Date : 26 mai 2021 11:44:51 Répertoire de base de l'utilitaire de vérification de cluster : /u01/app/19.3.0/grid/ Utilisateur: grid |
Enfin, ajouter $ORACLE_HOME/bin dans le PATH du user grid (fichier .bash_profile).
Lancer asmca en mode graphique et suivre les instructions
ssh -X -Y grid@192.168.56.11 su - grid asmca |
Aller dans "Groupes de disques" puis "Créer"

Choisir DG_DATA avec redondance externe et choisir les deux disques asm_data_01 et asm_data_02, puis Ok

Refaire "Créer".
Choisir DG_FRA avec redondance externe et choisir les deux disques asm_fra_01 et asm_fra_02, puis Ok

Quitter

Initialiser les répertoires et le bash_profile d'oracle sur les 2 noeuds du rac
# rac1 et rac2 su - oracle mkdir -p /u01/app/oracle/19.3.0/home_1 chown -R oracle:oinstall /u01/app/oracle # rac1 et rac2 vi .bash_profile umask 022 export TMP=/tmp export TMPDIR=/tmp export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/19.3.0/home_1 export PATH=$PATH:$ORACLE_HOME/bin |
Copier la distribution des binaires d'Oracle Database sur la VM rac1 uniquement.
# rac1 uniquement ls -l /distrib/LINUX.X64_193000_db_home.zip -rw-r--r--. 1 root root 3059705302 26 mai 12:52 /distrib/LINUX.X64_193000_db_home.zip |
Dézipper l'image avec le compte oracle dans son ORACLE_HOME :
# rac1 uniquement su - oracle cd $ORACLE_HOME pwd /u01/app/oracle/19.3.0/home_1 unzip -q /distrib/LINUX.X64_193000_db_home.zip |
Lancer runInstaller dans une fenêtre graphique XTerm :
ssh -X -Y oracle@192.168.56.11 cd $ORACLE_HOME pwd /u01/app/oracle/19.3.0/home_1 export CV_ASSUME_DISTID=OEL7.6 ./runInstaller |
Choisir "Configurer le logiciel uniquement"

Choisir "base de données Real Application Cluster"

Tous les noeuds sont cochés par défaut. Cliquer sur "Connectivité SSH".
Cliquer sur la case "Réutiliser les clés publiques et privées" puis Tester.

Une fois la connectivité vérifiée, faire Ok puis Suivant

Choisir l'option "Enterprise Edition"

Laiser les répertoires d'installation :
ORACLE_BASE = /u01/app/oracle ORACLE_HOME = /u01/app/oracle/19.3.0/home_1

Laisser les groupes par défaut

Choisir d'executer automatiquement les scripts et fournir le mot de passe de root

Le programme vérifie les prérequis, ce qui peut prendre du temps.
Choisir d'ignorer les Echecs et les warnings.

Choisi "Installer"
Si un message d'execution des scripts s'affiche, répondre Oui

Choisi "Fermer"

Au préalable, pour utiliser la gestion automatique de la mémoire, il convient d'adapter la taille de /dev/shm à 3,3 Go (80% de la RAM).
su - root df -h /dev/shm Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur tmpfs 1,9G 641M 1,3G 34% /dev/shm # rac1 /u01/app/19.3.0/grid/bin/crsctl stop cluster -all # rac1 et rac2 umount /dev/shm mount -t tmpfs shmfs -o size=3300m /dev/shm df -h /dev/shm Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur shmfs 3,1G 0 3,1G 0% /dev/shm # rac1 /u01/app/19.3.0/grid/bin/crsctl start cluster -all |
Suite à un bug décrit dans le document "DOC ID 2545858.1", il faut corriger l'appartenance au groupe oinstall
# Sur rac1 et rac2 su - root id oracle uid=501(oracle) gid=500(oinstall) groupes=500(oinstall),501(dba) grep oracle /etc/group dba:x:501:grid,oracle usermod -g oinstall -G oinstall,dba oracle grep oracle /etc/group oinstall:x:500:oracle dba:x:501:grid,oracle |
Lancer dbca dans une fenêtre graphique XTerm :
ssh -X -Y oracle@192.168.56.11 export CV_ASSUME_DISTID=OEL7.6 dbca |
Choisir "Créer une base de données"

Choisir le mode de configuration avancé

Choisir une base de données :
Base Real Application Cluster
Gérée par l'administrateur
Personnalisée

Sélectionner tous les noeuds du cluster

Renseigner le nom de base de données et ne pas la déclarer en conteneur

Choisir le stockage ASM et renseigner comme destination des fichiers +DG_DATA/{DB_UNIQUE_NAME}

Activer la zone de récupération rapide (DG_FRA limite 12000 MB) et arctiver le mode Archivelog

Décocher toutes les options de base de données

Utiliser la gestion automatique de la mémoire à 1800 MB.
Laisser les autres onglets avec leur valeur par défaut :
processes 300
charset AL32UTF8
connexion en serveur dédié

Décocher l'éxécution automatique de Cluster Verifiy ainsi que la configuration d'Enterprise Manager

Choisir un mot de passe unique pour tous les comptes

Cocher "Créer une base de données" ainsi que "Générer les scripts de création de la base"

Ignorer les avertissements

Dans la fenetre récapitulative, faire "Fin"

Les étapes de création de la base de données prennent un certain temps

A la fin de la création, cliquer sur "Fermer"

Fin de la création.