Oracle Enterprise Manager Grid Control 11g: Installation einer Multi-OMS Umgebung
von Ralf Durben, ORACLE Deutschland GmbH

Der Betrieb einer hochverfügbaren Grid Control Umgebung wird immer wichtiger. Aus diesem Grund zeigt dieser Tipp, wie eine solches hochverfügbares Grid Control aufgebaut wird. Eine theoretische Betrachtung findet sich in der Dokumentation "Oracle Enterprise Manager Administration 11g Release 1 (11.1.0.1)" im Part III "Enterprise Manager High Availability". Dort werden verschiedene Varianten diskutiert. An dieser Stelle möchte ich zeigen, wie eine Grid Control Umgebung mit mehreren aktiven OMS aufgebaut wird.

Die Idee ist dabei, dass der Ausfall eines OMS durch die noch weiter verfügbaren OMS kompensiert wird. Der OMS hat dabei drei wesentliche Aufgaben:

  • Er dient als Anwendungsserver. Die Anwendung Grid Control steht durch den OMS zur Verfügung
  • Er nimmt Monitoring-Daten von den Agenten entgegen und fügt diese in das Repository ein
  • Er steuert Jobs, die von den Agenten ausgeführt werden


Was muss also im Falle des Ausfalls eines OMS betrachtet werden?
  • Funktion als Anwendungsserver
    • Die Benutzer von Grid Control (also die Administratoren) sollen weiterhin Zugang zur Anwendung haben.
    • Der Zugang kann durch Eingabe einer alternativen URL erfolgen, nämlich der eines weiteren OMS.
    • Der Zugang kann durch Eingabe der gleiche URL erfolgen, wenn zwischen Benutzer und OMS ein Loadbalancer liegt. Der Benutzer gibt die URL des Loadbalancers ein und der sorgt dafür, dass der Benutzer zu einem verfügbaren OMS weitergeleitet wird.
  • Funktion als Empfänger von Monitoring Daten
    • Die Agenten schicken ihre Daten immer zu einem OMS, der ja bei Einrichtung des Agenten angegeben wird.
    • Bei Ausfall dieses OMS müssten die Agenten umkonfiguriert werden. Das ist mit dem Kommando "emctl secure agent" möglich aber nicht praktikabel bei einer größeren Anzahl von Agenten.
    • Der Agent kann die Daten aber auch an einen Loadbalancer schicken. Dieser dient als "Single Point of Contact" und verteilt die Daten auf die verfügbaren OMS. Diese OMS puffern die empfangenen Daten im Filesystem (Verzeichnis recv) und tragen die Daten dann später in das Repository ein. Da nun einer diese OMS ausfallen kann, sollten die verbleibenen OMS das Eintragen dieser Daten in das Repository übernehmen. Aus diesem Grund sollte das Verzeichnis recv ein von allen OMS gemeinsam genutztes Verzeichnis sein.
  • Funktion als Jobsteuerung
    • Alle OMS müssen Zugriff auf die Zielsysteme und das Repository haben. Da der OMS für die Jobsteuerung eine eigene Verbindung direkt zum Agenten aufbaut, ist hier nichts zu beachten.


Dieser Tipp zeigt, welche Schritte auf Seiten von Grid Control notwendig sind, um eine Multi-OMS Umgebung zu erstellen. Zur Konfiguration des Loadbalancers wird an der passenden Stelle auf entsprechende Dokumente verwiesen.

Der Betrieb einer hochverfügbaren Grid Control Umgebung sollte mit dem Einsatz einer hochverfügbaren Repository Datenbank verbunden sein. Dazu bietet sich der Einsatz von RAC (Real Applications Cluster) an. Die Installation einer RAC-Datenbank wird als bekannt vorausgesetzt und hier nicht näher beschrieben.

1. Schritt: Installation einer neuen Grid Control Umgebung

Wenn Sie mit einer neuen Grid Control Umgebung beginnen möchten, führen Sie eine Installation von Grid Control 11g durch, wie es in diesem Community Tipp beschrieben ist.


2. Schritt: Zusätzlichen OMS installieren

Sie installieren nun einen weiteren OMS auf einer anderen Maschine. Dort muß zunächst der Weblogic Server installiert werden, wie es in diesem Community Tipp beschrieben ist. Achten Sie dabei darauf, dass Sie als Middleware-Home das gleiche nehmen, wie beim ersten OMS! Die Verzeichnisstruktur der Grid Control Installationen der OMS muss identisch sein!

