Direkt zum Inhalt | Direkt zur Navigation

Benutzerspezifische Werkzeuge

This is SunRain Plone Theme

Sektionen

Sie sind hier: Startseite / DB / Oracle / Oracle RAC 12c mit Oracle 6.3 unter vmware vSphere / ESX Server

Oracle RAC 12c mit Oracle 6.3 unter vmware vSphere / ESX Server

Checkliste Voraussetzungen:

  • VMware ESXi 5.0
  • Oracle Linux 6.3 (OL6)
  • Oracle Database 11

Notwendiges Wissen:

  • Administration von Linux
  • Administration von Oracle Database

Für das Einrichten der Shared Disks und das Klonen wird ein SSH-Zugang zu dem ESX-Server benötigt. Wie dieser eingerichet wird , habe ich ich in diesem Artikel beschrieben: "vmware vSphere / ESX Server SSH Zugang aktivieren"

Supportunterstützung

Diese Support Martix zeigt die Abhänigkeiten zwischen OS und Oracle Database

OS 10g R1 10g R2 10g R5 11g R1 11g R2 12c R1 12c R2
Red Hat Enterprise Linux 3 X X          
Red Hat Enterprise Linux 4   X X        
Red Hat Enterprise Linux 5     X X X X X
Red Hat Enterprise Linux 6         X X X

Basis Installation Oracle 6.3

Die Basis Installation erfolgt wie bereits in der Dokumention beschrieben

Anpassung der Basis Installation Oracle Linux 6.3  für Oracle Database

Nach Basisinstallation erfolgt die Anpassung für das RAC

Netzwerk:

Das Netzwerk wird eingerichet. Dafür ist ein weitere Netzwerkadapter notwenig

ora06-li01

Schnittstelle IP Network Mask Netwerk Name Kommentar Konfiguration
eth0 172.20.3.121 / 16 172.20 ora06-li01 Normales Admin Network OS DHCP
eth1 10.1.0.121 / 24 10.1.0.0 ora06-li01-priv Interconnect OS static

ora06-li02

Schnittstelle IP Network Mask Netwerk Name Kommentar Konfiguration
eth0 172.20.3.122 / 16 172.20 ora06-li02 Normales Admin Network OS DHCP
eth1 10.1.0.122 / 24 10.1.0.0 ora06-li02-priv Interconnect OS static

ora06-li Shared

Schnittstelle IP Network Mask Netwerk Name Kommentar Konfiguration
eth0 172.20.5.121 / 16 172.20 ora06-li01-vip Virtual IP  
eth0 172.20.5.122 / 16 172.20 ora06-li02-vip Virtual IP  
eth0 172.20.4.120 / 16 172.20 ora06-li-scan Scan Listener  

/etc/hosts:

  IP
172.20.3.121 ora06-li01
172.20.3.122 ora06-li02
   
10.1.0.121 ora06-li01-priv
10.1.0.122 ora06-li02-priv
   
172.20.5.121 ora06-li01-vip
172.20.5.122 ora06-li02-vip
172.20.4.120 ora06-li-scan

RAC-Cluster.png

Network Interconnect:

ora06-li01

vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
BOOTPROTO=static
DHCPCLASS=
HWADDR=
IPADDR=10.1.0.121
NETMASK=255.255.255.0
ONBOOT=yes

ora06-li02

vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
BOOTPROTO=static
DHCPCLASS=
HWADDR=
IPADDR=10.1.0.122
NETMASK=255.255.255.0
ONBOOT=yes

Storage:

ora06-li01

/application/oracle 40GB Installation von Oracle
/INSTALL 16GB Inallationsquellen

ora06-li02

/application/oracle 40GB Installation von Oracle

ora06-li

/application/oracle 40GB Installation von Oracle
     
ocr01 4GB RAW für ASM OCR
ocr02 4GB RAW für ASM OCR
ocr03 4GB RAW für ASM OCR
     
disk01 4GB RAW für ASM Data
disk02 4GB RAW für ASM Data
disk03 4GB RAW für ASM Data
disk04 4GB RAW für ASM Data

Temporär /dev/shm anpassen

Die Datei "/etc/fstab" anpassen

tmpfs                   /dev/shm                tmpfs   defaults,size=2048M    0 0

Gruppen und Gruppen-IDs (GID)

Für eine saubere Trennung von den Aufgaben des System- bzw. Storage-Administrators auf der einen Seite und der Datenbank Administratoren auf der anderen Seite, ist es notwendig unterschiedlicher Benutzer und Benutzergruppen anzulegen.

