Linux-HA Version 2. LUG Erding, 25.6.2008



Ähnliche Dokumente
Entwicklungen bei der Linux Clustersoftware

Eine hochverfügbare Firewall mit Linux-HA, iptables und fwbuilder

Powermanager Server- Client- Installation

Linux Hochverfügbarkeits-Cluster

Installationsanleitung für pcvisit Server (pcvisit 12.0)

Linux Cluster mit Pacemaker und Heartbeat 3

Tutorial Windows XP SP2 verteilen

Software zur Anbindung Ihrer Maschinen über Wireless- (GPRS/EDGE) und Breitbandanbindungen (DSL, LAN)

How-to: Webserver NAT. Securepoint Security System Version 2007nx

OP-LOG

MailUtilities: Remote Deployment - Einführung

Live Update (Auto Update)

Tutorial -

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Installation SQL- Server 2012 Single Node


Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Anbindung des eibport an das Internet

Linux-HA-Cluster Heartbeat mit DRBD

ITF2XML. Transferservice. Version 1.1. Tel.: 044 / Fax: 044 / CH-8005 Zürich

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Formular»Fragenkatalog BIM-Server«

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Anleitung TUS Port Checker 2.0

Avira Server Security Produktupdates. Best Practice

Eine hochverfügbare Firewall mit iptables und fwbuilder. Secure Linux Administration Conference, 11. Dec 2008

Installationsanleitung für pcvisit Server (pcvisit 15.0)

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

ANYWHERE Zugriff von externen Arbeitsplätzen

Updatehinweise für die Version forma 5.5.5

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Installation Hardlockserver-Dongle

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Hochverfügbare Virtualisierung mit Open Source

Switching. Übung 7 Spanning Tree. 7.1 Szenario

Verfügbarkeit von Applikationen und Failover Szenarien. Winfried Wojtenek.

Virtual Private Network

Funktion rsync mit den actinas Cube Systemen.

ANLEITUNG NETZEWERK INSTALATION

Übung: Netzwerkmanagement mit SNMP

HOWTO Update von MRG1 auf MRG2 bei gleichzeitigem Update auf Magento CE 1.4 / Magento EE 1.8

Spotlight 5 Gründe für die Sicherung auf NAS-Geräten

Konfigurationsbeispiel ZyWALL USG

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen

SolarWinds Engineer s Toolset

Installationsanleitung dateiagent Pro

Avira Management Console Optimierung für großes Netzwerk. Kurzanleitung

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Installation Microsoft Lync 2010 auf Linux

Konfiguration Firewall (Zyxel Zywall 10) (von Gruppe Schraubenmeier)

Lizenzen auschecken. Was ist zu tun?

HTBVIEWER INBETRIEBNAHME

WLAN Konfiguration. Michael Bukreus Seite 1

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Anleitung zur Inbetriebnahme einer FHZ2000 mit der homeputer CL-Software

Backup-Server einrichten

FastViewer Remote Edition 2.X

Warum beschäftigt sich ein Linux-Systemhaus mit der Installation von OTRS mit einem Microsoft SQL Server?

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

Pädagogische Hochschule Thurgau. Lehre Weiterbildung Forschung

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

Lizenz-Server überwachen

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

MetaQuotes Empfehlungen zum Gebrauch von

Windows Server 2008 (R2): Anwendungsplattform

Oracle 9i Real Application Clusters

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

FrogSure Installation und Konfiguration

HowTo: Ereigniseinrichtung

Version 0.3. Installation von MinGW und Eclipse CDT

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

Anleitung zur Nutzung des SharePort Utility

Verwendung des IDS Backup Systems unter Windows 2000

> Soft.ZIV. Maple Mathematisches Software System

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014

Hardware: QNAP TS 112 mit der Firmware Build 1126T mit 500GB Speicher Twonky Media Version

Parallels Mac Management 3.5

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Schritt 1: Auswahl Schritt 3 Extras > Konten Schritt 2: Konto erstellen Konto hinzufügen klicken

M a i l C r e d i t. \\Burt\user\Soutschek\FP\Technik\Frankiermaschinen\00_PC Software\MailCredit\Anleitung MailCredit Installation.

ITF2XML. Transferservice. Version 1.0. infogrips GmbH, Zürich client10.doc, Revision 1.1. Tel.: 01 / Fax: 01 /

