Installation Oracle Grid Control 10g sur Unix

fadace

Procédure d'installation d'Oracle Grid Control 10g sur une plateforme Unix ?

- Titre : Installation Oracle Grid Control 10g sur Unix

- Auteur : fadace

- Parution : 20 mai 2007

- Mise à jour : 22 mai 2007

- Licence : Copyright ® 2007 Fadce. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Tâches de préinstallation

- II. Oracle Universal Installer

- III. Nettoyage de la base du référentiel

- IV. Administration

- V. Arrêt / redémarrage de la Grid

- VI. Désinstallation rapide

- VII. Installer un agent

- VIII. Gestion de quelques problèmes

- VIII-A. Contrôle au niveau de l'agent

- VIII-B. Contrôle au niveau de la base

- VIII-C. Contrôle au niveau de la Grid

I - Tâches de préinstallation

Dans la session xterm que vous allez utiliser pour lancer l'installer, assurez-vous que les variables LOG et ENV ne sont pas utilisées

unset LOG
unset ENV

Démarrez ensuite, en tant que root, le fameux script de préinstallation

root> cd /cdrom/oracle/Grid_control_10.2/rootpre/
root> ./rootpre.sh

II - Oracle Universal Installer

Exécutez ensuite L'Oracle Universal Installer (OUI) depuis votre CD/DVD d'installation, en tant qu'utilisateur Oracle, cette fois-ci

oracle> /cdrom/oracle/Grid_control_10.2/runInstaller

Choisissons d'abord notre type d'installation : d'expérience et avec la problématique de la gestion des versions multiples d'Oracle, il vaut mieux laisser faire OUI et attribuer une nouvelle instance spécifique à Oracle Grid Control. Un petit exemple ? Nous sommes ici en train d'installer une version d'Oracle Grid Control 10.2, mais la base référentielle doit être une 10.1… Pour la version OMS 10.1, la base référentielle était une 9i !!!

Autre spécificité d'OUI pour OMS : la localisation. Ici il faut spécifier l'ORACLE_BASE et pas, comme nous en avons l'habitude, l'ORACLE_HOME. Dans ce répertoire ORACLE_BASE, OUI va ensuite créer trois sous-répertoires dont nous ne pouvons pas modifier le nom :

- oms10g : Oracle Home pour le processus Grid Control / Enterprise Manager à proprement parler ;

- agent10g : Oracle Home de l'agent Oracle pour la machine hôte ;

- db10g : Oracle Home de l'instance Oracle référentielle.

C'est au niveau de cet écran que nous pouvons, si nous le souhaitons, ajouter une langue autre que l'anglais pour les messages.

Compte tenu qu'il s'agit vraisemblablement d'une première installation d'Oracle, il nous sera sans doute demandé de spécifier la localisation de l'oraInventory, le fameux répertoire répertoriant toute installation d'Oracle sur une machine.

Ensuite, la phase de validation commence. C'est ici que serait détecté un éventuel patch manquant au niveau du système d'exploitation. Dans ce cas, n'hésitez pas à l'installer, quitte à recommencer la présente installation.

Déterminons maintenant le nom de l'instance qui hébergera le référentiel d'Oracle Grid Control. Notons aussi malheureusement qu'actuellement encore, il n'est pas possible de se baser sur une instance en cluster.

Il est maintenant possible de configurer l'OMS plus spécifiquement en lui attribuant les informations concernant la connexion à Metalink, le nom de votre serveur SMTP… mais rien ne sert de le faire maintenant : il sera plus aisé de le faire par la suite… on évite ainsi un risque que dbca ne se comporte pas correctement,

Une fois n'est pas coutume, passez du temps a remplir correctement cet écran qui détermine les mots de passe à utiliser. La clé de Grid Control offrant l'accès à l'entièreté de votre domaine, ne lésinez pas sur la complexification des mots de passe.

Prenez par exemple la peine de dissocier les mots de passe de sys/system et de dbsnmp (le login/schéma maître de la Grid Control), ceci afin de permettre la modification plus aisée des deux premiers sans impacter la Grid.

Stockez aussi avec précaution le mot de passe qu'il vous est demandé de saisir pour la sécurisation des agents : sans lui, pas moyen d'installer un agent afin qu'il se connecte au référentiel.

L'écran suivant résume les installations qui vont être lancées et que nous avons spécifiées plus haut.

Aussitôt validé, l'installation commence par la copie de binaire et leur compilation.

Ceci étant fait, une kyrielle d'assistants vont démarrer afin d'installer quantité de produits et de les configurer.

Lorsque tous les applicatifs auront été installés, nous allons exécuter le script allroot.sh, en tant que ROOT, puis, seulement après, valider l'écran ci-dessous.