Bereich Gruppe Zugeordnete Benutzer Bedeutung
Software Installation oinstall grid
oracle
Alle Benutzer, die Software installieren, müssen dieser Gruppe als Primärgruppe angehören. Dies ist insbesondere für das gemeinsam verwendete Oracle Inventory notwendig.

Grid Administration

asmadmin

grid Benutzer, die zur dieser ASM Admin Gruppe gehören, melden sich als SYSASM an der ASM Instanz an und dürfen somit Diskgruppen verwalten. Dies ist auch die Gruppe, der die ASM Platten/Devices zugeordnet sein müssen

ASM DBA

asmdba

grid
oracle

ASM DBA Benutzer melden sich als SYSDBA an der ASM Instanz an. Dies ist notwendig, damit die Datenbank Instanz (die sich ebenfalls als SYSDBA anmeldet) Datenfiles in ASM anlegen kann.
Im Gegensatz zum DBA bei einer Datenbank können diese Benutzer ASM nicht stoppen oder starten. Ebenfalls können keine Diskgruppen verwaltet werden. SYSASM und SYSDBA Gruppen werden in das oracle Executable der Grid Infrastruktur gelinkt

ASM Operator asmoper grid Die ASM Operators sind Benutzer, die ASM stoppen und starten dürfen. Diese Gruppe ist nur notwendig, falls man einigen DBAs auch das Stoppen und Starten von ASM erlauben möchte. Liegen allerdings OCR und Voting Disks in der ASM, so kann ASM nur vom Root User durch das Stoppen des Clusters angehalten werden.
DB Admin dba oracle Benutzer der DBA Gruppe melden sich als SYSDBA an der jeweiligen Oracle Datenbank an.
Backup backupdba   Erstellen Sie diese Gruppe, wenn Sie eine separate Gruppe für das Backup / Recovery haben möchten. Benutzer, die dieser Gruppe angehöhren, haben angepaste  Rechte für Datenbank-Backup und Wiederherstellung  mtr niedrigern Privileg (SysBackup Privileg).
DataGuard dgdba   Erstellen Sie diese Gruppe, wenn Sie eine separate Gruppe für die Administrationvon DataGuard haben möchten. Benutzer, die dieser Gruppe angehöhren, haben angepaste  Rechte für die Administratration von DataGuard
key management kmdba   Erstellen Sie diese Gruppe, wenn Sie eine separate Gruppe für das Key Managment haben möchten.

Zuordnung der Benutzer und User-IDs (UID) zu den Gruppen

Benutzer

Gruppen

Bereich

grid

asmadmin,asmdba,oinstall

Installation, Verwaltung der Grid Infrastruktur und ASM und Anlegen von Diskgruppen.

oracle

dba,asmdba,oinstall

Installation und Verwaltung Datenbank

/usr/bin/getent group asmoper || groupadd -g 252 asmoper
/usr/bin/getent group asmdba || groupadd -g 253 asmdba
/usr/bin/getent group oinstall ||groupadd -g 254 oinstall
/usr/bin/getent group dba ||groupadd -g 255 dba
/usr/bin/getent group backupdba ||groupadd -g 256 backupdba
/usr/bin/getent group dgdba ||groupadd -g 257 dgdba
/usr/bin/getent group kmdba ||groupadd -g 258 kmdba
/usr/bin/getent group asmadmin || groupadd -g 259 asmadmin


/usr/bin/getent passwd oracle || useradd -g oinstall -G dba -d /home/oracle -s /bin/bash -u 1001 oracle
usermod -G dba,asmdba,backupdba,dgdba,kmdba,oinstall oracle

/usr/bin/getent passwd grid || useradd -G asmadmin,asmdba,asmoper -g oinstall -d /home/grid -s /bin/bash -u 1002 grid
mkdir /home/grid
chown grid:asmadmin /home/grid
passwd -r files grid

test -f ~grid/.bashrc && cp ~grid/.profile ~grid/.bashrc.bak

echo "HISTSIZE=3000
export HISTSIZE
unset LANG;

