Como reapontar um agente do Oracle para um outro OEM 12c Server

This post is also available in: English

Talvez um dia pode ocorrer de você perder, trocar ou precisar reinstalar o seu servidor Oracle EM 12c e se algum dia isto acontecer, não será necessário reinstalar todos os seus agentes de OMS que executam nos clientes. Tudo que será preciso é criar uma nova instância do agente dentro de cada host client e configurá-los.

Vamos fazer isto em 4 etapas! No entanto, antes de começar, esteja certo que o seu agente estará apontando para um novo OMS que seja da mesma versão ou superior à dele. Nunca menor!

Ex:
Agent = 12.1.0.1.0
OMS = 12.1.0.3.0

Primeiro de tudo, crie um "response file" em algum lugar como "~/deploy.rsp" com as seguintes variáveis definidas:

OMS_HOST=oraem12ctrj001
EM_UPLOAD_PORT=4903
AGENT_REGISTRATION_PASSWORD=abc@1234
AGENT_PORT=3872

O response file deve conter os parâmetros OMS_HOST, EM_UPLOAD_PORT, e AGENT_REGISTRATION_PASSWORD. OMS_HOST e EM_UPLOAD_PORT devem receber os valores do host e porta seu novo servidor EM Server. Se você preferir usar o hostname do seu novo servidor ao invés do enderço IP na variável OMS_HOST, não esqueça de atualizar ou defini-la dentro do arquivo "/etc/hosts". Quanto a senha de registro do agente, você pode criar uma novo dentro do painel web do EM 12c em "Setup->Security->Registration Passwords". Também pode-se definir a variável ORACLE_HOSTNAME se você desejar trocar o nome do target do host que será apresentado no OMS Server. Caso omitida, a entrada antiga será utilizada.

O próximo passo é se assegurar que o agente está parado no cliente. Logado como o proprietários dos binários do agente, execute: emctl stop agent

[emc12@oracbddrjs001 ~]$ emctl stop agent
Oracle Enterprise Manager Cloud Control 12c Release 3
Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
Stopping agent ..... stopped.
[emc12@oracbddrjs001 ~]$

O segundo passo é remover a instância antiga do agente. Neste exemplo, o diretório base do agente é "/u01/app/emc12/emagent". Irei agora renomear de agent_inst para agent_inst_old:

[emc12@oracbddrjs001 ~]$ cd /u01/app/emc12/emagent/
[emc12@oracbddrjs001 emagent]$ ls -la
total 36
drwxr-xr-x. 6 emc12 oinstall 4096 May  8 09:46 .
drwxr-xr-x. 3 emc12 oinstall 4096 Nov 18 20:16 ..
-rw-rw-r--  1 emc12 oinstall  178 Jun 22  2013 agentimage.properties
drwxr-xr-x  6 emc12 oinstall 4096 May  8 09:25 agent_inst
drwxr-xr-x  3 emc12 oinstall 4096 Nov 22 11:48 core
drwxr-xr-x  8 emc12 oinstall 4096 Dec 11 01:16 plugins
-rwxr-xr-x  1 emc12 oinstall  223 Nov 22 08:49 plugins.txt
-rw-r--r--  1 emc12 oinstall  298 May  7 16:46 plugins.txt.status
drwxr-xr-x  5 emc12 oinstall 4096 May  7 16:49 sbin
[emc12@oracbddrjs001 emagent]$ mv agent_inst agent_inst_old
[emc12@oracbddrjs001 emagent]$

Agora é a hora de reconfigurar o agente. Para fazer isto, é necessário executar o script agentDeploy.sh dentro da pasta core, passando as variáveis parametrizadas AGENT_BASE_DIR, RESPONSE_FILE e usando a flag -configOnly:

[emc12@oracbddrjs001 ~]$ /u01/app/emc12/emagent/core/12.1.0.3.0/sysman/install/agentDeploy.sh AGENT_BASE_DIR=/u01/app/emc12/emagent/ RESPONSE_FILE=~/deploy.rsp -configOnly