Dann starten Sie den Grid Control Installer
./runInstaller
Es erscheint der folgende bekannte Screen in dem Sie angeben können, unter welcher Mail-Adresse Sie Supporthinweise zum Thema Sicherheit geschickt bekommen möchten. Sie können in diesem Tipp alle Screenshots vergrößern, indem Sie darauf klicken.
Sie können nun die aktuellen und dringend empfohlenen Patches zu Grid Control 11g suchen und in die Installation einbinden. Dazu geben Sie die Support-ID und Passwort ein. Wenn Sie vom Server des neuen OMS per Proxy-Server mit dem Internet verbunden sind, klicken Sie auf Proxy Settings, um dieses zu konfigurieren.

Grundsätzlich sollten alle OMS mit den gleichen Patches laufen. Wenn Sie also im Folgenden nach aktuellen Patches suchen, Sie dieses bei der Installation des ersten OMS aber nicht gemacht haben, sollte der erste OMS später auch mit diesen Patches modifiziert werden.

Da in dem Community Tipp zur Installation von Grid Control 11g die Suche nach Patches im Installer nicht ausführlich gezeigt wurde, wird dieses hier nachgeholt.
Geben Sie Namen, Port und gegebenenfalls Authentifizierungsdaten ein und testen die Verbindung mit "Test Connection". Wenn die Verbindung erfolgreich ist, klicken Sie auf "OK".
Jetzt klicken Sie auf "Next".
Der Installer sucht jetzt nach den Patches...
...und zeigt an, welche gefunden zu haben. Klicken Sie auf "Download Updates"
Die gefundenen Patches werden angezeigt. Klicken Sie auf "Next".
Jetzt wählen Sie die zweiten Option "Add an additional Management Service", da der neue OMS ja gemeinsam mit dem schon existierenden OMS mit dem gleichen Repository arbeiten soll. Klicken Sie dann auf "Next".
Es finden wie üblich die Prüfungen statt, ob auch alle Voraussetzungen für eine Installation gegeben sind. Klicken Sie bei erfolgreicher Prüfung auf "Next".
Geben Sie nun die Verbindungsdaten zum Repository ein. Klicken Sie dann auf "Next".
Der Installer zeigt an, welches Middleware-Home er benutzen möchte. Prüfen Sie auf Korrektheit und klicken Sie dann auf "Next".
Jetzt geben Sie an, mit welchem Admin Server der erste OMS läuft. Als "Admin Server Host" geben Sie den Hostnamen des ersten OMS an. Der Port ist meistens 7101, kann aber auch variieren. Beide Informationen wurden am Ende der Installation des ersten OMS angezeigt. Der "Weblogic User Name" sollte "weblogic" sein und das Passwort wurde bei der Installation des ersten OMS angegeben. klicken Sie dann auf "Next".
Jetzt geben Sie das Registrierungspasswort ein. klicken Sie dann auf "Next".
Jetzt werden die genutzten Ports angezeigt. klicken Sie dann auf "Next".
Es erscheint eine Zusammenfassung. klicken Sie dann auf "Next".
Die Installation beginnt...
... und es dauert nicht lange bis ...
... das Skript allroot.sh vom Benutzer root ausgeführt werden soll.
Jetzt werden einige Konfigurationsschritte durchgeführt. Es sind weniger Schritte, als bei der Installation des ersten OMS, da ja zum Beispiel das Repository nicht neu erstellt werden muss. Jetzt heisst es warten...
... bis das Ende der Installation angezeigt wird. Dieses Fenster sollte aber nicht einfach weggeklickt werden, da es wichtige Konfigurationsschritte angibt, die noch durchzuführen sind! Scrollen Sie das Fenster nach unten.
Sie müssen die angegebene URL aufrufen, um die Weblogic Domain zu konfigurieren.
Klicken Sie mit der rechten Maustaste auf "GCDomain" und wählen den Menüpunkt "Refresh Weblogic Domain".
Klicken Sie auf "Continue".
Klicken Sie auf "Close".
Klicken Sie auf "Add Targets".
Klicken Sie auf "Close".
Klicken Sie auf "OK" und die Konfiguration ist fertig.





3. Schritt: Gemeinsames Verzeichnis für die empfangenen Monitoring Daten konfigurieren.

