Blog

Installation des Oracle Enterprise Managers

Attila
IT–Consultant

In diesem Artikel gehen wir verschärft auf den Enterprise Manager von Oracle ein und erklären Ihnen Schritt für Schritt, wie Sie diesen direkt installieren können.

Was ist der Enterprise Manager eigentlich?

Der Oracle Enterprise Manager, auch OEM genannt, ist eine integrierte IT-Management-Produktlinie von Oracle, die branchenweit die einzige vollständige, integrierte und geschäftsorientierte Cloud-Management-Lösung für Unternehmen bietet.

Zu den Schlüsselfunktionen von Enterprise Manager gehören:

  • Eine vollständige Cloud-Lifecycle-Management-Lösung, mit der Sie Clouds und traditionelle Oracle-IT-Umgebungen von der Anwendung, bis zur Festplatte schnell einrichten, verwalten und unterstützen können.
  • Intelligentes Management der Oracle Systeme mit Echtzeit-Integration in jede Kundenumgebung.
  • Bestes Servicelevel für traditionelle und Cloud-Anwendungen, durch geschäftsorientiertes Anwendungsmanagement.

Targets:
Die Zieltypen sind Oracle Datenbanken, Fusion-Middleware, Exadata, Cloud-Framework und Systeminfrastruktur spezifische Targets. Unter anderem: Datenbank Instanzen, Clouddienste, Serverhardware, Betriebssysteme uvm.

Plug-Ins:
Plug-Ins bieten spezielle Verwaltungsfunktionen an, die an bestimmte Zieltypen / Targets angepasst sind. Die Plug-Ins arbeiten in der Enterprise Manager Cloud Control in Verbindung mit dem Oracle Management Server (OMS , s.u.) und dem Management Agent, um jedes Ziel in seiner Umgebung zu überwachen. Daher werden sie sowohl im Oracle Management Server, als auch im Management Agent bereitgestellt.

Agent:
Der Management Agent ist eine integrale Softwarekomponente, die es ermöglicht, einen nicht verwalteten Host in einen verwalteten Host im Enterprise Manager-System umzuwandeln. Der Management Agent arbeitet mit den Plug-Ins zusammen, um die Targets zu überwachen, die auf verwalteten Hosts ausgeführt werden.

OMS:
Oracle Management Server ist eine webbasierte Anwendung, die mit den Management Agents und den Plug-Ins orchestriert wird, um Targets zu erkennen, zu überwachen und zu verwalten. Die gesammelten Informationen werden in einem Repository, beispielsweise in einer Oracle Datenbank, für zukünftige Referenzen und Analysen gespeichert. Der OMS rendert auch die Benutzeroberfläche für Enterprise Manager Cloud Control.

Systemanforderungen

Das System muss den Anforderungen der passenden Installationsversion entsprechen. Dabei wird nach Anzahl der OMS Instanzen, Targets, Agents und aktiver User Sessions unterschieden:

Wenn die Repository Datenbank und der OMS auf dem gleichen Host Installiert werden, muss man die System Anforderung der Datenbank mit in Betracht ziehen.

Repository Datenbank erstellen

Zuerst müssen wir eine Repository Datenbank erstellen. Oracle bietet hier eine Reihe an Templates für die verschiedenen Installationsversionen zum Download an.

Laden wir also das passende Template von folgendem Link herunter und entpacken es unter dem Template Verzeichnis in dbhome.
Database Template for Installing Oracle Enterprise Manager Cloud Control 13c Release 5

$ cd /u01/app/oracle/product/19.0.0/dbhome_1/assistants/dbca/templates/
$ unzip < Download Verzeichniss >/19_11_0_0_0_Database_Template_with_cdbpdb_for_EM13_5_0_0_0_Linux_x64.zip

Die Installation der Datenbank erfolgt wie bei anderen Datenbanken mit dbca. Der einzige Unterschied ist, dass man nach der Auswahl der erweiterten Konfiguration das Template für die Deployment Größe auswählen muss.

Oracle weist darauf hin, dass man den Haken der EM Konfiguration entfernen muss (vgl. folgende Abbildung), weil wir noch keinen Enterprise Manager haben.

Konfiguration

Wenn die Datenbank zu Verfügung steht, können wir mit den Vorbereitungen für den Enterprise Manager fortfahren. Wir haben die Container Version installiert. Den Container haben wir REPO benannt. Die Pluggable Datenbank wurde vom Template EMPDBREPOS benannt.