Sicherheit QUALITÄTSSICHERUNG DESIGNER24.CH V 1.2. ADRESSE Designer24.ch Web Print Development Postfach Turbenthal Schweiz

OpenMAP WEBDrive Konfiguration. Oxinia GmbH , Version 1

Stecken Sie Ihren USB Stick oder Ihre externe USB Festplatte in den USB Steckplatz des Sinus 154 DSL SE.

Anleitung Grundsetup C3 Mail & SMS Gateway V

EASYINSTALLER Ⅲ SuSE Linux Installation

Zur Konfiguration werden hierbei das Setup-Tool und die Shell verwendet.

Firewalls für Lexware Info Service konfigurieren

Hallo, Anmeldung auf der Office-Webplattform: Seite 1 von 7 Office 365 Pro Plus

Windows Server 2012 RC2 konfigurieren

Proxy. Krishna Tateneni Übersetzer: Stefan Winter

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version Deutsch

ADNP/9200 mit E2U/ESL1: Web Interface Beispiele

INSTALLATIONSANLEITUNG der Version 2.1 (Jänner 2014)

Addware Urlaubsmanager 3.22 Installations-Guide

Switch 1 intern verbunden mit onboard NICs, Switch 2 mit Erweiterungs-NICs der Server 1..6

Transkript:

MultiNET Services GmbH Linux-HA Version 2 LUG Erding, 25.6.2008 Dr. Michael Schwartzkopff, MultiNET Services GmbH MultiNET Services GmbH, Seite 1

Inhalt Hochverfügbarkeit allgemein Grundlagen und Architektur von Clustern Ressourcen und Bedingungen Administration: GUI und Kommandozeile Betrieb MultiNET Services GmbH, Seite 2

Hardlink misch@multinet.de Linux-HA Mailingliste MultiNET Services GmbH, Seite 3

Was ist Hochverfügbarkeit? Die IT soll Dienste immer anbieten. Was sind Dienste? Was bedeutet immer? MultiNET Services GmbH, Seite 4

Was bedeutet immer? 7 x 24 ist Standard, also 365,2425 Tage/Jahr. Tatsächlich wird diese Verfügbarkeit nur annähernd erreicht. Der Grad wird in Prozent oder Anzahl 9 angegeben. 100% Verfügbarkeit gibt es nicht. Beispiele 99% ~ 7,2 h / Monat Ausfall 99,999% ~ 5,26 Min / Jahr (!) MultiNET Services GmbH, Seite 5

Redundanz unter Linux Linux-HA (Heartbeat) Ein Ersatzserver übernimmt im Fehlerfall die Aufgabe des primären Servers Dies beinhaltet die Übername von IP Adressen, uvm. Lastverteilung: Im Prinzip nein, aber... Aktiv / Passiv System: Zwei Rechner. Alternativen: Aktiv / Aktiv: Die Ressourcen sind auf zwei Rechnern verteilt. oder n to m Systeme: Die Ressourcen sind auf mehreren Rechnern verteilt. MultiNET Services GmbH, Seite 6

Was leistet Linux HA? Keine 100%ige Verfügbarkeit! Cluster schützen vor einzelnen Fehlern, nicht vor mehreren gleichzeitigen Fehlern. Auszeiten werden kurz: Sekunden bis Minuten Wie beim Zaubern: Wenn alles gut geht, war die Hand schneller als das Auge Üblicherweise kann man eine 9 an die Basisverfügbarkeit anhängen. Achtung: Komplexität ist der Feind der Zuverlässigkeit! MultiNET Services GmbH, Seite 7

Linux HA Prinzip I Netzwerk Heartbeat IP und MAC: 1 IP und MAC: 2 Cluster IP: 3, MAC: 1 MultiNET Services GmbH, Seite 8

Linux HA Prinzip I Netzwerk Failover Heartbeat Achtung: Neue MAC für IP 3! IP und MAC: 1 IP und MAC: 2 Cluster IP: 3, MAC: 2 MultiNET Services GmbH, Seite 9

Bekanntes... Funktioniert so ähnlich wie die bekannten init startup Scripte Erweiterungen Übergabe von Parametern an das Script (optional) Läuft auf mehr als einem Computer Regeln für Reihenfolge für Start / Stop von Diensten Beziehungen von Dienste untereinander zeitliche Begrenzungen für Dienste HA Systeme sind ein bisschen wie init on steroids MultiNET Services GmbH, Seite 10

