Upload
nico-meisenzahl
View
120
Download
0
Embed Size (px)
Citation preview
Make Your Data Work for You
DB2 High Availability für IBM Connections, Sametime
und Traveler Nico MeisenzahlSeptember 2016
• Consultant bei panagenda• IBM Notes / Domino seit 2008• IBM Connections seit Version 3.0 / 2010• Jahrelange Erfahrung in:
– Consulting– Migrationen & Administration
• “panagendian” seit 2016 mit Fokus auf:– IBM Connections Consulting– ICS Deployment & Optimierung
Nico Meisenzahl
2
@nmeisenzahl linkedin.com/in/nicomeisenzahl meisenzahl.org nico.meisenzahl +49 170 [email protected]
I. Cluster TechnologienII. High Availability and Disaster Recovery (HADR)III. Installation & Konfiguration (Demo/Hands-on)IV. Administration & Tipps
Agenda
Make Your Data Work for You
Cluster Technologien &High Availability and DisasterRecovery (HADR)
Übersicht Technologien
• pureScale– “Going to extremes on scale and availability for DB2”– mehrere aktive Nodes– shared Storage– Workload Management
• SQL Replication / Q-Replication• High Availability mit
– Disk mirroring oder Log shipping– Cluster-Manager Software
• IBM Tivoli System Automation (SA MP)• Microsoft Cluster Server für Windows• IBM PowerHA SystemMirror für AIX• Sun Cluster für Solaris
5
High Availability and Disaster Recovery
• Cluster-Manager Software– IBM Tivoli System Automation (SA MP)– Microsoft Cluster Service for Windows– IBM PowerHA SystemMirror for AIX – LifeKeeper for Linux/Windows – pureScale (seit v10.5)
• Datenreplikation mithilfe vom Log Shipping• Automatic Client Reroute (ACR)• DB2 High Availability Instance Configuration Utility (db2haicu)
6
Topology
7
Takeover (1)
8
Takeover (2)
9
Takeover (3)
10
Takeover & Tivoli SA MP
11
• Bietet Scripts zum– Monitoring/Locking von Ressourcen– Starten und Stoppen von Ressourcen– Takeover von Ressourcen– Takeover der Virtuellen IP (VIP)
• Monitoring• Auslösen von Takeover &
Ressourcen-Locking
Automatic Client Reroute
12
• JDBC– enableClientAffinitiesList=1– clientRerouteAlternateServerName=<serverlist>– clientRerouteAlternatePortNumber=<portlist>
• DB2 Connect– clientRerouteAlternateServerName =<serverlist> – clientRerouteAlternatePortNumber=<portlist>
• Support in weiteren Produkten z.B. WAS• Hinterlegen der VIP oder des Standby Nodes
Datenbanken im HADR
13
Log shipping
14
High Availability Topology
• Aktiv/aktiv– Mehrere aktive Nodes (seit. v10.1)– Ressourcen aller Nodes werden genutzt– Auf Datenbank-Ebene weiterhin primary/standby
• Aktiv/passiv– Ein aktiver Node– Bis zu drei passive Nodes möglich– Primary DB auf aktivem Node, Standby DB auf passivem Node
• Aktiv/passiv (reads on standby, ROS, seit v9.7.x)– Gleich aktiv/passiv– Lesender Zugriff auf Standby Datenbanken möglich
15
• HOT Node– Lizenzierung gleich Primary Node
• WARM Node– 100 PVU oder 25 Authorized User
Single Installs (je nach Lizenzierung)
• COLD Node– Keine Lizenz nötig
• pureScale unterliegt einer eigenen Lizenzierung
Info: Nutzung mit Connections, Sametime und Traveler abklären!
HADR Lizenzierung
16
Make Your Data Work for You
Demo / Hands-on
Demo: HADR aktiv/passiv
• Zwei Nodes– DB2 ESE 10.5.7 vorinstalliert– Instanz db2inst1
• Topologie– Node db1
• Public: db1.pana.local, 192.168.9.206, eth0• Private: db1-hadr.pana.local, 192.168.203.206, eth1
– Node db2• Public: db2.pana.local, 192.168.9.207, eth0• Private: db2-hadr.pana.local, 192.168.203.207, eth1
– VIP• Public: db-access.pana.local, 192.168.9.208, eth0:0
18
Demo: HADR aktiv/passiv
• DB2 Installation– Pre-request Check
• <setupdir>/db2precheck• <setupdir>/db2/linuxamd64/tsamp/prereqSAM
– „Typical“ installiert Tivoli SA MP– Deaktivieren von DB2 Fault Monitoring (db2fm)– Lizenz einspielen!
• To Dos:– Vorbereiten der Instanzen– Konfiguration der Datenbank– HADR starten– High Availability Instance Configuration Utility (db2haicu)– Takeover testen
Info: Lizenzen für Warm Cluster notwendig
19
Demo: Vorbereitung DB2
• Anpassung /etc/services– DB2_HADR_testdb 50501/tcp– Instanz neustarten
• Nodes vorbereiten– preprpnode db1 db2
• Datenbank „TESTDB“ anlegen (db1)– CREATE DB TESTDB
20
Demo: Konfiguration testdb primary (db1)
• UPDATE DB CFG FOR TESTDB USING LOGARCHMETH1 LOGRETAIN;BACKUP DB TESTDB TO /home/db2inst1/;
• UPDATE DB CFG FOR TESTDB USING HADR_LOCAL_HOST 192.168.203.206;UPDATE DB CFG FOR TESTDB USING HADR_LOCAL_SVC 50501;UPDATE DB CFG FOR TESTDB USING HADR_REMOTE_HOST 192.168.203.207;UPDATE DB CFG FOR TESTDB USING HADR_REMOTE_SVC 50501;UPDATE DB CFG FOR TESTDB USING HADR_REMOTE_INST db2inst1;UPDATE DB CFG FOR TESTDB USING HADR_TIMEOUT 120;UPDATE DB CFG FOR TESTDB USING HADR_TARGET_LIST 192.168.203.207:50501;UPDATE DB CFG FOR TESTDB USING HADR_SYNCMODE NEARSYNC;UPDATE DB CFG FOR TESTDB USING HADR_PEER_WINDOW 120;UPDATE DB CFG FOR TESTDB USING HADR_SPOOL_LIMIT 0;UPDATE DB CFG FOR TESTDB USING HADR_REPLAY_DELAY 0;UPDATE DB CFG FOR TESTDB USING BLOCKNONLOGGED YES;UPDATE DB CFG FOR TESTDB USING LOGINDEXBUILD ON;UPDATE DB CFG FOR TESTDB USING INDEXREC RESTART;UPDATE ALTERNATE SERVER FOR DATABASE TESTDB USING HOSTNAME 192.168.9.208 PORT 50501;BACKUP DB TESTDB TO /home/db2inst1/;
21
Demo: Konfiguration testdb standby (db2)
• RESTORE DB TESTDB FROM /home/db2inst1/;• UPDATE DB CFG FOR TESTDB USING HADR_LOCAL_HOST 192.168.203.207;
UPDATE DB CFG FOR TESTDB USING HADR_REMOTE_HOST 192.168.203.206;UPDATE DB CFG FOR TESTDB USING HADR_TARGET_LIST 192.168.203.206:50501;
22
Demo: testdb HADR starten
• db2.pana.local– START HADR ON DB TESTDB AS STANDBY
• db1.pana.local– START HADR ON DB TESTDB AS PRIMARY
23
Demo: High Availability Instance Configuration Utility
• Befehl: db2haicu• Konfiguriert die Tivoli SA MP Scripts• Standby Node zuerst konfigurieren
24
Demo: db2haicu auf db2 (1)
25
Demo: db2haicu auf db2 (2)
26
Demo: db2haicu auf db2 (3)
27
Demo: db2haicu auf db2 (4)
28
Demo: db2haicu auf db2 (5)
29
Demo: db2haicu auf db2 (6)
30
Demo: db2haicu auf db1 (1)
31
Demo: db2haicu auf db1 (2)
32
Demo: db2haicu auf db1 (3)
33
Demo: lssam & db2pd -ha
34
Demo: Takeover (switch role)
• TAKEOVER HADR ON DB TESTDB
35
Demo: Takeover (failover)
36
Demo: Takeover (failover)
37
Demo: Takeover (failover)
38
Demo: Takeover (failover)
39
Make Your Data Work for You
Administration & Tipps
Administrative Befehle
• Starten/Stoppen– START HADR ON DB TESTDB AS STANDBY– START HADR ON DB TESTDB AS PRIMARY (BY FORCE)– STOP HADR ON DB TESTDB
• HADR Status– lssam– db2pd -hadr -db testdb (-alldbs)– db2pd –ha
• Takeover– TAKEOVER HADR ON DB TESTDB (BY FORCE)
• Unlock Ressouces– rgreq -o unlock xxx
Info: Vorsichtiger Umgang mit by force
41
Takeover - prevent split brain
• Primary Datenbank startet nur wenn Standby verfügbar– Hadr_timeout
• Takeover: alte Primary DB kontaktiert neue Primary DB und startet als Standby
• Split Brain ist möglich!– Komplexer Ausfall inkl. Netzwerkausfall und Reboots– Administrativer Fehler (by force)– Auflösen über
• Backup/Restore• START HADR ON DB TESTDB AS STANDBY• Auf VIP achten!
42
Deactivate/Activate Tivoli SAMP & Ressourcen locking
• Deaktivieren Tivoli SA MP– samctrl -M T
• Aktivieren Tivoli SA MP– samctrl -M F
• Ressourcen locken (db2haicu deaktivieren)– db2haicu -disable
• db2haicu aktiveren– db2haicu
43
Monitoring
• db2pd -hadr -db testdb (-alldbs)• db2pd –ha• MON_GET_HADR Funktion• Verbesserungen mit v10.1
44
Monitoring Parameter
• HADR_ROLE• HADR_STATE• HADR_CONNECT_STATUS• TIME_SINCE_LAST_RECV
– HEARTBEAT_INTERVAL
• HADR_LOG_GAP
45
Logs
• db2diag– Filter Optionen
• db2diag.log– Logfile Rollover konfigurieren!
• samlog– Logs sind binär
• Syslog
46
Links
• DB2 HADR Wiki – https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/DB
2HADR• DB2 HADR Redbook
– http://www.redbooks.ibm.com/redbooks/pdfs/sg247363.pdf
• Tivoli SA MP Cheatsheat– http://www-01.ibm.com/support/docview.wss?uid=swg21653981
• MON_GET_HADR Tabellen Funktion– http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.
sql.rtn.doc/doc/r0059275.html• HADR Simulator
– https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/DB2HADR/page/HADR%20simulator?section=Introduction
47
Fragen?
48
@nmeisenzahl linkedin.com/in/nicomeisenzahl meisenzahl.org nico.meisenzahl +49 170 [email protected]
Headquarters, Austria:panagenda GmbH (Ltd.)Schreyvogelgasse 3/10AT 1010 Vienna
Phone: +43 1 89 012 89Fax: +43 1 89 012 89-15E-Mail: [email protected]
Headquarters, Germany:panagenda GmbH (Ltd.)Lahnstraße 17DE 64646 Heppenheim
Phone: +49 6252 67 939-00Fax: +49 6252 67 939-16E-Mail: [email protected]
USA:panagenda Inc.60 State Street, Suite 700MA 02109 Boston
Phone: +1 617 855 5961Fax: +1 617 488 2292E-Mail: [email protected]
Germany:panagenda Consulting GmbH (Ltd.)Donnersbergstraße 1DE 64646 Heppenheim
Phone: +49 6252 67 939-86Fax: +49 6252 67 939-16E-Mail: [email protected]
The Netherlands:Trust Factory B.V. 11th Floor,Koningin Julianaplein 10NL 2595 AA The Hague
Phone: +31 70 80 801 96E-Mail: [email protected]
© 2007-2015 panagendaMake Your Data Work for You