[oracle] > sudo /opt/oracle/db10g/allroot.sh
Password for user oracle:

Starting to execute allroot.sh .........

Starting to execute /opt/oracle/db10g/root.sh ......
Running Oracle10 root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=  /opt/oracle/db10g

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying coraenv to /usr/local/bin ...

Adding entry to /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

Finished execution of  /opt/oracle/db10g/root.sh ......

Starting to execute /opt/oracle/oms10g/root.sh ......
Running Oracle10 root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=  /opt/oracle/oms10g

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying coraenv to /usr/local/bin ...

Adding entry to /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

Finished execution of  /opt/oracle/oms10g/root.sh ......

Starting to execute /opt/oracle/agent10g/root.sh ......
Running Oracle10 root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=  /opt/oracle/agent10g

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n) [n]: y
Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

Finished execution of  /opt/oracle/agent10g/root.sh ......

Les binaires étant maintenant installés, les assistants de configuration vont faire leur œuvre… et ceci va prendre un temps certain compte tenu du nombre de programmes à installer.

Le DBCA installe la nouvelle instance

Les assistants se succèdent… ils prennent près d'une heure à s'exécuter (temps dépendant bien évidemment de la machine hôte).

À la fin de l'installation, l'URL à laquelle le Grid Control sera atteignable apparaît.

Gardez cette copie écran dans votre documentation et… terminez l'installation.

III - Nettoyage de la base du référentiel

La base du référentiel contiendra toutes les informations de connexion de toutes les instances de votre domaine. Il est donc fortement conseillé d'appliquer un niveau maximum de sécurité sur cette instance.

Cette instance 10.1.0.4 n'est pas patchée au maximum, ce qui augmente sa sensibilité aux attaques de pirates.

En sus, l'installer d'Oracle a créé une instance par défaut avec tous les comptes ouverts et inutiles.

Suppression des comptes suivants

- SCOTT

Modification du mot de passe des comptes suivants

- SI_INFORMTN_SCHEMA

- CTXSYS

- DMSYS

- EXFSYS

- MDSYS

- OLAPSYS

- ORDPLUGINS

- ORDSYS

- WKSYS

- WK_TEST

- WMSYS

- XDB

- OUTLN

IV - Administration

Ouvrez un navigateur Web et y entrer l'URL étant apparue à la fin de l'installation. Par défaut, il s'agit de http://VotreMachineHote:4889/em.

Lors de la première connexion, connectons-nous en tant que sysman, avec le mot de passe saisi lors de l'installation et créons des administrateurs afin d'éviter par la suite l'utilisation du compte sysman qui pourra être verrouillé par sécurité.

Juste au-dessus de la barre d'onglets, optons pour le lien Installation

… puis dans le ruban de gauche, sous Administrateurs, créons les comptes pour les administrateurs en tant que Super Administrateurs (sélectionner SYS et cliquer sur « Créer comme »)

Il faut ensuite paramétrer le notificateur afin que l'OMS soit en mesure de nous envoyer les notifications qui nous intéressent.

Toujours à l'aide du menu Installation, mais cette fois-ci sous « Méthode de notification », qualification du serveur SMTP pour l'envoi d'email.

Il est aussi possible de configurer un notificateur de Patch qui, couplé à Metalink, sera en mesure de nous donner des informations importantes quant aux patches à installer sur chacune de nos instances

Il va sans dire que sans support Oracle, et donc sans compte Metalink, cette fonctionnalité importante n'est pas disponible.

V - Arrêt / redémarrage de la Grid

Commande permettant d'arrêter tous les processus de la Grid Control

${ORACLE_BASE}/oms10g/opmn/bin/opmnctl  stopall

Commande permettant de démarrer tous les processus de la Grid Control

${ORACLE_BASE}/oms10g/opmn/bin/opmnctl  startall

Commande permettant de vérifier le statut de tous les processus de la Grid Control

${ORACLE_BASE}/oms10g/opmn/bin/opmnctl  status

VI - Désinstallation rapide

Désinstallation en cas de problème majeur lors de l'installation afin de relancer une procédure installation

sqlplus / as sysdba << EOF
shutdown abort
exit
EOF
lsnrctl stop
/opt/oracle/oms10g/opmn/bin/opmnctl stopall