Wie oben schon beschrieben, benötigen die OMS ein gemeinsames Verzeichnis für den Empfang der Monitoring-Daten von den Agenten. Es wird im Folgenden von zwei OMS ausgegangen. Bei mehreren OMS müssen alle Schritte für die weiteren OMS auch ausgeführt werden. Folgende Schritte sind auszuführen:
  • 1. Erstellen Sie ein Verzeichnis in einem Shared Storage. Im Folgenden wird dieses Verzeichnis mit SHARED_STORAGE bezeichnet. Ersetzen Sie in den folgenden Kommandos also SHARED_STORAGE durch Ihr konkretes Shared Verzeichnis.
  • 2. Testen Sie, ob beide OMS Zugriff haben. Erstellen Sie auf jedem OMS eine Datei und prüfen Sie, ob diese Datei vom anderen OMS geöffnet werden kann. Prüfen Sie auf, ob beide OMS die gleiche Sicht auf das Verzeichnis haben (den gleichen Inhalt sehen).
  • OMS1> echo 123 > SHARED_STORAGE/wdg1
    OMS2> echo 123 > SHARED_STORAGE/wdg2
    OMS1> more SHARED_STORAGE/wdg2
    OMS2> more SHARED_STORAGE/wdg1
    OMS1> ls SHARED_STORAGE
    OMS2> ls SHARED_STORAGE
    
  • 3. Stoppen Sie alle OMS
  • OMS1> emctl stop oms -all
    OMS2> emctl stop oms -all
    
  • 4. Konfigurieren Sie das Shared Verzeichnis
  • OMS1> emctl config oms loader -shared yes -dir SHARED_STORAGE
    OMS2> emctl config oms loader -shared yes -dir SHARED_STORAGE
    
  • 5. Starten Sie die OMS
  • Eigentlich sollte der OMS im Schritt 4 wieder gestartet werden. Sollte dieses wider Erwarten nicht der Fall sein, so starten Sie die OMS mit
    OMS1> emctl start oms
    OMS2> emctl start oms
    



4. Schritt: Server Load Balancer (SLB) konfigurieren

Jetzt muss der Load Balancer konfiguriert werden. Die Konfiguration ist je nach eingesetztem Loadbalancer unterschiedlich. Es gibt Beschreibungen für ACHTUNG: Die Dokumente empfehlen, die Konfiguration des OMS zum Empfang von Monitoring-Daten über den SLB vor der Loadbalancer-Konfiguration zu betreiben. Aus meiner Erfahrung heraus empfehle ich die in diesem Tipp angegebene (umgekehrte) Reihenfolge. Konfigurieren Sie alle Ports, wie es in den Dokumenten angegeben ist.

Wenn die Konfiguration des SLB abgeschlossen ist, sollte der Benutzerzugang zu Grid Control über den SLB funktionieren. Geben Sie dazu in Ihrem Browser die URL
https://myslb.domain.com:7799/em
ein (Es wird hier von dem Default Port 7799 ausgegangen). Grid Control sollte im Browser erscheinen. Die Konfiguration für den Benutzerzugriff ist also erfolgreich.


5. Schritt: OMS zum Empfang von Monitoring Daten über SLB konfigurieren

