


So stellen Sie eine Hochverfügbarkeitsarchitektur unter Linux bereit
Mit dem Aufkommen des Big-Data-Zeitalters beginnen immer mehr Unternehmen und Organisationen, Linux-Betriebssysteme als Serverplattformen zu verwenden. Um die Verfügbarkeit und Stabilität von Anwendungen sicherzustellen, ist die Hochverfügbarkeitsarchitektur zu einem unverzichtbaren Bestandteil von Linux-Servern geworden. In diesem Artikel wird erläutert, wie Sie eine Hochverfügbarkeitsarchitektur unter Linux bereitstellen.
Was ist Hochverfügbarkeitsarchitektur?
Hochverfügbarkeit (HA) bezieht sich auf eine Systemarchitektur, die weiterhin Dienste bereitstellen kann, wenn das System ausfällt. HA kann durch eine Vielzahl von Technologien implementiert werden, wie z. B. Lastausgleich, redundantes Backup, Failover usw. Für Anwendungen auf Unternehmensebene ist die Aufrechterhaltung einer hohen Verfügbarkeit von entscheidender Bedeutung, da sie sicherstellt, dass die Anwendung auch im Falle unerwarteter Umstände weiterhin normal funktionieren kann.
Schritte zur Bereitstellung einer Hochverfügbarkeitsarchitektur unter Linux
- Netzwerkplanung
Zuerst müssen Sie das Netzwerk planen. Um eine hohe Verfügbarkeit sicherzustellen, sollte jedem Knoten im Cluster eine unabhängige IP-Adresse zugewiesen und zu einer virtuellen IP-Adresse zusammengefasst werden. Darüber hinaus muss der Netzwerkspeicher so konfiguriert werden, dass der Cluster Daten zwischen Knoten teilen kann.
- Software installieren
Bevor Sie die Software installieren, installieren Sie die erforderlichen Softwarepakete auf jedem Knoten, z. B. Heartbeat-, Corosync- und PC-Pakete. Es kann mit dem folgenden Befehl auf CentOS installiert werden:
sudo yum install corosync pcs pacemaker resource-agents
- Corosync und Heartbeat konfigurieren
Als nächstes müssen Corosync und Heartbeat konfiguriert werden, um die Kommunikation zwischen den beiden Knoten zu ermöglichen. Dies ist einer der wichtigsten Schritte zur Gewährleistung einer hohen Verfügbarkeit. Legen Sie die IP-Adresse, den Kanalnamen und den Kanalport des Knotens in der Konfigurationsdatei fest. Bitte stellen Sie während dieses Konfigurationsprozesses sicher, dass die folgenden Informationen konfiguriert sind:
- bindnetaddr: Wird zur Angabe der Netzwerkschnittstellenadresse für die Kommunikation zwischen Knoten verwendet.
- mcastaddr: wird zur Angabe der Multicast-Adresse verwendet.
- mcastport: wird verwendet, um die Portnummer des Multicast-Kanals anzugeben.
totem { version: 2 secauth: off interface { ringnumber: 0 bindnetaddr: 192.168.50.0 mcastaddr: 226.94.1.1 mcastport: 5405 } transport: udpu } logging { to_logfile: yes logfile: /var/log/corosync/corosync.log to_syslog: yes }
In der Heartbeat-Konfigurationsdatei müssen Sie die IP-Adresse und die virtuelle IP-Adresse des Knotens festlegen. Stellen Sie sicher, dass die Anwendung, die die virtuelle IP-Adresse bereitstellt, installiert ist.
#设定hacluster集群名称 cluster hacluster #设定故障探测时间间隔 必须<ping的-send值 keepalive 2 #每次探测(waitting)会加入2秒 deadtime 10 #装备ping用的参数,每次等待10秒 warntime 10 initdead 20 udpport 694 #主服务节点IP,可多行填写 node node1.example.com node node2.example.com #关联的主节点为node1,次节点为node2 crm respawn #virtual_ip是虚拟IP #Ethernet Bridge 和IP假设设为192.168.0.1/24 primitive virtual_ip ocf:heartbeat:IPaddr2 params ip="192.168.0.5" cidr_netmask="24" op monitor interval="10s" #IP暂停服务后强制迁移 location virtual_ip-primary virtual_ip rule $id="virtual_ip-rule" inf: virtual_ip
- Cluster-Management-Tools konfigurieren
Installieren Sie das PC-Tool, ein Befehlszeilentool zum Konfigurieren der Pacemaker-Cluster-Management-Software. Es kann mit dem folgenden Befehl installiert werden:
sudo yum install pcs sudo systemctl enable pcsd.service && sudo systemctl start pcsd.service
Konfigurieren Sie die Firewall und stellen Sie sicher, dass die Firewall auf jedem Knoten die Kommunikation zulässt. Unter CentOS7 können Sie den folgenden Befehl verwenden:
sudo firewall-cmd --add-service=high-availability --permanent sudo firewall-cmd --reload
Erstellen Sie auf jedem Knoten den hacluster-Benutzer und fügen Sie ihn der Gruppe pcsd für die zukünftige Verwaltung des Pacemaker-Clusters hinzu:
sudo useradd hacluster sudo passwd hacluster sudo usermod -aG pcsd hacluster
Um den pcsd-Dienst zu aktivieren, verwenden Sie den folgenden Befehl:
sudo systemctl enable pcsd sudo systemctl start pcsd
Konfigurieren Sie den Authentifizierungsschlüssel auf Pacemaker mit dem folgenden Befehl, kopieren Sie den Authentifizierungsschlüssel mit den gleichen Optionen auf alle anderen Knoten:
sudo pcs cluster auth <node1.example.com> <node2.example.com> -u hacluster -p <password> --force
- Konfigurieren Sie den Lastausgleich
Installieren und konfigurieren Sie HAproxy, einen Hochgeschwindigkeitsserver für die Verfügbarkeit von TCP- und HTTP-Anwendungen Lastausgleichstools. Sie können den folgenden Befehl verwenden, um es unter CentOS zu installieren:
sudo yum -y install haproxy sudo systemctl enable haproxy
In der Konfigurationsdatei von haproxy müssen Sie den Lastausgleichsalgorithmus, die IP-Adresse und die Portnummer des Backend-Servers festlegen.
global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 user haproxy group haproxy daemon # Enables HAProxy in daemon mode defaults log global mode http option httplog option dontlognull retries 3 option redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 frontend web bind *:80 mode http default_backend web-backend backend web-backend mode http balance roundrobin option httpchk HEAD / HTTP/1.1 Host:localhost server node1 10.0.0.2:80 check server node2 10.0.0.3:80 check
- Testen Sie die Hochverfügbarkeitsarchitektur
Testen Sie abschließend die Hochverfügbarkeit. Trennen Sie einen der Knoten und stellen Sie sicher, dass die virtuelle IP automatisch auf den anderen Knoten übertragen wird. Stellen Sie sicher, dass Anwendungen auf anderen Knoten normal unter der virtuellen IP ausgeführt werden, um eine hohe Verfügbarkeit sicherzustellen.
Fazit
Der Einsatz einer Hochverfügbarkeitsarchitektur unter Linux kann die Stabilität und Verfügbarkeit von Unternehmensanwendungen auch bei unerwarteten Ausfällen gewährleisten. Mithilfe der auf Corosync und Heartbeat basierenden HA-Architektur können Anwendungen über virtuelle IP-Adressen und Lastausgleichsalgorithmen auf verschiedene Serverknoten verteilt werden, um deren hohe Verfügbarkeit und Leistung sicherzustellen.
Das obige ist der detaillierte Inhalt vonSo stellen Sie eine Hochverfügbarkeitsarchitektur unter Linux bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

