How To : Installation / déploiement d’un agent OEM 12c en SILENT MODE sur LINUX

Il peut arriver certaines fois qu’il soit nécessaire d’installer un agent OEM (Enterprise Manager) en mode silencieux, c’est à dire en ne passant pas par l’interface web du grid control, mais en le déployant depuis le serveur où il doit être installé.

Voyons cependant brièvement comment déployer un agent 12c depuis le Grid Control OEM, afin de permettre de comparer les deux méthodes.

Tout d’abord, le serveur, sur lequel l’agent sera déployé, doit respecter un certain nombre de prérequis.

Sur Linux, il faut en effet veiller à paramétrer correctement les autorisations de type sudo, compléter le fichier host (également sur le serveur OMS d’ailleurs) et disposer d’un emplacement dédié sur lequel l’agent pourra être déployé (un Filesystem de préférence)

Cf DOC pour davantage d’informations sur ces prérequis.

Attention : il est conseillé d’utiliser le FQDN (Fully Qualified Domain Name) des serveurs plutôt que le nom court.

Dans mon contexte, tous mes prérequis sont respectés, je passe directement sur la méthode pour déployer l’agent.

Sur la page d’accueil du grid control, aller sur

-> SETUP en haut à droite

-> cliquer sur ADD TARGET

-> cliquer ADD TARGETS MANUALY.

1

Note : Le mode « auto discovery result » ne peut être utilisé qu’une fois que l’agent ait été déployé, pour faciliter l’ajout des « targets » secondaires (bases / listener et autres)

=> Laisser le mode « Add Hosts Targets » de sélectionné, puis cliquer sur ADD HOST.

2

Cliquer ensuite sur ADD et indiquer les informations du serveur client (dans mon cas SRVCLNT.mydomain.com) puis cliquer sur NEXT.

3

4

Renseigner les informations liées au déploiement de l’agent : emplacement , port d’écoute et les CREDENTIALS pour que l’OMS puisse s’y connecter. Cliquer ensuite sur NEXT.

5

Une page de récapitulatif et de confirmation apparaît. Une fois les informations contrôlées, cliquer sur DEPLOY pour lancer la procédure de déploiement.

67

Il reste maintenant à patienter que le déploiement soit terminé

Passons maintenant à la seconde méthode, plus technique quant à elle, pour déployer l’agent en mode silencieux.

La première chose à faire est de se connecter à notre serveur OMS avec le user système qui gère l’OMS (dans mon cas le user est « oracle »), et de lancer l’utilitaire de gestion EMCLI, alternative non graphique à l’interface web du grid control.

Note : il faut disposer du password du compte SYSMAN.

[root@SRVOMS1.mydomain.com ~]# su - oracle
[oracle@SRVOMS1.mydomain.com ~]$ cat .envoms
export ORACLE_HOME=/oracle/oms/em/oms
export PATH=$ORACLE_HOME/bin:$PATH
set -o vi

[oracle@SRVOMS1.mydomain.com ~]$ . .envoms
[oracle@SRVOMS1.mydomain.com ~]$
[oracle@SRVOMS1.mydomain.com ~]$ emcli login -username=sysman
Enter password :

Login successful
[oracle@SRVOMS1.mydomain.com ~]$ emcli sync
Synchronized successfully

Il faut ensuite interroger la liste des agents que peut gérer l’OMS, à savoir que s’il manque un agent il peut être installé via les méthodes conventionnelles (via « self update » du grid control) .

[oracle@SRVOMS1.mydomain.com ~]$ emcli get_supported_platforms
-----------------------------------------------
Version = 12.1.0.5.0
Platform = Microsoft Windows x64 (64-bit)
-----------------------------------------------
Version = 12.1.0.5.0
Platform = Linux x86-64
-----------------------------------------------
Platforms list displayed successfully.

Dans mon cas, je souhaite déployer un agent Linux 64Bit, je vais donc faire générer un ZIP de l’agent Linux via la commande ci dessous :

[oracle@SRVOMS1.mydomain.com ~]$ emcli get_agentimage -destination=/oracle/soft_library/agent -platform="Linux x86-64" -version="12.1.0.5.0"
=== Partition Detail ===
Space free : 8 GB
Space required : 1 GB
Check the logs at /home/oracle/.emcli/get_agentimage_2017-01-17_15-41-51-PM.log
Downloading /oracle/soft_library/agent/12.1.0.5.0_AgentCore_226.zip
File saved as /oracle/soft_library/agent/12.1.0.5.0_AgentCore_226.zip
Downloading /oracle/soft_library/agent/12.1.0.5.0_PluginsOneoffs_226.zip
File saved as /oracle/soft_library/agent/12.1.0.5.0_PluginsOneoffs_226.zip
Downloading /oracle/soft_library/agent/unzip
File saved as /oracle/soft_library/agent/unzip
Agent Image Download completed successfully.

Ce ZIP peut maintenant être copié directement sur le serveur cible, où l’agent doit y être installé :