... und Neues Clusterarchitekturen haben folgende Probleme zur Folge: Split Brain Quorum Fencing Gemeinsam genutzte Daten sind bei Einzelservern kein Problem, bei Clustern ist diese Funktion kritisch. MultiNET Services GmbH, Seite 11

Split - Brain Probleme in der Kommunikation zwischen den Knoten eines Clusters können zu separaten Teilen des Clusters führen. Wenn jeder dieser Teile versucht, die Kontrolle über den Cluster zu erhalten nennt man das eine Split- Brain Situation. GAU im Cluster, bis hin zum totalen Datenverlust. MultiNET Services GmbH, Seite 12

Quorum Das Quorum Konzept ist ein Versuch Split Brain Situationen in die meisten Problemfällen zu verhindern. Üblicherweise wird versucht sicherzustellen, dass nur einen Teilcluster die Kontrolle übernimmt. Übliche Methode ist die Abstimmung: Nur eine Partition mit mehr als N/2 Knoten des ursprünglichen Clusters kann die Kontrolle übernehmen. Quorum funktioniert nicht mit 2 Knoten im Cluster MultiNET Services GmbH, Seite 13

Fencing (I) Fencing versucht fehlerhafte Knoten vom Zugriff auf Ressourcen abzuschneiden (Speicher, Netz, Strom). Auf die Annahme eines korrekten Verhaltens kann verzichtet werden. Linux HA nutzt STONITH Shoot The Other Node In The Head Self-Fencing, z.b. IBM ServeRAID Gute deutsche Übersetzung für Fencing gesucht! MultiNET Services GmbH, Seite 14

Fencing (II) Garantiert die Integrität des Gesamtsystems Cluster in problematischen Fällen Da ein Teilcluster nichts über den tatsächlichen Zustand andere Teilcluster wissen kann wird mit STONITH dafür gesorgt, dass der tatsächliche Zustand den anderen Teils der Vorstellung des ersten Teils entspricht. Einfachste Implementation: Strom abschalten. MultiNET Services GmbH, Seite 15

Gemeinsame Daten Keine: In vielen Szenarien werden keine Daten zwischen den Knoten eines Clusters gemeinsam genutzt. Replikation: In vielen Fällen reicht eine langsame Replikation der Daten z.b. mit rsync. Volle Synchronisation: Distributed Redundant Block Devices (DRBD). Ein bisschen wie RAID, nur auf zwei Rechnern. Outsourcen des Problems: NAS, SAN MultiNET Services GmbH, Seite 16

Linux HA: Hintergrund Entwicklung seit 1998 ca. 30.000 Syteme im Einsatz Aktive Entwicklung durch IBM und SuSE/Novell In den meisten Distributionen enthalten Keine zusätzliche Hardware notwendig, alles Userspace, d.h. kein Kernelmodul Alle Releases werden durch automatische Tests überprüft. MultiNET Services GmbH, Seite 17

Linux HAv2: Fähigkeiten (I) Bis zu 16 Knoten im Cluster Clusterkommunikation: Seriell, udp (bcast, mcast, ucast). Redundanz möglich. Failover bei Problem des Knoten oder des Dienstes Failover bei Problemen im Netzwerk oder bei anderen frei definierten Kriterien Aktiv / Passiv oder volles Aktiv / Aktiv Eingebaute Überwachung der Ressourcen MultiNET Services GmbH, Seite 18

Linux HAv2: Fähigkeiten (II) Unterstützung des Open Cluster Framework (OCF) Standards. Modell für Bedingungen und Abhängigkeiten Konfiguration basiert auf XML GUI zur Konfiguration und Überwachung Unterstützung für das OCFSv2 Multi-State (Master/Slave) Ressourcen Split-Site Cluster mit Quorum MultiNET Services GmbH, Seite 19

Installation Bei vielen Distribution ist heartbeart enthalten SuSE Build Service: http://download.opensuse.org/repositories/server:/haclustering/ Pakete für debian, Fedora, Mandriva, SLES, opensuse, Ubuntu z. Zt. 2.1.3-18 Aktuelle Version (>= 2.1.3) wichtig! SLES Dokumentation auf: http://www.novell.com/documentation/sles10/heartbeat/data/ heartbeat.html MultiNET Services GmbH, Seite 20

Neu: Pacemaker Aufspaltung des Projekts im Dezember 2007 Hintergründe dazu: Mailingliste und http://www.clusterlabs.org/#project_history Installation siehe: http://www.clusterlabs.org/mw/install Änderungen: Cluster Resource Manager (CRM) wird ersetzt durch pacemaker Es ist einfach ein zusätzliches Paket zu installieren. MultiNET Services GmbH, Seite 21