In der Datenbank muss man folgende Parameter anpassen bzw. löschen und anschließend die Datenbank neu starten.

SQL> alter system set "_allow_insert_with_update_check"=true container=all scope=both;
SQL> alter system set session_cached_cursors=200 container=all scope=spfile;
SQL>
SQL> alter system reset "_optimizer_nlj_hj_adaptive_join" scope=both;
SQL> alter system reset "_optimizer_strans_adaptive_pruning" scope=both;
SQL> alter system reset "_px_adaptive_dist_method" scope=both;
SQL> alter system reset "_sql_plan_directive_mgmt_control" scope=both;
SQL> alter system reset "_optimizer_dsdir_usage_control" scope=both;
SQL> alter system reset "_optimizer_use_feedback" scope=both;
SQL> alter system reset "_optimizer_gather_feedback" scope=both;
SQL> alter system reset "_optimizer_performance_feedback" scope=both;
SQL>
SQL> shutdown immediate;
SQL> startup;

Anschließend prüfen wir, ob die Parameter richtig eingestellt sind.

SQL> show parameter "_allow_insert_with_update_check"
SQL> show parameter session_cached_cursors
SQL> show parameter "_optimizer_nlj_hj_adaptive_join"
SQL> show parameter "_optimizer_strans_adaptive_pruning"
SQL> show parameter "_px_adaptive_dist_method"
SQL> show parameter "_sql_plan_directive_mgmt_control"
SQL> show parameter "_optimizer_dsdir_usage_control"
SQL> show parameter "_optimizer_use_feedback"
SQL> show parameter "_optimizer_gather_feedback"
SQL> show parameter "_optimizer_performance_feedback"

Als Ergebnis sollten nun die Befehle nur für die ersten zwei Parameter einen Wert ausgeben. Die anderen Parameter sollten bestmöglich ohne Wert ausgegeben werden.

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------ _allow_insert_with_update_check boolean TRUE

session_cached_cursors integer 200

Anschließend prüfen wir, ob die Pluggable Datenbank EMPDBREPOS erreichbar ist.

$ tnsping empdbrepos

Ist die Datenbank erreichbar, gibt sie folgenden Wert als Rückmeldung:

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = orarepo)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = EMPDBREPOS)))
OK (200 msec)

Ist sie nicht erreichbar, müssen wir die Datei namens tnsnames.ora mit folgendem Befehl ergänzen.

$ vi /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/tnsnames.ora

und folgenden Eintrag machen:

EMPDBREPOS =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orarepo)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = EMPDBREPOS)
)
)

Bevor wir mit der Installation vom Enterprise Manager starten, sollten wir noch die Tempfiles prüfen. Ohne Temp Datei wird der Installer voraussichtlich bei 50% abbrechen.

SQL> select tb.tablespace_name, tf.file_name from dba_tablespaces tb left join dba_temp_files tf on tf.tablespace_name = tb.tablespace_name where tb.contents = 'TEMPORARY';

Ist der Container okay, kommt folgende Meldung:

TABLESPACE_NAME FILE_NAME
--------------------------------------------------------------------------

TEMP /u01/app/oracle/oradata/REPO/temp01.dbf

Hier fällt dennoch auf, dass EMPDBREPOS im Tempfile fehlt. Mit folgendem Befehl ergänzen wir dies im Tempfile.

SQL> alter session set container=EMPDBREPOS;
SQL> select tb.tablespace_name, tf.file_name from dba_tablespaces tb left join dba_temp_files tf on tf.tablespace_name = tb.tablespace_name where tb.contents = 'TEMPORARY';

Hat alles geklappt, kommt folgende Meldung:

TABLESPACE_NAME FILE_NAME

--------------- ------------------------------------------------------------------------- TEMP

Die Tempdatei erstellen wir mit folgendem Befehl:

SQL> alter tablespace TEMP add tempfile '/u01/app/oracle/oradata/REPO/EMPDBREPOS/emtemp01.dbf' size 2G reuse autoextend on next 100M maxsize 32767M;

Wichtig:
Frühere Installationen haben gezeigt, dass trotz Installation der 64 bit Version des glibc-devel Paketes auch das i686 Paket und das gcc Paket installiert werden müssen, damit die Checks sauber durchlaufen.

$ yum install -y glibc-devel.i686 gcc

Mit folgendem Befehl muss der fehlende Kernel Parameter für den Port Range angepasst werden.