[oracle@SRVOMS1.mydomain.com agent]$ ls -ltr
total 251080
-rw-r--r-- 1 oracle dba 257102519 17 janv. 15:43 12.1.0.5.0_AgentCore_226.zip
[oracle@SRVOMS1.mydomain.com agent]$ scp 12.1.0.5.0_AgentCore_226.zip SRVCLNT.mydomain.com:/home/oracle/.
The authenticity of host 'SRVCLNT.mydomain.com (192.168.1.10)' can't be established.
RSA key fingerprint is dc:88:a3:b0:09:38:71:0a:04:78:22:e7:ce:81:c4:5d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'SRVCLNT.mydomain.com,192.168.1.10' (RSA) to the list of known hosts.
oracle@SRVCLNT.mydomain.com's password:
12.1.0.5.0_AgentCore_226.zip 100% 245MB 4.6MB/s 00:53

On se connecte maintenant sur le serveur cible (« SRVCLNT.mydomain.com« ) pour passer à l’étape de configuration de l’installation, en décompressant tout d’abord l’archive qui a été envoyée précédemment.

[SRVCLNT.mydomain.com]<oracle>:cd /home/oracle
[SRVCLNT.mydomain.com]<oracle>:unzip 12.1.0.5.0_AgentCore_226.zip
Archive: 12.1.0.5.0_AgentCore_226.zip
inflating: unzip
inflating: agentDeploy.sh
inflating: agentimage.properties
inflating: agent.rsp
extracting: agentcoreimage.zip
extracting: 12.1.0.5.0_PluginsOneoffs_226.zip

Il faut ensuite configurer le fichier de « réponse » AGENT.RSP en fonction du contexte technique (Nom du serveur OMS, port et autres informations)

La partie à modifier étant :

#OMS_HOST=<Value Unspecified>
#EM_UPLOAD_PORT=<Value Unspecified>
#AGENT_REGISTRATION_PASSWORD=<Value Unspecified>
#AGENT_INSTANCE_HOME=<Value Unspecified>
#AGENT_PORT=<Value Unspecified>
b_startAgent=true
#ORACLE_HOSTNAME=<Value Unspecified>

Qui devient (dans mon cas) :

OMS_HOST=SRVOMS1.mydomain.com
EM_UPLOAD_PORT=4889
AGENT_REGISTRATION_PASSWORD=xxxxxxxxx
AGENT_INSTANCE_HOME=/agent12c/agt
AGENT_PORT=3872
b_startAgent=true
ORACLE_HOSTNAME=SRVCLNT.mydomain.com

Une fois ce fichier complété, il suffit maintenant de lancer l’installation.

Note : Veillez à remplacer le répertoire /home/oracle par votre répertoire où a été dézippé l’agent 

[SRVCLNT.mydomain.com]<oracle>:cd /home/oracle
[SRVCLNT.mydomain.com]<oracle>:./agentDeploy.sh AGENT_BASE_DIR=/agent12c/agt RESPONSE_FILE=/home/oracle/agent.rsp
Validating the OMS_HOST & EM_UPLOAD_PORT
Executing command : /agent12c/agt/core/12.1.0.5.0/jdk/bin/java -classpath /agent12c/agt/core/12.1.0.5.0/jlib/agentInstaller.jar:/agent12c/agt/core/12.1.0.5.0/oui/jlib/OraInstaller.jar oracle.sysman.agent.installer.AgentInstaller /agent12c/agt/core/12.1.0.5.0 /home/oracle /agent12c/agt AGENT_BASE_DIR=/agent12c/agt RESPONSE_FILE=/home/oracle/agent.rsp -prereq

Validation de l'hote et du port OMS avec l'URL : http://SRVOMS1.mydomain.com.localdomain.fr:4889/empbs/genwallet
Validation de l'hote et du port OMS avec l'URL : https://SRVOMS1.mydomain.com.localdomain.fr:4889/empbs/genwallet
Return status:0-oms http port is passed
Unzipping the agentcoreimage.zip to /agent12c/agt ....
12.1.0.5.0_PluginsOneoffs_226.zip
Executing command : /home/oracle/unzip -o /home/oracle/12.1.0.5.0_PluginsOneoffs_226.zip -d /agent12c/agt
Successfully unzipped /home/oracle/12.1.0.5.0_PluginsOneoffs_226.zip to /agent12c/agt !
Executing command : /agent12c/agt/core/12.1.0.5.0/jdk/bin/java -classpath /agent12c/agt/core/12.1.0.5.0/oui/jlib/OraInstaller.jar:/agent12c/agt/core/12.1.0.5.0/oui/jlib/xmlparserv2.jar:/agent12c/agt/core/12.1.0.5.0/oui/jlib/srvm.jar:/agent12c/agt/core/12.1.0.5.0/oui/jlib/emCfg.jar:/agent12c/agt/core/12.1.0.5.0/jlib/agentInstaller.jar:/agent12c/agt/core/12.1.0.5.0/oui/jlib/share.jar oracle.sysman.agent.installer.AgentInstaller /agent12c/agt/core/12.1.0.5.0 /home/oracle /agent12c/agt /agent12c/agt AGENT_BASE_DIR=/agent12c/agt