Erste Konfiguration Die Dateien ha.cf und authkeys werden benötigt. Beispiele aus /usr/share/doc/heartbeat nach /etc/ha.d kopieren. Knoten und Cluster Kommunikation in ha.cf einrichten. Signatur (Passwort) in authkeys einrichten. MultiNET Services GmbH, Seite 22

Der Rest der Konfiguration...... steht in der CIB Datei: /var/lib/heartbeat/crm/cib.xml Niemals direkt editieren! Beim erstem Systemstart wird automatisch eine leere CIB angelegt. Ausgabe der CIB: cibadmin -Q MultiNET Services GmbH, Seite 23

Die CIB Die CIB enthält: Information über die Konfiguration Informationen über die Knoten Informationen über die Ressourcen Informationen über die Bedingungen Informationen über den Status des Clusters Welche Knoten sind up / down? Alle Attribute der Knoten Welche Ressourcen laufen auf welchem Knoten Der Administrator gibt nur die Konfiguration ein. MultiNET Services GmbH, Seite 24

Variablen in der CIB An vielen Stellen der CIB werden Namen Werte zugewiesen Linux HA nutzt <nvpair> Tags Die Syntax ist: <nvpair id= uuid name= Name value= Wert /> In anderen Programmiersprachen heißt das: Name = Wert MultiNET Services GmbH, Seite 25

Ressourcen: Einfache Ressourcen Ressourcen sind alles, was von heartbeat verwaltet wird. Agenten sind Verbindung zwischen heartbeat und der tatsächlichen Ressource. Vergleichbar sind die Scripte, die von init beim Systemstart aufgerufen werden. Die Abkürzung ist RA. Einfache Ressourcen werden als primitive Resources bezeichnet Im Gegensatz dazu existieren noch komplexere, zusammengesetzte Ressourcen. MultiNET Services GmbH, Seite 26

Ressource Objekte Version 2 unterstützt folgende Ressource Objekte : Einfache (primitive) Ressources OCF, heartbeat, oder LSB resource agent Scripte Klone: n Ressource Objekte irgendwo im Cluster Gruppen: Eine Gruppe von einfachen Ressourcen mit impliziten Bedingungen Multi-state Ressourcen (master/slave) Entwickelt, um Master/Slave Ressourcen abzubilden, die dies zur Replikation benötigen (DRBD, et al) MultiNET Services GmbH, Seite 27

OCF Ressource Agenten OCF: Open Cluster Framework OCF RAs sind erweiterte init Scripte Sie können mittels Umgebungsvariablen gesteuert werden Sie haben zusätzliche Aktionen: monitor: Überwachung der Ressource meta-data: Liefert Informationen über den RA. Wird in der GUI genutzt. validate-all: Überprüfung der Parameter der Ressource OCF RAs finden sich in /usr/lib/ocf/resource.d/provider-name/ Siehe auch http://linux-ha.org/ocfresourceagent MultiNET Services GmbH, Seite 28

Einfache Bedingungen Es gibt keine Vorgaben, wo welche Ressourcen laufen sollen. Falls der Administrator das nicht wünscht, können Bedingungen für Ressourcen definiert werden: Anordnung: Eine Ressource wird nach einer anderen gestartet Co-Lokation: Eine Ressourcen läuft auf dem selben Knoten, wie eine Andere. Platzierung: Eine Ressource soll auf einem bestimmten Knoten laufen. MultiNET Services GmbH, Seite 29

Punktesystem Der Administrator vergibt Punkte für erfüllte Bedingungen. (Co-Lokation,...(!)) heartbeat wertet diese Bedingungen im Kontext jedes Knotens aus und die zählt entsprechenden Punkte pro Ressource und pro Knoten. Eine Ressource wird auf dem Knoten ausgeführt, wo sie am meisten Punkte sammeln kann Falls gleiche Punktezahl erreicht wird, verteilt heartbeat die Ressourcen gleichmäßig auf die Knoten. MultiNET Services GmbH, Seite 30

Bedingungen für Fortgeschrittene Beliebige Bedingungen können konfiguriert werden. Beispiele: Bedingungen in Zusammenhang mit Multi-State Ressourcen. Bedingungen, die sich auf Attribute von Knoten beziehen. Zeitliche Begrenzungen für Bedingungen. Erreichbarkeit im Netz Beliebige Bedingungen Failover erst nach N Fehlern MultiNET Services GmbH, Seite 31