Fehlerbehebung Schritte für fehlgeschlagene Docker -Bild Build: Überprüfen Sie die Dockerfile -Syntax und die Abhängigkeitsversion. Überprüfen Sie, ob der Build -Kontext den erforderlichen Quellcode und die erforderlichen Abhängigkeiten enthält. Sehen Sie sich das Build -Protokoll für Fehlerdetails an. Verwenden Sie die Option -Target -Option, um eine hierarchische Phase zu erstellen, um Fehlerpunkte zu identifizieren. Verwenden Sie die neueste Version von Docker Engine. Erstellen Sie das Bild mit--t [Bildname]: Debugg-Modus, um das Problem zu debuggen. Überprüfen Sie den Speicherplatz und stellen Sie sicher, dass dies ausreicht. Deaktivieren Sie Selinux, um eine Störung des Build -Prozesses zu verhindern. Fragen Sie Community -Plattformen um Hilfe, stellen Sie Dockerfiles an und erstellen Sie Protokollbeschreibungen für genauere Vorschläge.

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

Die Gründe für die Installation von VS -Code -Erweiterungen können sein: Netzwerkinstabilität, unzureichende Berechtigungen, Systemkompatibilitätsprobleme, VS -Code -Version ist zu alt, Antiviren -Software oder Firewall -Interferenz. Durch Überprüfen von Netzwerkverbindungen, Berechtigungen, Protokolldateien, Aktualisierungen von VS -Code, Deaktivieren von Sicherheitssoftware und Neustart von Code oder Computern können Sie Probleme schrittweise beheben und beheben.

VS -Code ist auf Mac verfügbar. Es verfügt über leistungsstarke Erweiterungen, GIT -Integration, Terminal und Debugger und bietet auch eine Fülle von Setup -Optionen. Für besonders große Projekte oder hoch berufliche Entwicklung kann VS -Code jedoch Leistung oder funktionale Einschränkungen aufweisen.

VS Code ist der vollständige Name Visual Studio Code, der eine kostenlose und open-Source-plattformübergreifende Code-Editor und Entwicklungsumgebung von Microsoft ist. Es unterstützt eine breite Palette von Programmiersprachen und bietet Syntax -Hervorhebung, automatische Codebettel, Code -Snippets und intelligente Eingabeaufforderungen zur Verbesserung der Entwicklungseffizienz. Durch ein reiches Erweiterungs -Ökosystem können Benutzer bestimmte Bedürfnisse und Sprachen wie Debugger, Code -Formatierungs -Tools und Git -Integrationen erweitern. VS -Code enthält auch einen intuitiven Debugger, mit dem Fehler in Ihrem Code schnell gefunden und behoben werden können.

Zu den Hauptanwendungen von Linux gehören: 1. Server -Betriebssystem, 2. Eingebettes System, 3. Desktop -Betriebssystem, 4. Entwicklungs- und Testumgebung. Linux zeichnet sich in diesen Bereichen aus und bietet Stabilität, Sicherheits- und effiziente Entwicklungstools.
