Logo Oracle Deutschland   DBA Community  -  Juni 2014
Oracle Enterprise Manager Cloud Control 12c: Agenten auf MS Windows installieren ohne CYGWIN
von Ralf Durben, Oracle Deutschland B.V. & Co. KG

Oracle Enterprise Manager Cloud Control arbeitet mit Agenten, die auf Zielsystemen installiert werden. Die Installation kann direkt aus der GUI heraus vorgenommen werden. Dieses gilt prinzipiell für alle Plattformen. Dabei wird eine ssh-Verbindung zum Zielserver aufgebaut, die Agentensoftware übertragen und dann installiert.

Bei der Plattform MS Windows gibt es aber die Spezialität, dass hier vom Betriebssystem kein ssh-Deamon zur Verfügung gestellt wird. Dazu muss zunächst eine separate Software namens "cygwin" installiert werden. Dieses ist für einige Kunden aber nicht wünschenswert.

Dieser Tipp zeigt Ihnen, wie Sie einen Cloud Control Agenten auch ohne "cygwin" auf einem MS Windows Server installieren und beinhaltet folgende Themen:



Hinweis: Seit dem Erscheinen von Release 4 von Cloud Control gibt es zwei Neuerungen:
  • Es gibt ein vorgefertigtes Skript namens 'agentDeployPsExec.bat'. Mit diesem Skript können Sie das Agentenimage sehr leicht über die Provisionierungslösung 'PsExec' verteilen. Das Skript können Sie bei MyOracleSupport unter der Note 1636851.1 beziehen
  • Das Thema ist auch im Handbuch beschrieben (allerdings ohne Screenshots). Sie finden dieses im Basic Installation Guide.

Erstellen eines Softwareimages

Extrahieren Sie mit dem EM Commandline Interface (emcli) die Agentensoftware aus dem OMS. Der generelle Umgang mit emcli wird im Oracle Dojo #3 beschrieben. Die Agenten-Software muss zunächst über Self Update geladen und "Applied" worden sein. Mit dem Enterprise Manager Commandline Interface (EMCLI) können Sie die Software leicht vom OMS herunterladen:

emcli get_agentimage
   -destination=<download_directory> 
   -platform="<platform>"
   [-version=<version>]
Im Handbuch wird als Beispiel genannt:
emcli get_agentimage 
-destination=/tmp/agtImage 
-platform=Linux x86 
-version=12.1.0.1.0
Aber wie sieht die genaue Plattformbezeichnung jeweils aus? Dieses können Sie im Dialog "Add Target" ermitteln, indem Sie eine Installation des Agenten auf einer Plattform simulieren:



Sie sehen in der Popup-Liste die Plattformbezeichnung, die Sie verwenden müssen. Im vorliegenden Fall soll die Agentensoftware für einen Microsoft Windows Rechner (64 Bit) extrahiert werden.

Des Weiteren setzen Sie die Umgebungsvariable ZIP_LOC auf ein bestehendes zip Executeable auf Ihrem Rechner, von dem aus Sie emcli aufrufen.

In emcli sieht das dann so aus:
emcli login -username=sysman
Enter password :
Login successful

export ZIP_LOC=/usr/local/bin/zip

emcli get_agentimage 
-destination=/home/oracle/agent_images/windows/. 
-platform="Microsoft Windows x64 (64-bit)"  
-version=12.1.0.3.0
=== Partition Detail ===
Space free : 37 GB
Space required : 1 GB
Check the logs at /home/oracle/.emcli/get_agentimage____.log
Downloading /home/oracle/agent_images/windows/./12.1.0.3.0_AgentCore_233.zip
File saved as /home/oracle/agent_images/windows/./12.1.0.3.0_AgentCore_233.zip
Downloading /home/oracle/agent_images/windows/./12.1.0.3.0_PluginsOneoffs_233.zip
File saved as /home/oracle/agent_images/windows/./12.1.0.3.0_PluginsOneoffs_233.zip
Downloading /home/oracle/agent_images/windows/./unzip
File saved as /home/oracle/agent_images/windows/./unzip
Agent Image Download completed successfully.


Im obigen Beispiel wurde auf dem Linux-Rechner, wo der OMS läuft, die Agentensoftware für einen MS Windows Server extrahiert.

Die Agentsoftware liegt jetzt als zip-Datei vor, im vorliegenden Beispiel sind es zwei Dateien mit den Namen
  • 12.1.0.3.0_AgentCore_233.zip
  • 12.1.0.3.0_PluginsOneoffs_233.zip
Das genaue Ergebnis ist abhängig von der Plattform.

Kopieren Sie die beiden Dateien auf den Zielrechner. Entpacken Sie alle ZIP-Dateien in jeweils eigene Verzeichnisse. Kopieren Sie den Inhalt von 12.1.0.3.0_PluginsOneoffs_233.zip in die Zip-Datei agentcoreimage.zip, die Sie im entpackten Verzeichnis von 12.1.0.3.0_AgentCore_233.zip finden.

Zur Verdeutlichung hier zwei Screenshots. Der erste Screenshot zeigt den Inhalt von 12.1.0.3.0_AgentCore_233.zip. Darin befindet sich die Datei agentcoreimage.zip.