Bedienung: Die GUI Zur Bedienung / Konfiguration gibt es eine GUI. Ressourcen und Bedingungen können über die GUI konfiguriert werden. Die GUI hat ihre Grenzen! Diese Grenzen sind teilweise sehr schnell erreicht. Gut für die Überwachung. Aber: Es gibt kein Rollenkonzept! Für Firewalls: Die GUI nutzt Port tcp/5560. Ideal sind identische Versionen von GUI und heartbeat. Aufrufen mit hb_gui. MultiNET Services GmbH, Seite 32

Die GUI MultiNET Services GmbH, Seite 33

Die Kommandozeile Die wichtigsten Kommandos: crm_mon: Status des Clusters cibadmin: Schnittstelle zur CIB crm_resource: Schnittstelle zum CRM crm_failcount: Schnittstelle zum Fehlerzähler ocf-tester: Testet eine ocf Ressource crm_verify: Überprüft die CIB auf Probleme stonith: STONITH Kommando MultiNET Services GmbH, Seite 34

Warum Version 2? Einfache Konfigurationen, entsprechend Version 1, sind möglich. Schwierige Konfigurationen ebenfalls. Interne Überwachung der Ressourcen durch den Cluster. Dynamische Modifikation am Cluster während der Laufzeit. MultiNET Services GmbH, Seite 35

Überwachung eines Clusters Externe Überwachung notwendig. Netzwerk Management nutzen (oder aufbauen)! Simple Network Management Protocol (SNMP) ist der Klassiker. Linux HA bringt einen eigenen Subagenten mit. MultiNET Services GmbH, Seite 36

MIB von Linux-HA LINUX-HA-MIB::LHATotalNodeCount.0 = Counter32: 2 LINUX-HA-MIB::LHALiveNodeCount.0 = Counter32: 2 (...) LINUX-HA-MIB::LHANodeName.1 = STRING: xen02 LINUX-HA-MIB::LHANodeName.2 = STRING: xen01 LINUX-HA-MIB::LHANodeType.1 = INTEGER: normal(1) LINUX-HA-MIB::LHANodeType.2 = INTEGER: normal(1) LINUX-HA-MIB::LHANodeStatus.1 = INTEGER: active(3) LINUX-HA-MIB::LHANodeStatus.2 = INTEGER: active(3) (...) LINUX-HA-MIB::LHANodeIFCount.1 = Counter32: 1 LINUX-HA-MIB::LHANodeIFCount.2 = Counter32: 1 LINUX-HA-MIB::LHAIFName.1.1 = STRING: eth0 LINUX-HA-MIB::LHAIFName.2.1 = STRING: eth0 LINUX-HA-MIB::LHAIFStatus.1.1 = INTEGER: up(1) LINUX-HA-MIB::LHAIFStatus.2.1 = INTEGER: up(1) (...) MultiNET Services GmbH, Seite 37

Traps von heartbeat Wichtige Traps von hbagent: LHANodeStatusUpdate NOTIFICATION-TYPE OBJECTS { LHANodeName LHANodeStatus } DESCRIPTION "A node status change event just happened." LHAIFStatusUpdate NOTIFICATION-TYPE OBJECTS { LHANodeName LHAIFName LHAIFStatus } DESCRIPTION "A link status just changed." LHAMembershipChange NOTIFICATION-TYPE OBJECTS { LHANodeName LHAMemberLastChange } DESCRIPTION "A node just changed it membership. " MultiNET Services GmbH, Seite 38

Überwachung durch nagios Abfrage von LHALiveNodeCount und Vergleich mit der Anzahl der Knoten im Cluster Definition eines neuen Kommandos in checkcommands.conf: define command { command_name check_snmp_cluster command_line $USER1$/check_snmp \ -H $HOSTADDRESS$ \ -o.1.3.6.1.4.1.4682.1.2.0 \ -w 2: -c 2: } wenn der Cluster aus 2 Knoten besteht. MultiNET Services GmbH, Seite 39

Vielen Dank für die Aufmerksamkeit! Rückfragen jederzeit: misch@multinet.de Tipps und Tricks: http://clusterbau.blogspot.com Praxis Seminar bei Heinlein-Support MultiNET Services GmbH, Seite 40