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

 

 

OEM 13c : Remove Target with EMCLI Terminal session

OEM 13c : HOW TO Remove Targets with EMCLI, terminal session

Supprimer une target depuis EMCLI (sur serveur OEM ou distant)

Prérequis: EMCLI installé et configuré pour se connecter à l’OMS


[oracle@SRVOEM bin]$ ./emcli login -username=sysman
Enter password :

Login successful

Pour avoir la liste de toutes les cibles installées sur OEM :

[oracle@SRVOEM bin]$ ./emcli get_targets

on peut affiner avec le type de TARGET :

[oracle@SRVOEM bin]$ ./emcli get_targets -target="host"
Status Status Target Type Target Name
ID
1 Up host SRV1.localdomain
4 Agent Unreachab host SRV2.localdomain

Dans mon cas, j’ai un Agent à supprimer, qui ne peux l’être depuis l’interface web d’OEM (bug probablement).

Suppression du HOST :

[oracle@SRVOEM bin]$ ./emcli delete_target -name="SRV2.localdomain" -type="host" -delete_monitored_targets
Target "SRV2.localdomain:host" deleted successfully

Suppresion de l’AGENT :

[oracle@SRVOEM bin]$ ./emcli delete_target -name="SRV2.localdomain:3873" -type="oracle_emd" -delete_monitored_targets
Target "SRV2.localdomain:3873:oracle_emd" deleted successfully

Bien sur, cela peut se faire sur des TARGETS de type Base de données, RAC DAtabase, middleware, bref tout ce qui est installé / configuré sur OEM.

Mickael

OEM Grid Control 12c : Monitoring Windows 2003 R2 64b

Le monitoring des serveurs windows 2003 via AGENT PUSH pour OEM Grid Control peut poser quelques souci lors de la découverte des cibles.

Problème rencontré :

Aucune cible ne peut être découverte. Le message « invalid home » peut apparaitre, ou autre message indiquant un problème de reperage ou configuration.

Solution :

A la fin de la procédure automatique de déploiement de l’agent, certaines opérations doivent être réalisées automatiquement, mais ces dernières ne se sont soit pas déroulées, ou bien ont posées problème. il convient donc de les réaliser manuellement.

Actions depuis le serveur cible :

ouvrir une fenètre de commande CMD puis :

set ORACLE_HOME="oracle home agent"
%ORACLE_HOME%\bin\emctl stop agent

Supprimer le contenu des repertoires et le fichier :
ORACLE_HOME/sysman/emd/state
ORACLE_HOME/sysman/emd/upload
ORACLE_HOME/sysman/emd/agentsnmp.txt

%ORACLE_HOME%\bin\emctl clearstate agent
%ORACLE_HOME%\bin\emctl secure agent
%ORACLE_HOME%\bin\emctl start agent
%ORACLE_HOME%\bin\emctl config agent addinternaltargets

A la fin de ces opérations, les targets du serveur devraient pouvoir être affichée sur OEM , via la recherche automatique de cible.

Résolution de l’erreur TZOffset pour un agent OEM 11G

Résolution de l’erreur portant sur TZOffset lors d’une utilisation classique d’un agent OEM 11g.

Cette erreur apparait généralement à cause de problèmes de communication entre l’agent OEM et l’OMS.

Pour la résoudre :

-> Vérification statut de l’agent

> emctl status agent

Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
---------------------------------------------------------------
Agent Version : 11.1.0.1.0
OMS Version : 11.1.0.1.0
Protocol Version : 11.1.0.0.0
Agent Home : /oracle/product/agent11g
Agent binaries : /oracle/product/agent11g
Agent Process ID : 1605634
Parent Process ID : 1437742
Agent URL : http://hostname.mnh.fr:3872/emd/main/
Repository URL : https://lnxsrv-ora22.mnh.fr:4900/em/upload
Started at : 2011-12-06 09:00:24
Started by user : oracle
Last Reload : 2011-12-06 09:00:24
Last successful upload : 2011-12-06 09:11:50
Total Megabytes of XML files uploaded so far : 1.84
Number of XML files pending upload : 0
Size of XML files pending upload(MB) : 0.00
Available disk space on upload filesystem : 38.83%
Last successful heartbeat to OMS : 2011-12-06 09:11:36

-> Vérification du statut du port de l’agent (3872)

oracle:i=:/norme/dba/scripts/startstop $netstat -n | grep 3872
tcp4 0 0 172.23.100.51.3872 172.23.100.51.41935 TIME_WAIT
tcp4 0 0 172.23.100.51.3872 172.23.100.51.41936 TIME_WAIT

—> Problème identifié, le socket de l’agent est dans un état incorrect (TIME_WAIT), il faut le réinitialiser .

-> Arrêt / relance de l’agent OEM :

oracle:i=:emctl start agent
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
Starting agent ........ failed.
The agentTZRegion value in /oracle/product/agent11g/sysman/config/emd.properties is not in agreement with what agent thinks it should be.Please verify your environment to make sure that TZ setting has not changed since the last start of the agent.
If you modified the timezone setting in the environment, please stop the agent and exectute 'emctl resetTZ agent' and also execute the script mgmt_target.set_agent_tzrgn(, ) to get the value propagated to repository.
Consult the log files in: /oracle/product/agent11g/sysman/log

–> Relance impossible, il faut passer par un reset de la timezone de l’agent.

oracle:i=:emctl stop agent
oracle:i=:$emctl resetTZ agent
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
Updating /oracle/product/agent11g/sysman/config/emd.properties...
Successfully updated /oracle/product/agent11g/sysman/config/emd.properties.
Login as the em repository user and run the script:
exec mgmt_target.set_agent_tzrgn('mnx51.mnh.fr:3872','GMT')
and commit the changes
This can be done for example by logging into sqlplus and doing
SQL> exec mgmt_target.set_agent_tzrgn('hostname.mnh.fr:3872','GMT')
SQL> commit

-> Vérifications :

oracle:i=:$netstat -n | grep 3872
oracle:i=:$emctl status agent
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
---------------------------------------------------------------
Agent is Not Running
oracle:i=:$emctl start agent
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
Starting agent ......... started
oracle:i=:/norme/dba/scripts/startstop $netstat -n | grep 3872
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
---------------------------------------------------------------
Agent Version : 11.1.0.1.0
OMS Version : 11.1.0.1.0
Protocol Version : 11.1.0.0.0
Agent Home : /oracle/product/agent11g
Agent binaries : /oracle/product/agent11g
Agent Process ID : 1605680
Parent Process ID : 1437782
Agent URL : http://hostname.mnh.fr:3872/emd/main/
Repository URL : https://lnxsrv-ora22.mnh.fr:4900/em/upload
Started at : 2011-12-06 08:13:31
Started by user : oracle
Last Reload : 2011-12-06 08:13:31
Last successful upload : 2011-12-06 08:14:23
Total Megabytes of XML files uploaded so far : 1.62
Number of XML files pending upload : 0
Size of XML files pending upload(MB) : 0.00
Available disk space on upload filesystem : 38.83%
Last successful heartbeat to OMS : 2011-12-06 08:14:08
---------------------------------------------------------------
Agent is Running and Ready

–> Test de pose d’un blackout pour vérifier le bon fonctionnement de l’agent :


oracle:i=:$emctl start blackout myblackout mybase
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
Blackout myblackout added successfully
EMD reload completed successfully
oracle:i=:$emctl stop blackout myblackout
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
Blackout myblackout stopped successfully
EMD reload completed successfully