In die Datei agentcoreimage.zip kopieren Sie den Inhalt von 12.1.0.3.0_PluginsOneoffs_233.zip. Es handelt sich zum Zeitpunkt der Erstellung dieses Artikels um zwei Elemente: der Datei "plugins.txt" und dem Verzeichnis "plugins".



Im Folgenden wird davon ausgegangen, dass sich das Resultat dieser Aktionen auf dem Zielserver im Verzeichnis "c:\AgentSoftware" befindet.

Installation des Agenten

Erstellen Sie das Basis-Verzeichnis für den Agenten, hier: c:\AgentInstall Navigieren Sie zur Agenten-Software und starten das Deployment.

cd c:\AgentSoftware
agentDeploy.bat AGENT_BASE_DIR=c:\AgentInstall 
                 OMS_HOST=<hostname> 
                 EM_UPLOAD_PORT=<oms_upload_port, meist 4900> 
                 AGENT_REGISTRATION_PASSWORD=<passwort>
Hinweis 1: Hier wurden Zeilenumbrüche eingefügt, um die Lesbarkeit zu verbessern. Das Kommando wird natürlich in einer Zeile angegeben.

Hinweis 2: Bei der Unix-Plattformen starten Sie die Datei agentDeploy.sh

Die Parameter sind kurz erklärt:
  • AGENT_BASE_DIR
  • ist das Basis Verzeichnis für den Agenten, welches Sie vorher angelegt haben
  • OMS_HOST
  • ist der Name der Rechners, auf dem der Oracle Managed Server (OMS) läuft
  • EM_UPLOAD_PORT
  • ist der Upload Port für den OMS. Wenn Sie diesen nicht kennen, können Sie ihn ganz leicht ermitteln: Navigieren Sie in Cloud Control über "Setup"->"Agents" und klicken auf einen bereits eingebundenen Agenten. Auf dessen Homepage finden Sie den Bereich "Interaction with Management Service" und dort in der ersten Zeile finden Sie den Upload Port
  • AGENT_REGISTRATION_PASSWORD
  • ist das Registrierungspasswort des OMS
Das Ergebnis sollte im Prinzip so aussehen:
$ agentDeploy.bat AGENT_BASE_DIR=c:\AgentInstall OMS_HOST=sccloud046.de.oracle.com EM_UPLOAD_PORT=4900 AGENT_REGISTRATION_PASSWORD=beispiel
:
:
:
Agent deployment completed successfully.
Die Installation ist beendet. Der Agent und der Host sind in Cloud Control eingetragen. Sie können jetzt weitere Targets (Datenbanken, Listener,...) über die GUI hinzufügen.

Die Parameter können Sie aber auch mittels Responsefile festlegen. Die Installation wird dann aufgerufen mit
$ agentDeploy.bat AGENT_BASE_DIR=c:\AgentInstall RESPONSE_FILE=c:\AgentSoftware\agent.rsp
:
:
:
Agent deployment completed successfully.
Das Responsefile sieht dann passend zum obigen Beispiel so aus:
EM_UPLOAD_PORT=4900
OMS_HOST=sccloud046.de.oracle.com
AGENT_REGISTRATION_PASSWORD=beispiel
b_startAgent=true
Der Vorteil liegt darin, dass das Passwort nicht in der Kommandozeile angegeben werden muss und damit auch nicht in einer Prozessliste auftaucht.

Troubleshooting

Zielserver nicht mit Full Qualified Name konfiguriert

Eine der Installationsvorraussetzungen besteht darin, dass der Server, auf dem der Agent installiert werden soll, mit einem Full Qualified Name konfiguriert ist. Wenn dieses noch nicht der Fall ist, editieren Sie die host-Konfigurationsdatei

  • UNIX-Systeme: /etc/hosts
  • MS Windows Systeme Windows\System32\Drivers\etc\hosts
Tragen Sie dort hinter der IP-Adresse des Servers den Langnamen ein, zum Beispiel
10.165.244.151        sccloud002.de.oracle.com
Normalerweise sollte der obige Eintrag helfen. Wenn Sie aber die hosts-Datei nicht editieren können, arbeiten Sie wie oben beschrieben mit einem Responsefile und fügen in das Responsefile den Parameter ORACLE_HOSTNAME hinzu:
ORACLE_HOSTNAME=<DNS Full Qualified Name des Zielservers>




Neuer Agent ist vom OMS aus nicht erreichbar

Dieses ist wahrscheinlich ein Netzwerkproblem. Bei MS Windows Servern prüfen Sie in diesem Fall, dass der Port des Agenten (Standard 3872) in der Firewall geöffnet ist. Erstellen Sie ggf. dafür eine neue Inbound-Rule.



Neuer Agent kennt keine Targets

In sehr seltenen Fällen findet der Agent nach seiner Installation keine Targets, nicht einmal den Host oder sich selbst. In diesem Fall können Sie diese internen Targets manuell hinzufügen mit
emctl config agent addInternalTargets
welches auf der Agentenseite ausgeführt wird.

Fazit

Ein Cloud Control kann auch ohne Zusatzsoftware recht einfach auf einem MS Windows Server installiert werden.

Lizenzhinweis

Die in diesem Tipp beschriebenen Funktionalitäten sind in der Basisfunktionalität von Cloud Control enthalten. Für ihre Nutzung ist keine Lizenz eines Management Packs notwendig.


Zurück zum Anfang des Artikels

Zurück zur Community-Seite