Installation Oracle Real Application Cluster 11gR2 unter CentOS 5.5 – Teil 1

Ziel

Dieser Blogeintrag beschreibt die Installation der Oracle Grid Infrastructure 11g Release 2 (vor 11g R2 unter dem Namen Clusterware bekannt). Die Installation des Betriebssystems ist nicht Bestandteil dieser Anleitung. Für das Shared Storage System wird iSCSI, das mithilfe von OpenFiler bereit gestellt wird, verwendet. Die Konfiguration von OpenFiler und iSCSI Targets finden Sie hier.

 

Hardware & Software

Der Oracle Real Application Cluster wird aus zwei Knoten bestehen, die als Betriebssystem CentOS 5.5 in der 32-bit Version verwenden. Die Oracle Software wird in der Version 11g Release 2 ohne aktuelle Patchsets installiert. Das Aktualisieren der Oracle Software durch ein aktuelles Patchset wird Bestandteil eines der weiteren Blogeinträge werden.

 

Die Oracle Software kann über das Oracle Technology Network (http://otn.oracle.com) oder über E-Delivery (http://edelivery.oracle.com) heruntergeladen werden.

CentOS kann kostenfrei über die Webseite http://www.centos.org bezogen werden.

 

Als Hardware kommen zwei virtuelle Maschinen zum Einsatz. Die dafür eingesetzte Virtualisierungssoftware ist VMWare ESX Server 3.5. Jede der beiden virtuellen Maschine weist folgende “Hardware” auf:

  • 1x CPU
  • 2048 MB RAM
  • 2x Netzwerkkarten (Typ: Flexible)
    • eth0: Public
    • eth1: Interconnect
  • 1x SCSI Controller (Typ: LSI Logic)
  • 1x SCSI HDD 12 GB 
    • swap (3096 MB)
    • /boot (100 MB)
    • /tmp (2048 MB)
    • / (der Rest)
  • 1x SCSI HDD 12 GB 
    • /u01 (12 GB)

Hinweise zur Betriebssystem Installation

Während der Installation des Betriebssystems wurden für die Testumgebung die Firewall und die SELinux Funktion deaktiviert.

Für die Zeitsynchronisation habe ich nicht den NTP Daemon aktiviert. Die Zeitsynchronisation wird durch den neuen Oracle Dienst Oracle Cluster Time Synchronisation Service (CTSS) zur Veranschaulichung der Funktionsweise übernommen.

 

Vorbereitung des Betriebssystems

Für eine fehlerfreie Installation der Oracle Grid Infrastructure und Database müssen zunächst einige Konfigurationsdateien des Betriebssystems angepasst werden.

 

Shared Storage vorbereiten

Als Shared Storage für den RAC wird auf iSCSI gesetzt. Die iSCSI Target stellt ein auf OpenFiler basierender virtueller Server bereit, der unter der IP-Adresse 192.168.100.160 erreichbar ist. Für diesen Zweck muss zunächst der iSCSI Initiator installiert und konfiguriert werden.

Nach der Installation muss der iscsi Daemon gestartet werden.

[root@rac01-1 mnt]# /etc/init.d/iscsi start iscsid wurde angehalten                                          [  OK  ] Starting iSCSI daemon:                                          [  OK  ] iSCSI-Ziele werden konfiguriert: iscsiadm: No records found!    [  OK  ]

Im nächsten Schritt kann nun nach den iSCSI Targets gescannt werden.

[root@rac01-1 mnt]#  iscsiadm -m discovery -t sendtargets -p 192.168.100.160 192.168.100.160:3260,1 iqn.2006-01.com.openfiler:tsn.3b1b9155dd4f
Nach dem Scannen muss der iscsi Daemon neugestartet werden, damit die iSCSI Targets verwendet werden können.
[root@rac01-1 mnt]# /etc/init.d/iscsi restart Stopping iSCSI daemon:                                                                    [  OK  ] iscsid tot, aber PID-Datei existiert                                                            [  OK  ] Starting iSCSI daemon:                                                                    [  OK  ] iSCSI-Ziele werden konfiguriert: Logging in to [iface: default, target: iqn.2006-01.com.openfiler:tsn.3b1b9155dd4f, portal: 192.168.100.160,3260] Login to [iface: default, target: iqn.2006-01.com.openfiler:tsn.3b1b9155dd4f, portal: 192.168.100.160,3260]: successful                    [  OK  ]
Mithilfe von fdisk lässt sich nun der Device Name ermitteln.
[root@rac01-1 mnt]# fdisk -l Platte /dev/sda: 12.8 GByte, 12884901888 Byte 255 heads, 63 sectors/track, 1566 cylinders Einheiten = Zylinder von 16065 á 512 = 8225280 Bytes Gerät  boot.     Anfang        Ende     Blöcke   Id  System /dev/sda1   *           1          13      104391   83  Linux /dev/sda2              14         408     3172837+  82  Linux Swap / Solaris /dev/sda3             409         539     1052257+  83  Linux /dev/sda4             540        1566     8249377+   5  Erweiterte /dev/sda5             540        1566     8249346   83  Linux Platte /dev/sdb: 12.8 GByte, 12884901888 Byte 255 heads, 63 sectors/track, 1566 cylinders Einheiten = Zylinder von 16065 á 512 = 8225280 Bytes Gerät  boot.     Anfang        Ende     Blöcke   Id  System /dev/sdb1   *           1        1566    12578863+  83  Linux Platte /dev/sdc: 1073 MByte, 1073741824 Byte 34 heads, 61 sectors/track, 1011 cylinders Einheiten = Zylinder von 2074 á 512 = 1061888 Bytes Festplatte /dev/sdc enthält keine gültige Partitionstabelle
Das gefundene iSCSI Target ist unter /dev/sdc eingebunden und kann nun formatiert werden.
[root@rac01-1 mnt]# fdisk /dev/sdc Das Gerät enthält weder eine gültige DOS-Partitionstabelle, noch einen Sun, SGI oder OSF disklabel Erstelle neue DOS-Bootsektoren. Die Änderungen werden vorerst nur im Speicher gemacht, bis Sie sich entscheiden, sie zu schreiben. Danach ist natürlich der vorherige Inhalt unrettbar verloren. Warnung: Schreiben wird ungültiges Flag 0x0000 in Part.-tabelle 4 korrigieren Befehl (m für Hilfe): n Befehl  Aktion e      Erweiterte p      Primäre Partition (1-4) p Partitionsnummer (1-4): 1 Erster Zylinder (1-1011, Vorgabe: 1): Benutze den Standardwert 1 Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (1-1011, Vorgabe: 1011): Benutze den Standardwert 1011 Befehl (m für Hilfe): p Platte /dev/sdc: 1073 MByte, 1073741824 Byte 34 heads, 61 sectors/track, 1011 cylinders Einheiten = Zylinder von 2074 à 512 = 1061888 Bytes Gerät  boot.     Anfang        Ende     Blöcke   Id  System /dev/sdc1               1        1011     1048376+  83  Linux Befehl (m für Hilfe): w Die Partitionstabelle wurde verändert! Rufe ioctl() um Partitionstabelle neu einzulesen. Synchronisiere Platten.

Benutzer und Gruppen zulegen

 
Für eine klare Trennung der Aufgaben und Berechtigungen werden zwei Benutzer angelegt. Der Benutzer grid ist der Besitzer der Oracle Grid Infrastructure und der Benutzer oracle ist der Besitzer der Oracle Database Installation. Dieser Ansatz entspricht einer Best Practice von Oracle.
[root@rac01-1 ~]# groupadd -g 1000 oinstall [root@rac01-1 ~]# groupadd -g 1001 dba [root@rac01-1 ~]# groupadd -g 1002 oper [root@rac01-1 ~]# groupadd -g 1003 asmadmin [root@rac01-1 ~]# groupadd -g 1004 asmdba [root@rac01-1 ~]# groupadd -g 1005 asmoper [root@rac01-1 ~]# useradd -u 1000 -g oinstall -G  asmadmin,asmdba,asmoper,dba grid [root@rac01-1 ~]# passwd grid [root@rac01-1 ~]# useradd -u 1001 -g oinstall -G  dba,oper,asmdba oracle [root@rac01-1 ~]# passwd oracle

Verzeichnisse anlegen

In diesem Schritt werden die benötigten Verzeichnisse angelegt. Die Verzeichnisse orientieren sich an der Oracle Flexiable Architecture (OFA). Bei der OFA werden die Verzeichnisse in der Form /u0[1-9]/app/<Benutzer> angelegt.

[root@rac01-1 ~]# mkdir -p /u01/app/grid/ [root@rac01-1 ~]# mkdir -p /u01/app/grid/ [root@rac01-1 ~]# mkdir -p /u01/app/grid/software [root@rac01-1 ~]# mkdir -p /u01/app/11.2.0/grid [root@rac01-1 ~]# mkdir -p /u01/app/oraInventory [root@rac01-1 ~]# chown -R grid:oinstall /u01/app/grid/ /u01/app/11.2.0/grid /u01/app/oraInventory [root@rac01-1 ~]# mkdir -p /u01/app/oracle/ [root@rac01-1 ~]# mkdir -p /u01/app/oracle/software [root@rac01-1 ~]# chown -R oracle:oinstall /u01/app/oracle/

Konfiguration der Netzwerkkarten

 

Für die Kommunikation der Knoten untereinander muss die /etc/hosts Datei wie folgt angepasst werden.

[root@rac01-1 ~]# vi /etc/hosts # Public Interface 192.168.100.180          rac01-1.dba.de        rac01-1 192.168.100.181          rac01-2.dba.de        rac01-2 # Private Interface 10.10.10.1               rac01-1-priv.dba.de   rac01-1-priv 10.10.10.2               rac01-2-priv.dba.de   rac01-2-priv # Virtual Interface 192.168.100.190          rac01-1-vip.dba.de    rac01-1-vip 192.168.100.191          rac01-2-vip.dba.de    rac01-2-vip # SCAN 192.168.100.195          rac01.dba.de          rac01

Hinweis: Der Eintrag für den Loopback Adapater (127.0.0.1) darf nicht den Servernamen enthalten und muss wie folgt aussehen.

127.0.0.1               localhost.localdomain localhost

Die Erklärung der einzelnen Interfaces wird an späterer Stelle vorgenommen.

Name Service Cache Daemon aktivieren

 

Um Netzwerkfehler im Zusammenhang mit Oracle RAC und NAS Geräten oder NFS Mounts zu vermeiden, wird der Name Service Cache Daemon aktiviert.

Überprüfung, ob der Daemon bereits läuft

[root@rac01-1 ~]# chkconfig --list nscd nscd            0:Aus   1:Aus   2:Aus   3:Aus   4:Aus   5:Aus   6:Aus

Der Daemon sollte für die Run Level 3 und 5 aktiviert sein.

[root@rac01-1 ~]# chkconfig --level 35 nscd on

Neustarten des Dienstes mit den neuen Einstellungen.

[root@rac01-1 ~]# service nscd start nscd starten:                                              [  OK  ]

Softwarepakete installieren

 

Es müssen die folgende Pakete auf dem System installiert sein.

* binutils-2.17.50.0.6 * compat-libstdc++-33-3.2.3 * elfutils-libelf-0.125 * elfutils-libelf-devel-0.125 * elfutils-libelf-devel-static-0.125 * gcc-4.1.2 * gcc-c++-4.1.2 * glibc-2.5-24 * glibc-common-2.5 * glibc-devel-2.5 * glibc-headers-2.5 * kernel-headers-2.6.18 * ksh-20060214 * libaio-0.3.106 * libaio-devel-0.3.106 * libgcc-4.1.2 * libgomp-4.1.2 * libstdc++-4.1.2 * libstdc++-devel-4.1.2 * make-3.81 * sysstat-7.0.2 * unixODBC-2.2.11 * unixODBC-devel-2.2.11

Eine vereinfachte Installation aller notwendigen Pakete kann mit YUM durchgeführt werden.

[root@rac01-1 ~]# yum install binutils compat-libstdc++-33  elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++  glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio  libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC  unixODBC-devel

Network Time Protokoll Einstellungen vornehmen

Mit der Einführung der Datenbankversion 11gR2 wurde ein neuer Dienst für die Zeitsynchronisation, der Cluster Time Synchronisation Service (CTSS) eingeführt. Dieser Dienst kümmert sich optional um die Synchronisation der Uhrzeit auf allen Knoten. Alternativ kann weiterhin auf das Network Time Protokoll für die Zeitsynchronisation zurückgreifen.

Oracle verwendet den CTSS, wenn es keinen konfigurierten NTP Dienst auf dem Knoten findet. Um den NTP Dienst auf einem Knoten zu deaktivieren müssen die folgenden Schritte durchgeführt werden.

[root@rac01-1 ~]# service ntpd stop [root@rac01-1 ~]# chkconfig ntpd off [root@rac01-1 ~]# mv /etc/ntp.conf /etc/ntp.conf.org

Soll der NTP Dienst anstatt der CTSS verwendet werden, muss für den NTP Dienst das x-Flag gesetzt werden. Das x-Flag sorgt dafür, dass die Uhrzeit nicht zurückgestellt werden kann. Dafür wird die Datei /etc/sysconfig/ntpd wie folgt angepasst.

[root@rac01-1 ~]# vi /etc/sysconfig/ntpd # Drop root to id 'ntp:ntp' by  default. OPTIONS="-x -u ntp:ntp  -p /var/run/ntpd.pid" # Set to 'yes' to sync hw clock after successful  ntpdate SYNC_HWCLOCK=no # Additional options for  ntpdate
NTPDATE_OPTIONS=""

Neustarten des NTP Dienstes

[root@rac01-1 ~]# service  ntpd restart

cvuqdisk Paket installieren

Damit das Cluster Verification Utility (Cluvfly) bei der Überprüfung der Systemanforderungen auf den Shared Storage zugreifen kann, muss das cvuqdisk Paket installiert werden. Das Paket befindet sich auf der Installations DVD der Oracle Grid Instrastructure in dem Verzeichnis ../grid/rpm.

[root@rac01-1 ~]# CVUQDISK_GRP=oinstall; export CVUQDISK_GRP [root@rac01-1 rpm]# rpm -ivh cvuqdisk-1.0.7-1.rpm Vorbereiten...              ########################################### [100%] 1:cvuqdisk                  ########################################### [100%]

Kernel Parameter setzen

Es müssen die folgenden Kernelparameter in der Datei /etc/sysctl.conf hinzugefügt bzw. angepasst werden.

kernel.shmall = 268435456 kernel.shmmax = 4294967295 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 2097152 vm.hugetlb_shm_group = 1001

Weitere Informationen zu den Kernel Parameter findet man in der Oracle Support Note 301830.1.

Übernehmen der neuen Kernel Einstellungen

[root@rac01-1 ~]# /sbin/sysctl -p

Software Besitzer Umgebung konfigurieren

Für die beiden Installationsbesitzer grid und oracle müssen die folgenden Anpassungen an deren Benutzerumgebungen vorgenommen werden.

Grid Infrastructure Software Besitzer

[root@rac01-1 ~]# su - grid [grid@rac01-1 ~]# vi .bash_profile umask  022 [grid@rac01-1 ~]# . ./.bash_profile [grid@rac01-1 ~]# exit

Oracle Database Software Besitzer

[root@rac01-1 ~]# su - oracle [oracle@rac01-1 ~]# vi .bash_profile umask  022 [oracle@rac01-1 ~]# . ./.bash_profile [oracle@rac01-1 ~]# exit

Für die Anpassung der Resource Limits muss die Datei /etc/security/limits.conf angepasst werden.

[root@rac01-1 ~]# /etc/security/limits.conf grid                 soft    nproc    2047 grid                 hard    nproc   16384 grid                  soft    nofile  1024 grid                 hard    nofile   65535 oracle               soft    nproc   2047 oracle                hard    nproc   16384 oracle               soft    nofile   1024 oracle               hard    nofile  65536

Anpassung der Datei /etc/pam.d/login

[root@rac01-1 ~]# vi /etc/pam.d/login session     required     pam_limits.so

Anpassung der Datei /etc/profile

[root@rac01-1 ~]# vi /etc/profile if [ $USER = "oracle" ] || [ $USER = "grid" ];  then   if [ $SHELL = "/bin/ksh" ]; then     ulimit -p 16384     ulimit -n 65536   else     ulimit -u 16384 -n 65536   fi   umask 022 fi

ASMLib installieren & konfigurieren

Für den Zugriff und die Zuweisung der korrekten Berechtigungen auf die späteren ASM Disks wird das von Oracle bereitgestellte Addon ASMLib verwendet. Mithilfe von ASMLib lassen sich zudem die ASM Disks labeln. Dies hat den Vorteil, dass bei einer Multipath Konfiguration die ASM Disks immer identifizierbar bleiben, auch wenn sich der Pfad nach einem Neustart des Servers ändern sollte.

ASMLin steht unter http://www.oracle.com/technetwork/topics/linux/asmlib/index-101839.html zum Download bereit. Bei dem Download muss darauf geachtet werden, dass ASMLib in der richtigen Kernelversion und Architektur heruntergeladen wird.

Die Kernelversion  und die Archtiektur des Servers erhält man durch einen Aufruf von uname.

[root@rac01-1 ~]# uname -mr 2.6.18-194.26.1.el5 i686

In diesem Fall müssen die folgenden Pakete heruntergeladen werden.

Der Download kann zum Beispiel mit wget durchgeführt werden.

Nachdem Download werden die Pakete wie folgt installiert.
[root@rac01-1 tmp]# rpm -ivh oracleasm-support-2.1.3-1.el5.i386.rpm oracleasmlib-2.0.4-1.el5.i386.rpm oracleasm-2.6.18-194.26.1.el5-2.0.5-1.el5.i686.rpm Warnung: oracleasm-support-2.1.3-1.el5.i386.rpm: Header V3 DSA-Signatur: NOKEY, key ID 1e5e0159 Vorbereiten...              ########################################### [100%] 1:oracleasm-support      ########################################### [ 33%] 2:oracleasm-2.6.18-194.26########################################### [ 67%] 3:oracleasmlib           ########################################### [100%] Anschließend muss eine einmalige Konfiguration vorgenommen werden. [root@rac01-1 tmp]# /etc/init.d/oracleasm configure -i Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver.  The following questions will determine whether the driver is loaded on boot and what permissions it will have.  The current values will be shown in brackets ('[]').  Hitting <ENTER> without typing an answer will keep that current value.  Ctrl-C will abort. Default user to own the driver interface []: grid Default group to own the driver interface []: oinstall Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done Initializing the Oracle ASMLib driver:                     [  OK  ] Scanning the system for Oracle ASMLib disks:               [  OK  ] Nun kann ASMLib gestartet werden. [root@rac01-1 tmp]# /etc/init.d/oracleasm start Initializing the Oracle ASMLib driver:                     [  OK  ] Scanning the system for Oracle ASMLib disks:               [  OK  ]

ASM Disks vorbereiten

Jede LUN die als ASM Disk verwendet werden soll, wird nun gelabelt. In diesem Beispiel wurde die LUN als /dev/sdc eingehängt und besitzt eine Partition /dev/sdc1. Diese wird nun mit einem Label versehen.

[root@rac01-1 tmp]# /etc/init.d/oracleasm createdisk DISK1 /dev/sdc1 Marking disk "DISK1" as an ASM disk:                       [  OK  ]

Die ASM Disks steht nun unter dem Namen DISK1 zur Verfügung. Der Pfad lautet /dev/oracleasm/disks/DISK1.

Zur Überprüfung kann man sich alle gelabelten ASM Disks anzeigen lassen.

[root@rac01-1 tmp]# /etc/init.d/oracleasm listdisks DISK1

Damit alle weitere Knoten auf die neue ASM Disk zugreifen können, muss der folgende Befehl auf jedem weiteren Knoten nach erfolgreicher Konfiguration und Start von ASMLib ausgeführt werden.

[root@rac01-2 tmp]# /etc/init.d/oracleasm scandisks Scanning the system for Oracle ASMLib disks:               [  OK  ]

Die Vorbereitung der ASM Disks ist abgeschlossen. Es kann nun mit der Installation begonnen werden.

Installation Oracle Grid Infrastruture 11g Release 2:

 

Für die Installation muss der Benutzer GRID angemeldet sein. Der Installer wird über die Datei runInstaller aufgerufen.
[grid@rac01-1 ~]/u01/app/grid/software/grid/runInstaller
Es erscheint der folgende Dialog.

Es wird die Installation samt Konfiguration gestartet.

 

Für die Installation wird der erweiterte Modus verwendet.

 

Neben der Standardsprache Englisch wird als zweite Sprache Deutsch mit installiert.

 

An dieser Stelle fallen zwei Neuerungen auf, die mit 11g Release 2 Einzug gehalten haben.

 

SCAN (Simple Client Access Name)

In den Versionen vor 11g Release 2 mussten sich die Clients immer gegenüber den virtuellen IP Adressen des einzelnen RAC Knoten verbinden. Durch Client- und Serverseitiges Load-Balancing wurden die Benutzersitzungen auf die vorhandenen Knoten aufgeteilt. Wurde nun ein Knoten zum Cluster hinzugefügt oder entfernt, mussten jedes Mal die tnsnames.ora Dateien der Clients angepasst werden. Dieses Problem soll nun durch den SCAN Namen der Vergangenheit angehören. Die Clients verbinden sich nun gegenüber dem SCAN Namen des Clusters. Hinter dem SCAN Namen verbergen sich 3 IP-Adressen, von der eine bei bei einem Verbindungsversuch durch einen Client per Round-Robin (nicht bei Verwendung der Host-Datei, wie in diesem Fall) ausgewählt wird. Die 3 IP-Adressen sind unterschiedlichen Knoten als virtuelle IP-Adresse zugewiesen. Auf den SCAN IP Adressen horchen SCAN Listener, die die Clientverbindung an eine der VIP Listeners weiter delegieren.

 

GNS (Grid Naming Service)

Durch die Verwendung des GNS wird die Verwaltung der privaten und virtuellen IP-Adressen stark vereinfacht. Die dynamische Zuweisung der IP-Adressen erfolgt mithilfe des DHCP Dienstes. Im DNS Server wird für diese Aufgabe eine Subdomain angelegt, die Anfragen direkt an den Cluster delegiert.

 

Zudem Beginn der Cluster Konfiguration ist nur der Knoten eingetragen, von dem aus die Installation aufgerufen wurde.

 

Durch die Schaltfläche Hinzufügen können weitere Knoten zur Clusterkonfiguration hinzugefügt werden. Dafür muss der Hostname und Name der virtuellen IP-Adressen angegeben werden. In meinem Beispiel finden sich die Einträge dazu in der /etc/hosts Datei.

 

Im nächsten Schritt kommt eine weitere Verbesserung von 11g Release 2 zum Vorschein. In vorherigen Versionen musste immer händisch eine passwortlose SSH Verbindung unter den Knoten eingerichtet werden. Mit Oracle 11g Release 2 kann diese Aufgabe der Installer übernehmen. Dafür wählt man zunächst alle Knoten aus und wählt die Schaltfläche Setup aus, die unter dem Punkt SSH-Verbindung zu finden ist.

 

Auf der nächsten Dialogseite werden die beiden konfigurierten Netzwerkschnittstellen samt Typ angezeigt. Hierbei muss darauf geachtet werden, dass der richtigen Schnittstelle der richtige Typ zugewiesen ist.

 

Mit Oracle 11g Release 2 ist es nun möglich die Oracle Cluster Registry (OCR) und die Voting Disks im ASM abzulegen. Bei den Versionen davor mussten diese Dateien entweder auf RAW Devices oder auf einem Shared Clusterfilesystem (z.B. OCFS) abgelegt werden. Diese Variante der RAW Devices fällt nun mit 11g Release 2 komplett weg.

 

Für die Ablage der OCR und der Voting Disks wird nun eine eigene Diskgruppe mit den Name CONFIG angelegt. Die Spiegelung der Diskgruppe wird auf Extern gesetzt. In Produktivumgebungen sollte diese Gruppe auf jeden Fall gespiegelt werden, da ohne diese Dateien der Cluster nicht mehr funktionieren würde.

 

Zur Vereinfachung werden für die wichtigen Benutzerkonten ein und dasselbe Kennwort verwendet.

 

Um das Intelligent Platform Management Interface benutzen können, muss dementsprechende Hardware vorhanden sein.

 

Die Gruppenauswahl erfolgt an dieser Stelle automatisch, wenn beim Anlegen der Gruppen die Standardnamen von Oracle verwendet wurden.

 

Im nächsten Schritt wird das Installationsverzeichnis ausgewählt. Es ist nicht möglich die Grid Infrastructure unterhalb des Oracle Base Verzeichnisses zu installieren.

 

Die Auswahl des Bestandsverzeichnis übernimmt Oracle automatisch, wenn die Verzeichnisstruktur der OFA entspricht.

 

An dieser Stelle findet man eine weitere Neuerung vom Oracle 11g Release 2 Installer. Das Cluster Verfication Utility (Clufy) wurde komplett in den Installer integriert. Sollten an dieser Stelle Probleme mit der Konfiguration auftreten, werden die Probleme angezeigt. Zusätzlich lassen sich sogenannte Fixup-Skripte generieren, die eine Vielzahl möglicher Probleme heben können. Das generierte Skript wird dann mit dem root Benutzer ausgeführt und kann zum Beispiel fehlerhafte Kernelparameter reparieren. Unter CentOs wird das Paket pdksh als fehlend angemerkt. Diese Warnung kann ignoriert werden. Dafür muss man den Haken oben rechts bei Alles.. setzen.

 

Bevor die Installation gestartet wird, wird eine Übersicht aller vorgenommener Einstellungen präsentiert. Für eine erneute Installation können diese Parameter als Response File abgespeichert werden.

 

 

Als nächstes müssen nun die beiden oben aufgeführten Skripte als root ausgeführt werden. Die Ausführung der Skripte auf dem Ersten und dem Letzten Knoten des Clusters müssen seperat ausgeführt werden. Die Knoten dazwischen können parallel ausgeführt werden. Es wird mit dem Ersten Knoten begonnen.

[root@rac01-1 tmp]# /u01/app/oraInventory/orainstRoot.sh Berechtigungen Ädern von/u01/app/oraInventory. Lese- und Schreibberechtigungen für Gruppe werden hinzugefügt. Lese-, Schreib- und Ausführungsberechtigungen für World werden entfernt. Ändern des Gruppennamen von /u01/app/oraInventory zu oinstall. Die Ausführung des Skripts ist abgeschlossen.

Ausführung des orainstRoot.sh Skriptes auf dem zweiten Knoten.

[root@rac01-2 tmp]# /u01/app/oraInventory/orainstRoot.sh Berechtigungen Ädern von/u01/app/oraInventory. Lese- und Schreibberechtigungen für Gruppe werden hinzugefügt. Lese-, Schreib- und Ausführungsberechtigungen für World werden entfernt. Ändern des Gruppennamen von /u01/app/oraInventory zu oinstall.

Die Ausführung des Skripts ist abgeschlossen.
Ausführung des root.sh Skriptes auf dem ersten Knoten.

[root@rac01-1 tmp]# /u01/app/11.2.0/grid/root.sh Running Oracle 11g root.sh script... The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME=  /u01/app/11.2.0/grid Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ... Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. 2010-11-16 13:08:53: Parsing the host name 2010-11-16 13:08:53: Checking for super user privileges 2010-11-16 13:08:53: User has super user privileges Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params Creating trace directory LOCAL ADD MODE Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. root wallet root wallet cert root cert export peer wallet profile reader wallet pa wallet peer wallet keys pa wallet keys peer cert request pa cert request peer cert pa cert peer root cert TP profile reader root cert TP pa root cert TP peer pa cert TP pa peer cert TP profile reader pa cert TP profile reader peer cert TP peer user cert pa user cert Adding daemon to inittab CRS-4123: Oracle High Availability Services has been started. ohasd is starting ADVM/ACFS is not supported on centos-release-5-5.el5.centos CRS-2672: Versuch, "ora.gipcd" auf "rac01-1" zu starten CRS-2672: Versuch, "ora.mdnsd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.gipcd" auf "rac01-1" erfolgreich CRS-2676: Starten von "ora.mdnsd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.gpnpd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.gpnpd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.cssdmonitor" auf "rac01-1" zu starten CRS-2676: Starten von "ora.cssdmonitor" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.cssd" auf "rac01-1" zu starten CRS-2672: Versuch, "ora.diskmon" auf "rac01-1" zu starten CRS-2676: Starten von "ora.diskmon" auf "rac01-1" erfolgreich CRS-2676: Starten von "ora.cssd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.ctssd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.ctssd" auf "rac01-1" erfolgreich ASM erfolgreich erstellt und gestartet. Plattengruppe CONFIG erfolgreich erstellt clscfg: -install mode specified Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. CRS-2672: Versuch, "ora.crsd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.crsd" auf "rac01-1" erfolgreich CRS-4256: Updating the profile Successful addition of voting disk 401d19645a444f0dbf177017281bc775. Successfully replaced voting disk group with +CONFIG. CRS-4256: Updating the profile CRS-4266: Voting file(s) successfully replaced ##  STATE    File Universal Id                File Name Disk group --  -----    -----------------                --------- --------- 1. ONLINE   401d19645a444f0dbf177017281bc775 (ORCL:DISK1) [CONFIG] Located 1 voting disk(s). CRS-2673: Versuch, "ora.crsd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.crsd" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.asm" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.asm" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.ctssd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.ctssd" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.cssdmonitor" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.cssdmonitor" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.cssd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.cssd" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.gpnpd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.gpnpd" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.gipcd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.gipcd" auf "rac01-1" erfolgreich CRS-2673: Versuch, "ora.mdnsd" auf "rac01-1" zu stoppen CRS-2677: Stoppen von "ora.mdnsd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.mdnsd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.mdnsd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.gipcd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.gipcd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.gpnpd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.gpnpd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.cssdmonitor" auf "rac01-1" zu starten CRS-2676: Starten von "ora.cssdmonitor" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.cssd" auf "rac01-1" zu starten CRS-2672: Versuch, "ora.diskmon" auf "rac01-1" zu starten CRS-2676: Starten von "ora.diskmon" auf "rac01-1" erfolgreich CRS-2676: Starten von "ora.cssd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.ctssd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.ctssd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.asm" auf "rac01-1" zu starten CRS-2676: Starten von "ora.asm" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.crsd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.crsd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.evmd" auf "rac01-1" zu starten CRS-2676: Starten von "ora.evmd" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.asm" auf "rac01-1" zu starten CRS-2676: Starten von "ora.asm" auf "rac01-1" erfolgreich CRS-2672: Versuch, "ora.CONFIG.dg" auf "rac01-1" zu starten CRS-2676: Starten von "ora.CONFIG.dg" auf "rac01-1" erfolgreich rac01-1     2010/11/16 13:17:33     /u01/app/11.2.0/grid/cdata/rac01-1/backup_20101116_131733.olr Configure Oracle Grid Infrastructure for a Cluster ... succeeded Updating inventory properties for clusterware Oracle Universal Installer wird gestartet... Swap-Speicher wird geprüft: muss gröÃer sein als 500 MB.   Tatsächlich 3098 MB    Erfolgreich The inventory pointer is located at /etc/oraInst.loc The inventory is located at /u01/app/oraInventory 'UpdateNodeList' war erfolgreich.

Ausführung des root.sh Skriptes auf dem zweiten Knoten.

[root@rac01-2 tmp]# /u01/app/11.2.0/grid/root.sh Running Oracle 11g root.sh script... The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME=  /u01/app/11.2.0/grid Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ... Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. 2010-11-16 13:18:34: Parsing the host name 2010-11-16 13:18:34: Checking for super user privileges 2010-11-16 13:18:34: User has super user privileges Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params Creating trace directory LOCAL ADD MODE Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. Adding daemon to inittab CRS-4123: Oracle High Availability Services has been started. ohasd is starting ADVM/ACFS is not supported on centos-release-5-5.el5.centos CRS-4402: Der CSS-Daemon wurde im exklusiven Modus gestartet, wird aber aufgrund eines aktiven CSS-Daemons auf Knoten rac01-1, Nummer 1 abgebrochen An active cluster was found during exclusive startup, restarting to join the cluster CRS-2672: Versuch, "ora.mdnsd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.mdnsd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.gipcd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.gipcd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.gpnpd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.gpnpd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.cssdmonitor" auf "rac01-2" zu starten CRS-2676: Starten von "ora.cssdmonitor" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.cssd" auf "rac01-2" zu starten CRS-2672: Versuch, "ora.diskmon" auf "rac01-2" zu starten CRS-2676: Starten von "ora.diskmon" auf "rac01-2" erfolgreich CRS-2676: Starten von "ora.cssd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.ctssd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.ctssd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.asm" auf "rac01-2" zu starten CRS-2676: Starten von "ora.asm" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.crsd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.crsd" auf "rac01-2" erfolgreich CRS-2672: Versuch, "ora.evmd" auf "rac01-2" zu starten CRS-2676: Starten von "ora.evmd" auf "rac01-2" erfolgreich rac01-2     2010/11/16 13:25:27     /u01/app/11.2.0/grid/cdata/rac01-2/backup_20101116_132527.olr Configure Oracle Grid Infrastructure for a Cluster ... succeeded Updating inventory properties for clusterware Oracle Universal Installer wird gestartet... Swap-Speicher wird geprüft: muss gröÃer sein als 500 MB.   Tatsächlich 3098 MB    Erfolgreich The inventory pointer is located at /etc/oraInst.loc The inventory is located at /u01/app/oraInventory 'UpdateNodeList' war erfolgreich.

Nach Ausführung der Skripte wird die Installation mit OK weiter geführt. Nach der Konfiguration von ASM und der Überprüfung der Installation ist die Installation der Oracle Grid Instrastructure abgeschlossen.

Hinweis: Bei Verwendung der Hosts Datei zur Namensauflösung meldet Cluvfy einen Fehler bei der Überprüfung der Namensauflösung des SCAN Namens. Dieser Fehler kann ignoriert werden.

 

Überprüfung:

Im letzten Schritt werden die Ressourcen mithilfe des crs_stat Skriptes überprüft.

 

[root@rac01-1 tmp]# /u01/app/11.2.0/grid/bin/crs_stat -t Name           Type           Target    State     Host ------------------------------------------------------------ ora.CONFIG.dg  ora....up.type ONLINE    ONLINE    rac01-1 ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac01-1 ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac01-1 ora.asm        ora.asm.type   ONLINE    ONLINE    rac01-1 ora.eons       ora.eons.type  ONLINE    ONLINE    rac01-1 ora.gsd        ora.gsd.type   OFFLINE   OFFLINE ora....network ora....rk.type ONLINE    ONLINE    rac01-1 ora.oc4j       ora.oc4j.type  OFFLINE   OFFLINE ora.ons        ora.ons.type   ONLINE    ONLINE    rac01-1 ora....SM1.asm application    ONLINE    ONLINE    rac01-1 ora....-1.lsnr application    ONLINE    ONLINE    rac01-1 ora....1-1.gsd application    OFFLINE   OFFLINE ora....1-1.ons application    ONLINE    ONLINE    rac01-1 ora....1-1.vip ora....t1.type ONLINE    ONLINE    rac01-1 ora....SM2.asm application    ONLINE    ONLINE    rac01-2 ora....-2.lsnr application    ONLINE    ONLINE    rac01-2 ora....1-2.gsd application    OFFLINE   OFFLINE ora....1-2.ons application    ONLINE    ONLINE    rac01-2 ora....1-2.vip ora....t1.type ONLINE    ONLINE    rac01-2 ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac01-1

Leave a Reply

Your email address will not be published. Required fields are marked *