rm -rf /opt/oracle/*10g /opt/oracle/*ventory
sudo rm /etc/oratab
rm  /tmp/*
rm -rf /oradata/dbogc1p/OGC1P
unset LOG
unset ENV

VII - Installer un agent

À faire lors de l'ajout d'une nouvelle machine intégrant une base Oracle A ne pas faire lors de l'installation d'une nouvelle instance sur un host ayant déjà un agent : selon la règle 1 machine = 1 agent.

Utilisez toujours les agents de même version que l'OMS. Sachez cependant qu'un agent 10g peut très bien prendre en charge une base 8i ou 9i.

Depuis la nouvelle machine : /cdrom/oracle/v10gr2_em_grid_control

S'assurer que /tmp ait 1.3 Go de disponible

unset ENV
unset LOG

./runInstaller

Has 'rootpre.sh' been run by root? [y/n] (n) y

Choix du type d'installation : nous nous rabattons sur l'agent

Choix du ${ORACLE_BASE} (et non pas du ${ORACLE_HOME} de l'agent). Le Oracle_home de l'agent sera spécifiquement ${ORACLE_BASE}/agent10g

C'est ici que l'on peut ajouter une langue, comme pour la quasi-totalité des installations faites via Oracle Universal Installer.

Les prérequis sont testés

On spécifie ensuite la localisation du Grid Control afin que l'agent s'y connecte.

Il faut ensuite saisir le mot de passe que nous avions introduit lors de l'installation du Grid Control, ceci afin d'être sûr qu'aucun agent « pirate » ne s'y connecte.

Affichage du résumé des informations avant l'installation

Puis l'installation fastidieuse des binaires commence avec ses neuf étapes

Puis exécution du fameux /opt/oracle/agent10g/root.sh en tant que ROOT

Vient ensuite l'agent de configuration

Output generated from configuration assistant "Agent Configuration Assistant":
Command = oracle.sysman.emcp.agent.AgentPlugIn

Configuration assistant "Agent Configuration Assistant" failed
-----------------------------------------------------------------------------
The "/opt/oracle/agent10g/cfgtoollogs/configToolFailedCommands" script contains all commands that failed, were skipped or were cancelled.
This file may be used to run these configuration assistants outside of OUI. Note that you may have to update this script with passwords (if any) before executing the same.
-----------------------------------------------------------------------------

# Copyright (c) 1999, 2005, Oracle. All rights reserved.
oracle.sysman.emcp.agent.AgentPlugIn

Fin de l'installation

VIII - Gestion de quelques problèmes

VIII-A - Contrôle au niveau de l'agent

L'agent fonctionne-t-il ? L'upload se passe-t-il bien ?

/opt/oracle/agent10g/bin/emctl status agent

Resécuriser l'agent

/opt/oracle/agent10g/bin/emctl status agent VotreMotDePasse

Uploader manuellement

/opt/oracle/agent10g/bin/emctl upload

Démarrer l'agent manuellement

/opt/oracle/agent10g/bin/emctl start agent

Contrôler que son URL est bien correcte en lançant dans un navigateur l'URL ressortie par

grep EMD_URL /opt/oracle/agent10g/sysman/config/emd.properties

VIII-B - Contrôle au niveau de la base

Peut-on se connecter à la base ?

Les utilisateurs dbsnmp et sysman ont-ils le bon mot de passe ? Sont-ils déverrouillés ? Ont-ils suffisamment de droits ?

alter sysman identified by UnMotDePasse account unlock;
alter dbsnmp identified by UnMotDePasse account unlock
Grant dba to sysman
Grant dba to dbsnmp

VIII-C - Contrôle au niveau de la Grid

Les agents sont-ils visibles ? Sinon, valider nlslookup et ping vers et depuis la machine hôte

Reboot de l'application server depuis la machine hôte

/opt/oracle/oms10g/opmn/bin/opmnctl stopall
/opt/oracle/oms10g/opmn/bin/opmnctl startall
/opt/oracle/oms10g/opmn/bin/opmnctl status

Les cibles Bases sont-elles correctement configurées ? Mot de passe dbsnmp correct ? Si oui, procédure de nettoyage :

- depuis la Grid, sous les cibles (Targets), sélectionnez la base problématique (le statut n'est normalement pas au vert) ;

- cliquez sur le bouton Supprimer (Remove) en haut à droite de la liste ;

- validez votre choix en cliquant sur Oui (Yes) dans l'écran de validation qui suit ;

- choisissez Cibles supprimées (Deleted targets) et attendez que votre cible obtienne une date de suppression terminée (Time delete completed) ;

- lorsque tout est correctement supprimé, retour aux agents (en haut à droite) ;

- pour la machine/l'agent que vous venez d'impacter, cliquez sur Ajouter une instance de base de données (Add database Instance) ;

- l'agent va ensuite détecter tout ce qu'il peut trouver sur la machine et l'afficher ;

- il ne vous reste plus qu'à resélectionner l'instance et à la configurer (normalement donner le mot de passe du login dbsnmp) ;

- généralement, cela suffit pour retomber sur une situation correcte.