export sitename=\`hostname\`
PS1='[ \${LOGNAME}@\${sitename} SID=\${ORACLE_SID}: \$PWD ]
> ';export PS1
PS2='Befehl komplettieren! >: '

ORACLE_SID=+ASM1; export ORACLE_SID
ORACLE_BASE=\"/applications/oracle/base\"; export ORACLE_BASE
ORACLE_HOME=\"/applications/oracle/grd/11.2.0.3\"; export ORACLE_HOME
ORACLE_PATH=\"\$ORACLE_HOME/bin\";export ORACLE_PATH
PATH=\"\$ORACLE_PATH:\$PATH\";export PATH

umask 022" > ~grid/.bashrc

Shared Disks auf dem ESX-Server erzeugen

Die Shared Disks erzeugen wir direkt auf dem ESX-Server und binden diese Später in die virtuelle Maschine ein.

Wir melden uns auf dem ESX-Server mit SSH an und erzeugen ein Verzeichniss , wo wir die Shared Disks ablegen möchten.

mkdir /vmfs/volumes/datastore2/ora06-shared

RAW Disks für OCR anlegen

for i in `seq 1 3`;do vmkfstools -d eagerzeroedthick -c 4G /vmfs/volumes/datastore2/ora06-shared/ocr-0${i}.vmdk;done

RAW Disks für Data anlegen

for i in `seq 1 4`;do vmkfstools -d eagerzeroedthick -c 4G /vmfs/volumes/datastore2/ora06-shared/data-0${i}.vmdk;done

Shared Disk in die Virtuelle Maschine integrieren.

Das einbinden von Shared Disks in einer Virtuelle Maschine geschieht über einen neuen SCSI-Controller, der die Einstelltung erhält, die Disks mit andern virtuellen Maschinen zu Teilen

Das einbinden wird hier erklärt:

Die Eigenschalten vom SCSI-Controller für Shared-Disk:

Einbinden und vorbereiten der neuen RAW-Devices im ASM

Die neuen Platten werden in der virtullen Maschine mit dem UDV-eingebunden. Damit diese sich nicht verändern, wenn neue Platten hinzugefügt wird, verwenden wir dafür die SCSI-ID. dafür verwenden wir folgendes Skript:

 

#!/bin/bash
# /usr/local/bin/create-udev.sh
# search Disks with a size from 4294 MB
UDEV_RULES="/etc/udev/rules.d/60-raw.rules";
test -f "${UDEV_RULES}" && rm ${UDEV_RULES}
touch ${UDEV_RULES}
i="1";
for disk in `fdisk -l|grep "4294 MB"|awk '{gsub(/:/,"",$2);print $2}'`

do


if [ ! -b ${disk}1 ]
then


cat <<EOF | fdisk ${disk}
n
p
1
1
1017

t
83
w
EOF


fi
scsi_id=`/sbin/scsi_id --whitelisted --replace-whitespace --device=${disk}1`
J=$((i++))
UDEV="KERNEL==\"sd?1*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$parent\",RESULT==\"${scsi_id}\",NAME+=\"Oracle_disk${J}\", OWNER=\"grid\" GROUP=\"oinstall\" MODE=\"0660\", RUN+=\"/bin/raw /dev/raw/raw${J} /dev/Oracle_disk${J}\""
echo "$UDEV" >> ${UDEV_RULES}

done

echo -e "\nACTION==\"add\", KERNEL==\"raw*\", OWNER==\"oracle\", GROUP==\"oinstall\", MODE==\"0660\"" >> ${UDEV_RULES}
Die entsprechende Rechte setzen und das Skript ausführen

chmod 755 /usr/local/bin/create-udev.sh
/usr/local/bin/create-udev.sh

Danach stehen unter "/dev/raw" die Disks zu Verfügung

ls -l /dev/raw/*
crw-rw----. 1 oracle oinstall 162, 1 Jun 19 09:38 /dev/raw/raw1
crw-rw----. 1 oracle oinstall 162, 2 Jun 19 09:38 /dev/raw/raw2
crw-rw----. 1 oracle oinstall 162, 3 Jun 19 09:38 /dev/raw/raw3
crw-rw----. 1 oracle oinstall 162, 4 Jun 19 09:38 /dev/raw/raw4
crw-rw----. 1 oracle oinstall 162, 5 Jun 19 09:38 /dev/raw/raw5
crw-rw----. 1 oracle oinstall 162, 6 Jun 19 09:38 /dev/raw/raw6
crw-rw----. 1 oracle oinstall 162, 7 Jun 19 09:38 /dev/raw/raw7
crw-rw----. 1 oracle oinstall 162, 0 Jun 19 09:38 /dev/raw/rawctl

Zusätzliche Software installieren

Notwendige Software wird mit

yum install oracle-rdbms-server-12cR1-preinstall

nachinstalliert.

Konfiguration Cluster Time Synchronization Service - (CTSS)

/sbin/service ntpd stop
chkconfig ntpd off
mv /etc/ntp.conf /etc/ntp.conf.original
rm /var/run/ntpd.pid

 

Edit "/etc/sysconfig/ntpd" und das -x Option hinzufügen

# Drop root to id 'ntp:ntp' by default.
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid -g"

Then, restart the NTP service.

Neustart  vom dem NTP service.

/sbin/service ntpd restart

Anpassen der Datei "/etc/selinux/config". SELINUX abschalten

SELINUX=disabled

Anpassen der Datei "/etc/sysctl.conf" für die Kernel Parameter

kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=4194304
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=262144

Anpassen der Datei "/etc/security/limits.conf" für User-Limits

oracle               soft    nproc   2047
oracle               hard    nproc   16384
oracle               soft    nofile  1024
oracle               hard    nofile  65536
grid               soft    nproc   2047
grid               hard    nproc   16384
grid               soft    nofile  1024
grid               hard    nofile  65536

Anpassen der Datei "/etc/pam.d/login"

session    required     pam_limits.so

SSH-Key für Grid und Oracle erzeugen

for user in oracle grid;do mkdir -p /home/${user}/.ssh; ssh-keygen -b 4096 -t rsa -f /home/${user}/.ssh/id_rsa -P "";chown -R ${user} /home/${user}/.ssh; done
for user in oracle grid;do mv /home/${user}/.ssh/id_rsa.pub /home/${user}/.ssh/

Klonen der virtuelle Maschine

Nachdem die Vorbereitungen abgeschlosen sind, können wir die virtuelle Maschne  klonen.

Dazu verwenden wir diese Anleitung

Hostname anpassen

Der Hostname wird in der Datei "/etc/sysconfig/network" gespeichert.

NETWORKING=yes
HOSTNAME=ora06-li02

Netzwerk anpassen nach dem Klonen

Nach dem klone bekommt die neue virtuelle Maschine eine neue MAC-Adresse.

Diese Anpassung kann nur in der VMware Konsole durchgeführt werden, weil das Netzwerk nicht zu Verfügung steht

Nach einem reboot bekommt die neue virtuelle Maschine mit DHCP eine neue IP-Adresse.

Überprüfung der Installationsbassis

SSH Zugang auf beiden Seiten Testen

[ grid@ora06-li01 SID=+ASM1: /INSTALL/11.2.0.3.0/grid ]
> ssh ora06-li02
The authenticity of host 'ora06-li02 (172.20.3.122)' can't be established.
RSA key fingerprint is c2:b1:15:61:cf:02:c5:23:90:0a:0b:82:60:83:b6:54.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ora06-li02,172.20.3.122' (RSA) to the list of known hosts.
Last login: Fri Jun 21 08:10:22 2013 from localhost
[ grid@ora06-li02 SID=+ASM1: /home/grid ]
> logout
Connection to ora06-li02 closed.

[ grid@ora06-li01 SID=+ASM1: /INSTALL/11.2.0.3.0/grid ]
> ssh ora06-li01
The authenticity of host 'ora06-li01 (172.20.3.121)' can't be established.
RSA key fingerprint is c2:b1:15:61:cf:02:c5:23:90:0a:0b:82:60:83:b6:54.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'ora06-li01,172.20.3.121' (RSA) to the list of known hosts.
Last login: Fri Jun 21 09:02:05 2013 from 172.20.2.66
[ grid@ora06-li01 SID=+ASM1: /home/grid ]
> logout
Connection to ora06-li01 closed.

cd /mountpoint/clusterware_install
./runcluvfy.sh stage -pre crsinst -n ora06-li01,ora06-li02

Installation Oracle Grid Infrastructure für RAC

Für die Installation melden wir uns als Benutzer "grid" an und starten den Installer:

cd /INSTALL/11.2.0.3.0/grid
#[ grid@ora06-li01 SID=+ASM1: /INSTALL/11.2.0.3.0/grid ]
./runInstaller

Danach folgenden wir dem Instllations-Dialog:

Artikelaktionen

abgelegt unter: ,
Kommentieren

Sie können einen Kommentar abgeben, indem Sie das untenstehende Formular ausfüllen. Nur Text. Web- und E-Mailadressen werden in anklickbare Links umgewandelt. Kommentare werden moderiert.

Enter the word