Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Die Datenbank-Profis
Boost (not only) my ODADie GI als Ressourcenmanager
Susanne Jahr
DOAG Konferenz und Ausstellung
Nürnberg 21.11.2019
Die Datenbank-Profis
Herrmann & Lenz ServicesHerrmann & Lenz Solutions
• Erfolgreich seit 1996 am Markt
• Firmensitz: Burscheid (bei Leverkusen)• Beratung, Schulung und Betrieb/Fernwartung rund um
das Thema Oracle Datenbanken
• Schwerpunktthemen: Hochverfügbarkeit, Tuning, Migrationen und Troubleshooting / Monitoring
• Herrmann & Lenz Solutions GmbH• Produkte: Monitoring Module, Taskzone, TimeTracking• Stand auf Ebene 2 (236)
2
Die Datenbank-Profis
Übersicht
•Wozu das alles? Was geht mit der GI
•Seepferdchen (Application VIP, z.B. für Backups)
•Bronze (eigene Anwendungen in Abhängigkeit von anderen GI-Ressourcen)
•Silber (Failover-Cluster ohne RAC-/RAC-OneNode)
•Gold (mehrere Listener-Ressourcen / Datenbanken in eigenem VLAN)
3
Die Datenbank-Profis
Wozu das alles?Was geht mit der GI…
4
Die Datenbank-Profis
Grid Infrastructure
• For a Cluster (RAC)• Verwaltung des Clusters und dessen eigener Ressourcen (Listener, ASM, ACFS,
…)• Vielfältige Möglichkeiten, Ressourcen sowohl hochverfügbar als auch skalierbar
zu machen (z.B. Services)• Zentrale Kommandos: crsctl und srvctl
• For a Standalone Server (Oracle Restart)• Bei der Nutzung von ASM / ACFS auch auf Einzel-Servern• Viele Möglichkeiten, GI-Ressourcen zu definieren - auch ohne RAC• Einheitliche Syntax innerhalb der ganzen Umgebung
• Spezialfall ODA: GI for a Cluster (auch bei den Single-Node Systemen)!• U.a. Möglichkeit, ACFS-Dateisysteme für Datenbanken anzulegen
5
Die Datenbank-Profis
Grid InfrastructureStartup …
6
Die Datenbank-Profis
Was geht mit der GI?• Verwaltung von Anwendungen, Prozessen, Servern, …
als Clusterware-Ressourcen• Im RAC, auf ODA- oder auf Oracle-Restart-Systemen• Integriertes Agent Framework
• Im RAC• Skalierbarkeit• Hochverfügbarkeit (Failover-Möglichkeiten)• Transparent für die Anwendung
• Auf allen Systemen• Registrierung, (Neu-)Start, Stopp, Überwachung,
Schwenk von Ressourcen• Definition von Abhängigkeiten zu anderen Ressourcen
7
Die Datenbank-Profis
Seepferdchen(Application VIP)
8
Die Datenbank-Profis
Application VIP • Anforderungen:
• im RAC soll das Backup immer von einem Knoten aus erfolgen
• Bei Ausfall dieses Backup-Knotens Backup von einem verbleibenden Knoten
• Lösung: • eigene VIP für das Backup
9
Die Datenbank-Profis
Application VIP • Anlage
appvipcfg create -network=1 -ip=192.168.x.x -vipname=bck-vip -user=oracle -group=oinstall
• Start mit crsctl
crsctl start res bck-vip
• Anzeige
crsctl stat res bck-vip
NAME=bck-vip
TYPE=app.appviptypex2.type
TARGET=ONLINE
STATE=ONLINE on test-ora19-rac1
• Relocate
crsctl relocate res bck-vip -s test-ora19-rac1 -n test-ora19-rac2
10
Die Datenbank-Profis
Bronze(Failover-Cluster ohne RAC-/RAC-OneNode)
11
Die Datenbank-Profis
HA mit Oracle GI
• Vorteile • Datenbank(en) als Cluster-Ressource(n)
• Verwendung evtl. bestehender SE2-Lizenzen oder EE-Lizenzen ohne RAC-Option möglich
„…Oracle Clusterware may be used to protect any application (restarting or
failing over the application in the event of a failure) on any server, free of
charge. Oracle will provide support for Clusterware only if the server is
running an Oracle product, which may include Oracle Linux or Oracle Solaris,
that is also under Oracle support. …“
Quelle: Oracle Database Licensing Information User Manual19c
Die Datenbank-Profis
2-Node-Cluster
13
Quelle: Oracle Clusterware Administration and Deployment
Guide
Die Datenbank-Profis
Datenbank-Konfiguration
• Installation Oracle Server-Software als Single-Instance-Home (NICHT RAC-Home!) auf jedem Knoten
• CREATE DATABASE als Single Instance auf einem Knoten mit ASM/ACFS (Shared Storage) und OMF
• Eintrag in /etc/oratab auf beiden Knoten
• Verweis auf spfile im ASM in $ORACLE_HOME/dbs/init<SID>.ora auf beiden Knoten
14
Die Datenbank-Profis
Datenbank-Konfiguration
• Datenbank wird NICHT mit srvctl add database zur Cluster-Konfiguration hinzugefügt
• Registrierung als Ressource in der GI jedoch notwendig, um Vorteile der GI-Konfiguration zu nutzen
• Registrierung mit crsctl add resource
• Voraussetzungen: • Action Script zur Behandlung von Start-, Stopp- und Status-Optionen
• Konfigurationsdatei zur Anlage und Verwaltung der Ressource
15
Die Datenbank-Profis
Action Script und Konfig-Datei
16
Die Datenbank-Profis
Anlage der Ressource app.ora19.db
crsctl add resource app.ora19.db -type
cluster_resource -file
/u01/app/oracle/crs_res/ora.ora19.conf
• Wichtig: • Benutzerdefinierte Ressourcen dürfen nicht mit ora.xxx beginnen
• Statt dessen: andere Präfixe wie z.B. app.xxx verwenden – der Präfix ora.xxx ist für Oracle-eigene Ressourcen reserviert
17
Die Datenbank-Profis
Start der Ressource app.ora19.dbcrsctl start res app.ora19.db
• Check mit:
crsctl stat res app.ora19.db –p
oder
crsctl stat res -t
Name Target State Server State details
app.ora19.db ONLINE test-ora19-rac2 STABLE
18
Die Datenbank-Profis
Silber(eigene Anwendungen in Abhängigkeit von anderen GI-Ressourcen)
19
Die Datenbank-Profis
Szenarien• ODA X7-21. Aus Compliance-Gründen Installationen im Pfad: /app/<Anwendung>
• Pfad auf ODA nicht vorhanden!• Daher: Installation der Anwendung (Dbvisit Standby) in ACFS-Dateisystem
2. Start von• Anwendungskomponenten dbvnet und dbvagent vor Start der Datenbank• Anwendungs-Daemons nach Start der Datenbank
• Autostart-Problem mit init-Skripten: • Start vor GI• dann aber noch keine DB und kein ACFS vorhanden
20
Die Datenbank-Profis
Lösung
• Anlage von GI-Ressourcen für• Anwendungs-Agenten
• Daemons
• Definierte Abhängigkeiten zu ACFS bzw. Datenbank
• Richtige Startreihenfolge durch die GI gewährleistet
21
Die Datenbank-Profis
Startreihenfolge
GI • Beim Systemstart: zuerst Start GI
DB • Gi startet (u.a.) ACFS und DB
Agents / Daemon
• Start der benutzerdefinierten Ressourcen in Abhängigkeit der DB und ACFS-Ressourcen
22
Die Datenbank-Profis
Ressourcen • Szenario 1:
• Anwendungskomponenten dbvagent und dbvnet#NAME=app.dbvagent.dm
TYPE=cluster_resource
ACL=owner:oracle:rwx,pgrp:dba:rwx,other::r--
ACTION_SCRIPT=/u01/app/oracle/admin/crs_scripts/dbvagent_action.scr
…
CHECK_INTERVAL=60
DESCRIPTION=Dbvisit Standby Agent
HOSTING_MEMBERS=oda1
START_DEPENDENCIES=hard(ora.data.dbvinst.acfs) pullup(ora.data.dbvinst.acfs)
STOP_DEPENDENCIES=hard(intermediate:ora.asm,
shutdown:ora.data.dbvinst.acfs)
23
Die Datenbank-Profis
Ressourcen • Szenario 2:
• Daemon zur Überwachung erforderlicher Aktionen#NAME=app.dbvsrvorcl.dm
TYPE=cluster_resource
ACL=owner:oracle:rwx,pgrp:dba:rwx,other::r--
ACTION_SCRIPT=/u01/app/oracle/admin/crs_scripts/dbvsrvorcl_action.scr
CHECK_INTERVAL=60
DESCRIPTION=Dbvisit Default Action DB ORCL
ENABLED=1
HOSTING_MEMBERS=oda1
PLACEMENT=restricted
START_DEPENDENCIES=hard(intermediate:ora.orcl.db) pullup:always(ora.orcl.db)
STOP_DEPENDENCIES=hard(intermediate:ora.orcl.db)
24
Die Datenbank-Profis
Anlage und Start
crsctl add resource app.dbvagent.dm -type
cluster_resource -file
/u01/app/oracle/crs_scripts/app.dbvagent.conf
crsctl add resource app.dbvsrvORCL.dm -type
cluster_resource -file
/u01/app/oracle/admin/crs_scripts/app.dbvsrvORCL.conf
25
Die Datenbank-Profis
Gold(mehrere Listener- undDatenbank-Ressourcen auf der ODA X7-2 18.5.0.0in eigenen VLANs)
26
Die Datenbank-Profis
ODA und VLANs
• VLAN-Konfiguration auf ODA X6, X7 und X8 (Software-Stand mindestens 12.2.1.2.0) möglich
• ODA X7-2: nur eine (gebondete) physikalische Schnittstelle• Keine Trennung des Traffics zwischen physikalischen Schnittstellen
• Dennoch mehrere VLANs auf einem Bond möglich
• Alternative: beim configure-firstnet kein Bonding auswählen; dann zweites Netzwerk auf der überzähligen NIC konfigurierbar
• Ab ODA X8: mehrere physikalische Schnittstellen• VLANs auf btbond0; weitere Netzwerke auf physikalisch getrennten
NICs
27
Die Datenbank-Profis
Anforderungen
• ODA X7-2 18.5:• Mehrere Datenbanken
• verschiedenen VLANs
• Über unterschiedliche IP-Adressen erreichbar
28
3 Wünsche auf
einmal…
Die Datenbank-Profis
ODA und VLANs (2)
• VLAN-Konfiguration bereits beim configure-firstnet angeben (!)• VLAN-Nutzung: ja|nein
• VLAN-ID
• Danach "normal" weiter mit IP-Adresse und Subnetz
29
Die Datenbank-Profis
ODA-Repository vs. GI
• Ressourcen müssen sowohl im ODA-Repository als auch in der GI bekannt / registriert sein!• ODA: odacli register | add | create | list | describe
• GI: srvctl add | status | config | modify
30
Die Datenbank-Profis
Voraussetzungen / Durchführung
• VLAN-fähige Switches
• Anlage weiterer network-Ressource Typ VLAN mit odacli
• --networktype Database ab ODA-Software-Version 12.2.1.2.0
• Registrierung des VLANs in der GI mit srvctl
• Konfiguration der VIP- und Listener-Ressourcen im neuen VLAN / in der GI
• Konfiguration der Datenbank zur Nutzung des neuen Listeners
31
Die Datenbank-Profis
Neues Netzwerk mit odacli[root@oda1 ~]# odacli list-networks
ID Name NIC InterfaceType IP Address VlanId
------------ ------------------ ---------- ---------- --------------- --------
ebb4d570-18f Private-network priv0 INTERNAL 192.168.16.24
34b0dc96-9c1 Public-network btbond1.110 VLAN 10.1.10.x 110
[root@oda1 ~]# odacli create-network --no-defaultnetwork --interface btbond1
--interfaceType VLAN --name dbvl-12 --vlanId 112 --networktype Database --gateway
10.1.12.z --ipaddress 10.1.12.y
[root@oda1 ~]# odacli list-networks
ID Name NIC InterfaceType IP Address VlanId
------------ ------------------ ---------- ---------- --------------- --------
ebb4d570-18f Private-network priv0 INTERNAL 192.168.16.24
34b0dc96-9c1 Public-network btbond1.110 VLAN 10.1.10.x 110
43813b63-569 dbvl-12 btbond1.112 VLAN 10.1.12.y 112
32
Die Datenbank-Profis
Neues Netzwerk mit odacli (2)[root@oda1 ~]# odacli describe-network -i 43813b63
-569c-4e25-829a-6d40e9579295
Network details
----------------------------------------------------------------
ID: 43813b63-569c-4e25-829a-6d40e9579295
Name: dbvl-12
NIC: btbond1.112
InterfaceType: VLAN
IP Address: 10.1.12.y
Subnet Mask: 255.255.255.0
Gateway: 10.1.12.z
VlanId: 112
Type: Database
Default: false
Created: Nov 2, 2019 12:16:46 PM CEST
33
Die Datenbank-Profis
Registrierung in der GI
[root@oda1 ~]# srvctl add network -netnum 112
-subnet 10.1.12.0/255.255.255.0/btbond1.112 -nettype
static
[root@oda1 ~]# srvctl config networkNetwork 1 existsSubnet IPv4: 10.1.10.0/255.255.255.0/btbond1.110, staticNetwork is enabled…Network 112 existsSubnet IPv4: 10.1.12.0/255.255.255.0/btbond1.112, static
34
Die Datenbank-Profis
VIP und Listener hinzufügen
[root@oda1 ~]# srvctl add vip -node oda1
-netnum 112 -address
10.1.12.y/255.255.255.0
[root@oda1 ~]$ srvctl add listener –netnum
112 –endpoints "TCP:1561" –user grid
–listener lsnrvl112
35
Die Datenbank-Profis
Kontrolle
36
Die Datenbank-Profis
Verwendung des neuen Listeners in der DB
alter system set
local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=
10.1.12.y)(PORT=1561))';
alter system set
listener_networks='(name=net112)(LOCAL_LISTENER=(ADDRESS=
(PROTOCOL=TCP)(HOST= 10.1.12.y)(PORT=1561)))'
• Fertig – die Datenbank ist nun beim neuen Listener registriert!
37
Die Datenbank-Profis
• Mail: [email protected]
• Web: www.hl-services.de
• Blog: blog.hl-services.de
• Twitter: @soesa69
• Live: Hier in der Ausstellung, Stand 236
Ebene 2 (gelb), 2. Stand links von der Rolltreppe
38