Executing command : /u01/app/emc12/emagent/core/12.1.0.3.0/jdk/bin/java -classpath /u01/app/emc12/emagent/core/12.1.0.3.0/oui/jlib/OraInstaller.jar:/u01/app/emc12/emagent/core/12.1.0.3.0/oui/jlib/xmlparserv2.jar:/u01/app/emc12/emagent/core/12.1.0.3.0/oui/jlib/srvm.jar:/u01/app/emc12/emagent/core/12.1.0.3.0/oui/jlib/emCfg.jar:/u01/app/emc12/emagent/core/12.1.0.3.0/jlib/agentInstaller.jar:/u01/app/emc12/emagent/core/12.1.0.3.0/oui/jlib/share.jar oracle.sysman.agent.installer.AgentInstaller /u01/app/emc12/emagent/core/12.1.0.3.0 ./core/12.1.0.3.0/sysman/install /u01/app/emc12/emagent /u01/app/emc12/emagent/agent_inst AGENT_BASE_DIR=/u01/app/emc12/emagent

Performing the agent configuration...
Executing command: /u01/app/emc12/emagent/core/12.1.0.3.0/oui/bin/runConfig.sh ORACLE_HOME=/u01/app/emc12/emagent/core/12.1.0.3.0 RESPONSE_FILE=/u01/app/emc12/emagent/core/12.1.0.3.0/agent.rsp ACTION=configure MODE=perform COMPONENT_XML={oracle.sysman.top.agent.11_1_0_1_0.xml} RERUN=true
Configuration Log Location:/u01/app/emc12/emagent/core/12.1.0.3.0/cfgtoollogs/cfgfw/CfmLogger<timestamp>.log
Agent Configuration completed successfully

The following configuration scripts need to be executed as the "root" user.
#!/bin/sh
#Root script to run
 /u01/app/emc12/emagent/core/12.1.0.3.0/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
Agent Deployment Successful.
Agent deployment log location:
/u01/app/emc12/emagent/core/12.1.0.3.0/cfgtoollogs/agentDeploy/agentDeploy_2014-05-07_16-45-50-PM.log
Agent deployment completed successfully.
[emc12@oracbddrjs001 emagent]$

Ótimo, tudo está quase pronto. Execute como root o script:

[root@oracbddrjs001 ~]# /u01/app/emc12/emagent/core/12.1.0.3.0/root.sh
Finished product-specific root actions.
/etc exist
Finished product-specific root actions.
[root@oracbddrjs001 ~]#

O último passo é restartar o agente do OMS e adicioná-lo ao OMS Service:

Execute:
emctl start agent
emctl config agent addinternaltargets

[emc12@oracbddrjs001 ~]$ emctl start agent
Oracle Enterprise Manager Cloud Control 12c Release 3
Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
Starting agent .......... started.
[emc12@oracbddrjs001 ~]$ emctl config agent addinternaltargets
Oracle Enterprise Manager Cloud Control 12c Release 3
Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
[emc12@oracbddrjs001 ~]$

Se abrirmos agora o EM 12c web console, veremos que o cliente foi adicionado e listado como um dos hosts monitorados.

Update: A Oracle tem um ótimo artigo que explica estes passos, possui uma lista completa de requisitos e que pode ser acessada no link: http://docs.oracle.com/cd/E24628_01/install.121/e24089/appdx_repoint_agent.htm.

Gostou? Não deixe de comentar ou deixar um 👍!

2 comentários

  1. Olá Rodrigo,

    Você já teve que mudar o HOSTNAME e o IP do seu servidor OMS (Cloud Control)? Sabe se é possível e viável fazer isso, ou seria melhor reinstalar e reconfigurar tudo?

    1. Oi Tiago,

      Tudo bem? É viável sim, mas só é possível se em todas as etapas da instalação você tiver referenciado o hostname do próprio OMS. Basicamente você vai precisar baixar o OMS, trocar o IP e as referências no arquivo /etc/hosts, depois subir novamente. O problema é que normalmente as pessoas acabam colocando o IP do server em algumas etapas, em vez do hostname.
      Neste caso é necessário reinstalá-lo.

      Abcs

Deixe um comentário

Seu e-mail não será publicado.