Exécution des prérequis pour l'installation de l'agent...
Exécution de la commande : /agent12c/agt/core/12.1.0.5.0/oui/bin/runInstaller -debug -ignoreSysPrereqs -prereqchecker -silent -ignoreSysPrereqs -waitForCompletion -prereqlogloc /agent12c/agt/core/12.1.0.5.0/cfgtoollogs/agentDeploy -entryPoint oracle.sysman.top.agent_Complete -detailedExitCodes PREREQ_CONFIG_LOCATION=/agent12c/agt/core/12.1.0.5.0/prereqs -J-DORACLE_HOSTNAME=SRVCLNT.mydomain.com.appclient.asp -J-DAGENT_PORT=3872 -J-DAGENT_BASE_DIR=/agent12c/agt
Les prérequis pour l'installation de l'agent ont été appliqués

Clonage du répertoire d'origine Oracle Home de l'agent...
Exécution de la commande : /agent12c/agt/core/12.1.0.5.0/oui/bin/runInstaller -debug -ignoreSysPrereqs -clone -forceClone -silent -waitForCompletion -nowait ORACLE_HOME=/agent12c/agt/core/12.1.0.5.0 -responseFile /home/oracle/agent.rsp AGENT_BASE_DIR=/agent12c/agt AGENT_BASE_DIR=/agent12c/agt RESPONSE_FILE=/home/oracle/agent.rsp -noconfig ORACLE_HOME_NAME=agent12c2 -force b_noUpgrade=true EMCTLCFG_MODE=NONE
Répertoire de base de l'agent cloné

Attachement du répertoire d'origine Oracle Home sbin...
Exécution de la commande : /agent12c/agt/core/12.1.0.5.0/oui/bin/runInstaller -debug -ignoreSysPrereqs -attachHome -waitForCompletion -nowait ORACLE_HOME=/agent12c/agt/sbin ORACLE_HOME_NAME=sbin12c2 -force
...
...

Une fois le déploiement réalisé, il reste une dernière action pour terminer l’installation, à savoir exécuter le ROOT.SH, depuis le compte ROOT du serveur :

[SRVCLNT.mydomain.com]<oracle>:sudo -i
[SRVCLNT.mydomain.com]<root>:/agent12c/agt/core/12.1.0.5.0/root.sh

Un dernier petit contrôle :

[SRVCLNT.mydomain.com]<oracle>:/agent12c/agt/core/12.1.0.5.0/bin/emctl status agent

Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation. All rights reserved.
---------------------------------------------------------------
Agent Version : 12.1.0.5.0
OMS Version : 12.1.0.5.0
Protocol Version : 12.1.0.1.0
Agent Home : /agent12c/agt
Agent Log Directory : /agent12c/agt/sysman/log
Agent Binaries : /agent12c/agt/core/12.1.0.5.0
Agent Process ID : 38659
Parent Process ID : 38597
Agent URL : https://SRVCLNT.mydomain.com:3872/emd/main/
Local Agent URL in NAT : https://SRVCLNT.mydomain.com:3872/emd/main/
Repository URL : https://SRVOMS1.mydomain.com:4903/empbs/upload
Started at : 2017-01-17 10:51:38
Started by user : oracle
Operating System : Linux version 3.10.0-514.el7.x86_64 (amd64)
Last Reload : (none)
Last successful upload : 2017-01-23 14:23:26
Last attempted upload : 2017-01-23 14:23:26
Total Megabytes of XML files uploaded so far : 6.21
Number of XML files pending upload : 0
Size of XML files pending upload(MB) : 0
Available disk space on upload filesystem : 62.75%
Collection Status : Collections enabled
Heartbeat Status : Ok
Last attempted heartbeat to OMS : 2017-01-23 14:28:57
Last successful heartbeat to OMS : 2017-01-23 14:28:57
Next scheduled heartbeat to OMS : 2017-01-23 14:29:58

---------------------------------------------------------------
Agent is Running and Ready

[SRVCLNT.mydomain.com]<oracle>:/agent12c/agt/core/12.1.0.5.0/bin/emctl upload agent
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation. All rights reserved.
---------------------------------------------------------------
EMD upload completed successfully

[SRVCLNT.mydomain.com]<oracle>:/agent12c/agt/core/12.1.0.5.0/bin/emctl config agent listtargets
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation. All rights reserved.
[SRVCLNT.mydomain.com, host]
[SRVCLNT.mydomain.com:3872, oracle_emd]
[SRVCLNT.mydomain.com:3872_proxy, oracle_emd_proxy]

Et voilà ! notre agent est installé, il est maintenant possible d’y ajouter d’autres cibles comme une base de données, un listener, un RAC etc..

Micka