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.
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.
Cliquer ensuite sur ADD et indiquer les informations du serveur client (dans mon cas SRVCLNT.mydomain.com) puis cliquer sur NEXT.
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.
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.
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