$ sysctl -w net.ipv4.ip_local_port_range="11000 65000"
$ vi /etc/sysctl.conf
# Folgenden Wert korrigieren:
net.ipv4.ip_local_port_range=11000 65000

Installation

Da unsere Konfiguration weniger als 100 Targets überwachen wird, können wir mit der Simple Installation fortfahren.

Für Updates und Patches können wir ein lokales Verzeichnis auswählen oder mittels des angegebenen Support Users diese herunterladen. Um die neuesten Updates zu finden, muss wählen wir die Schaltfläche “Search for Updates” aus. Wenn es keine gibt oder man die Updates zu einem späteren Zeitpunkt installieren möchte, kann dieser Schritt auch mit Skip übersprungen werden.

Die Prerequisite Checks sollten nun keine Fehler mehr ergeben. Falls es Warnungen geben sollte, empfehlen wir dringend diese zu prüfen, bevor man mit dem Next Button zur nächsten Seite geht. Bestenfalls sollten alle Prüfergebnisse auf Succeeded stehen. Entscheidet man sich die Fehler zu ignorieren, muss dies im Falle des Falles explizit bestätigt werden.

Auf der nächsten Seite geben wir das Verzeichnis der Middleware und das Home-Verzeichnis des Agenten an. Der Installer erstellt die fehlenden Verzeichnisse, falls sie nicht vorhanden sein sollten.

Als nächstes geben wir das Admin Passwort und die Daten der Parameter für den Zugriff auf die Repository Datenbank ein.

Es folgen nun die Datenbank Checks:

Wenn sich die Installation bei der Passwort Verifikation beschwert, empfehlen wir die Passwort Verifikation im Default-Profil (wie im folgenden Statement dargestellt) auszuschalten.

SQL> alter profile default limit password_verify_function null;

Alternativ können wir prüfen, ob sich die PDB für das Repository geöffnet hat. Dafür starten wir diese mit folgendem Befehl:

SQL> alter pluggable database EMPDBREPOS open;

Prüfen Sie erneut mit Check Again.
Der Status sollte nun auf Succeeded wechseln und wir können auf die nächste Seite mit next weitergehen.

Jetzt geht es an die Spezifizierung eines Verzeichnisses für die Software Library.

Oracle Software Library: Technisch gesehen handelt es sich um ein Repository, das Softwareentitäten wie Software-Patches, Images virtueller Appliances, Referenz-Gold-Images, Anwendungssoftware und die zugehörigen Skripte speichert. Neben der Speicherung können Sie damit auch Versionen, Reifegrade und Zustände dieser Softwareentitäten pflegen.

Nun schauen wir uns noch die Zusammenfassung der Installation an:

Während des Installationsprozesses werden wir aufgefordert, das allroot.sh Skript mit dem root User auszuführen:

Wenn die Installation fertig ist, werden die wichtigsten URLs aufgelistet. Diese Information können wir später auch noch unter folgendem Pfad finden:

$ /u01/app/oracle/em13c/middleware/install/setupinfo.txt

Im nächsten Schritt öffnen wir nach der Installation die CloudControl Webseite, gelangen wir bei der ersten Verwendung zu den Lizenzbedingungen, die wir in diesem Schritt bestätigen.

Nach der Bestätigung der Lizenzbedingungen und ebenfalls nur bei der ersten Verwendung wird man dann aufgefordert, eine Voreinstellung der Homepage als Favorit/Startseite vorzunehmen. In der folgenden Abbildung sieht man die Auswahl den Überblick (“Summary”).

Die Einstellungen können jedoch nachträglich nochmals geändert werden, sofern dies gewünscht ist.

Fazit

Die Installation ist nun erfolgreich abgeschlossen worden.
Wir haben in den vorhergehenden Abschnitten zunächst den Enterprise Manager in Kürze erklärt, als auch ihn anschließend installiert. Nächste Schritte wären in dem Fall, dass Agents auf den entsprechenden Zielservern installiert werden. Diesem Thema widmen wir uns in einem der nächsten Blogbeiträge.

Sollten Sie Fragen zum Oracle Enterprise Manager oder dem Installationsprozess haben, stehen Ihnen unsere Oracle Experten gerne zur Verfügung.
Fragen Sie uns dafür gerne ganz unverbindlich über unser Kontaktformular an. Gerne helfen wir Ihnen weiter!

Interesse geweckt?
Vielen Dank! Wir haben Ihre Anfrage erhalten!
Oops! Beim Senden ist etwas schiefgegangen, versuche es erneut.