Die Agenten sollen ihre Monitoring-Daten ja an den SLB schicken und nicht mehr direkt an einen OMS. Da die Kommunikation über SSL geschieht und dabei Zertifikate zum Einsatz kommen, müssen diese an den Einsatz des SLB angepasst werden.

  • 1. Status des OMS abrufen
    • Rufen Sie den Status der OMS ab mit
      OMS1>emctl status oms -details
      Oracle Enterprise Manager 11g Release 1 Grid Control
      Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.
      Enter Enterprise Manager Root (SYSMAN) Password :
      Console Server Host : gridcontrol.de.oracle.com
      HTTP Console Port   : 7788
      HTTPS Console Port  : 7799
      HTTP Upload Port    : 4889
      HTTPS Upload Port   : 1159
      OMS is not configured with SLB or virtual hostname
      Agent Upload is locked.
      OMS Console is locked.
      Active CA ID: 1
      
      Wichtig ist hier zum einen der HTTPS Upload Port (in diesem Fall 1159) und zum anderen die Aussage, dass "OMS is not configured with SLB or virtual hostname". Dieses werden Sie jetzt ändern.


  • 2. OMS umkonfigurieren
    • Wenn dabei die eingesetzten Ports übernommen werden sollen, also wenn der HTTPS Upload Port des OMS (hier 1159) auch vom SLB genutzt werden soll, geben Sie für alle OMS das Kommando
      OMS1> emctl secure oms -host myslb.domain.com
      OMS2> emctl secure oms -host myslb.domain.com
      
      ein. Wenn die Ports gewechselt werden sollen, können Sie die neuen Ports per Parameter angeben, z.B.
      OMS1> emctl secure oms -host myslb.domain.com -slb_port 1158 -slb_console_port 443
      OMS2> emctl secure oms -host myslb.domain.com -slb_port 1158 -slb_console_port 443
      
      In diesem Fall ist der Upload Port nun 1158 und der Konsolen Port 443, was bedeutet, dass die Konsole erreichbar ist über
      https://myslb.domain.com:443/em
      
      und die Agenten ihre Daten hochladen nach
      https://myslb.domain.com:1158/em/upload
      


  • 3. OMS neu starten
    • Dieser Schritt ist sehr wichtig, da sonst die neuen Einstellungen nicht wirken! Geben Sie also für alle OMS ein:
      OMS1> emctl stop oms
      OMS1> emctl start oms
      OMS2> emctl stop oms
      OMS2> emctl start oms
      


  • 4. Status des OMS prüfen
    • Rufen Sie den Status der OMS erneut ab mit
      OMS1>emctl status oms -details
      Oracle Enterprise Manager 11g Release 1 Grid Control
      Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.
      Enter Enterprise Manager Root (SYSMAN) Password :
      Console Server Host : gridcontrol.de.oracle.com
      HTTP Console Port   : 7788
      HTTPS Console Port  : 7799
      HTTP Upload Port    : 4889
      HTTPS Upload Port   : 1159
      SLB or virtual hostname: myslb.domain.com
      Agent Upload is unlocked.
      OMS Console is unlocked.
      Active CA ID: 1
      


  • 5. Neuen Upload Port testen
    • Starten Sie einen Browser und geben die HTTPS Upload URL ein, also in diesem Fall:
      https://myslb.domain.com:1159/em/upload
      
      Das Ergebnis sollte wie folgt aussehen:
      Http XML File receiver
      Http Receiver Servlet active!
      Product version is: 11g
      Product release version is: 11.1.0.1.0
      Core release version is: 11.1.0.1.0 
      
      Der Erfolg dieses Zugriffs ist Voraussetzung für den nächsten Schritt, der Konfiguration der Agenten.



6. Schritt: Konfiguration der Agenten

Die Agenten werden jetzt für die neue Upload Adresse konfiguriert. Dazu geben Sie auf der Agentenseite folgendes Kommando ein:
emctl secure agent -emdWalletSrcUrl https://myslb.domain.com:1159/em 
Sie geben das Registrierungspasswort für die Agenten neu ein und der Agent wird neu konfiguriert. Prüfen Sie die neue Konfiguration mit
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/installations/mw/agent11g
Agent binaries    : /oracle/installations/mw/agent11g
Agent Process ID  : 16273
Parent Process ID : 16253
Agent URL         : https://gridcontrol.de.oracle.com:3872/emd/main/
Repository URL    : https://myslb.domain.com:1159/em/upload
Started at        : 2010-09-22 18:33:59
Started by user   : oracle
Last Reload       : 2010-09-23 09:50:26
Last successful upload                       : 2010-11-25 15:01:34
Total Megabytes of XML files uploaded so far :  8442.62
Number of XML files pending upload           :        0
Size of XML files pending upload(MB)         :     0.00
Available disk space on upload filesystem    :    67.85%
Last successful heartbeat to OMS             : 2010-11-25 15:03:58
---------------------------------------------------------------
Agent is Running and Ready
Die Repository URL sollte jetzt auf den SLB gerichtet sein. Sie können noch einen Upload initiieren mit
AGENT> emctl upload agent
Oracle Enterprise Manager 11g Release 1 Grid Control 11.1.0.1.0
Copyright (c) 1996, 2010 Oracle Corporation.  All rights reserved.
---------------------------------------------------------------
EMD upload completed successfully
um ganz sicher zu gehen.


Ergebnis

Mit dieser Anleitung erstellen Sie eine Grid Control Umgebung mit mehreren aktiven OMS. Die Kommunikation zwischen Benutzer und OMS bzw. Agent und OMS findet über einen Loadbalancer (SLB) statt.

Dieser Tipp möchte einen schnellen Zugang zur Installation einer Multi-OMS Umgebung von Grid Control 11g geben. Weitere Details finden Sie in My Oracle Support in der Note:
  • Master Note for Grid Control 11.1.0.1.0 Installation and Upgrade [Doc ID 1067438.1]
  • How to Configure Two OMS's Using Cisco ACE SLB (Doc ID 1217253.1)


Zurück zur Community-Seite