Aufbau einer fehlertoleranten IT-Infrastruktur. Teil 1 - Vorbereiten der Bereitstellung des oVirt 4.3-Clusters

Die Leser werden gebeten, sich mit den Prinzipien des Aufbaus einer fehlertoleranten Infrastruktur eines kleinen Unternehmens in einem Rechenzentrum vertraut zu machen, die in einer kurzen Artikelserie ausführlich behandelt werden.


Einleitung


Unter dem DPC (Data Processing Center) versteht man:


  • eigenes Rack in seinem „Serverraum“ auf dem Gebiet des Unternehmens, das die Mindestanforderungen für die Bereitstellung von Strom- und Kühlgeräten sowie den Internetzugang über zwei unabhängige Anbieter erfüllt;
  • gemieteten Rack mit eigener Ausrüstung in diesem Rechenzentrum befindet - die sogenannte Kollokation, die dem Tier III- oder IV-Standard entspricht, eine zuverlässige Stromversorgung und Kühlung gewährleistet und einen fehlertoleranten Internetzugang bietet;
  • vollständig geleaste Geräte in einem Tier III- oder IV-Rechenzentrum.

Welche Unterkunftsoption Sie wählen sollten - in jedem Fall ist alles individuell und hängt in der Regel von mehreren Hauptfaktoren ab:


  • Warum verfügt das Unternehmen über eine eigene IT-Infrastruktur?
  • Was genau wünscht sich das Unternehmen von der IT-Infrastruktur (Zuverlässigkeit, Skalierbarkeit, Verwaltbarkeit usw.)?
  • die Höhe der Erstinvestition in die IT-Infrastruktur sowie die Art der Kosten - Kapital (dh Kauf Ihrer Ausrüstung) oder Betrieb (Ausrüstung wird normalerweise gemietet);
  • Planungshorizont des Unternehmens

Es kann viel über die Faktoren geschrieben werden, die die Entscheidung des Unternehmens beeinflussen, seine IT-Infrastruktur zu erstellen und zu nutzen. Unser Ziel ist es jedoch, in der Praxis zu zeigen, wie genau diese Infrastruktur so aufgebaut werden kann, dass sie sowohl fehlertolerant als auch kostengünstig ist - die Anschaffungskosten für kommerzielle Software senken oder sogar vermeiden.


Wie die Praxis zeigt, lohnt es sich nicht, Hardware einzusparen, da sich das Geizhals doppelt und noch viel mehr auszahlt. Aber andererseits - gute Hardware, dies ist nur eine Empfehlung, und letztendlich hängt es von den Fähigkeiten des Unternehmens und der "Gier" seines Managements ab, was genau zu kaufen ist und wie viel es kostet. Darüber hinaus ist das Wort "Gier" im wahrsten Sinne des Wortes zu verstehen, da es besser ist, in der Anfangsphase in Eisen zu investieren, damit es später keine ernsthaften Probleme bei der weiteren Unterstützung und Skalierung gibt, da anfänglich falsche Planung und übermäßige Einsparungen zur Zukunft führen können teurer als zu Beginn eines Projekts.


Also, die anfänglichen Daten für das Projekt:


  • Es gibt ein Unternehmen, das beschlossen hat, ein eigenes Webportal einzurichten und seine Aktivitäten im Internet zu platzieren.
  • Das Unternehmen hat beschlossen, ein Rack zu mieten, um seine Geräte in einem guten Rechenzentrum unterzubringen, das nach dem Tier III-Standard zertifiziert ist.
  • Das Unternehmen entschied sich, nicht viel an Hardware zu sparen und kaufte daher die folgenden Geräte mit erweiterten Garantien und Support:

Ausrüstungsliste
  • zwei physische Dell PowerEdge R640-Server wie folgt:
  • zwei Intel Xeon Gold 5120 Prozessoren
  • 512 GB RAM
  • zwei SAS-Festplatten in RAID1 für die Installation des Betriebssystems
  • Eingebaute 1G-Netzwerkkarte mit 4 Ports
  • zwei 10G-Netzwerkkarten mit 2 Ports
  • ein 2-Port FC HBA 16G.
  • 2-Controller-Speichersystem Dell MD3820f, das über FC 16G direkt mit Dell-Hosts verbunden ist;
  • zwei Switches der zweiten Ebene - Cisco WS-C2960RX-48FPS-L gestapelt;
  • zwei Layer 3-Switches - Cisco WS-C3850-24T-E, gestapelt;
  • Rack-, USV-, PDU- und Konsolenserver - werden vom Rechenzentrum bereitgestellt.


Wie wir sehen können, haben die vorhandenen Geräte gute Aussichten für eine horizontale und vertikale Skalierung, wenn das Unternehmen im Internet mit anderen Unternehmen mit ähnlichem Profil konkurrieren kann und anfängt, einen Gewinn zu erzielen, der in die Erweiterung der Ressourcen für weiteren Wettbewerb und Gewinnwachstum investiert werden kann.


Welche Ausrüstung können wir hinzufügen, wenn das Unternehmen beschließt, die Leistung unseres Computerclusters zu steigern:


  • Wir verfügen über eine große Reserve für die Anzahl der Ports von 2960X-Switches, sodass Sie weitere Hardware-Server hinzufügen können.
  • Kaufen Sie zwei FC-Switches, um Speichersysteme und zusätzliche Server mit ihnen zu verbinden.
  • Bereits vorhandene Server können aktualisiert werden. Fügen Sie Speicher hinzu, ersetzen Sie Prozessoren durch effizientere, und schließen Sie vorhandene Netzwerkadapter an ein 10G-Netzwerk an.
  • Sie können dem Speicher zusätzliche Festplattenregale mit dem erforderlichen Festplattentyp hinzufügen - SAS, SATA oder SSD, je nach geplanter Belastung.
  • Nachdem Sie FC-Switches hinzugefügt haben, können Sie ein anderes Speichersystem erwerben, um die Festplattenkapazität zu erhöhen. Wenn Sie die spezielle Remote Replication-Option dazu erwerben, können Sie die Datenreplikation zwischen Speichersystemen innerhalb desselben Rechenzentrums und zwischen Rechenzentren konfigurieren (dies geht jedoch bereits darüber hinaus) den Umfang des Artikels);
  • Es gibt auch Switches der dritten Ebene - den Cisco 3850, der als fehlertoleranter Kern des Netzwerks für das Hochgeschwindigkeitsrouting zwischen internen Netzwerken verwendet werden kann. Dies wird in Zukunft sehr hilfreich sein, da die interne Infrastruktur wächst. Der 3850 verfügt auch über 10G-Ports, die später beim Upgrade von Netzwerkgeräten auf 10G aktiviert werden können.

Da es jetzt nirgendwo ohne Virtualisierung gibt, sind wir natürlich im Trend, zumal dies eine großartige Möglichkeit ist, die Anschaffungskosten für teure Server für bestimmte Infrastrukturelemente (Webserver, Datenbanken usw.) zu senken, die nicht immer optimal sind Wird bei geringer Auslastung verwendet und ist genau das, was zu Beginn des Projektstarts sein wird.


Darüber hinaus bietet die Virtualisierung viele weitere Vorteile, die für uns von großem Nutzen sein können: VM-Fehlertoleranz bei Hardwareserverausfällen, Live-Migration zwischen Hardwareknoten des Clusters für deren Wartung, manueller oder automatischer Lastausgleich zwischen Clusterknoten usw.


Für die vom Unternehmen erworbene Hardware bietet sich die Bereitstellung des hoch zugänglichen VMware vSphere-Clusters an. Da jedoch jede Software von VMware für ihre Pferdepreise bekannt ist, verwenden wir eine absolut kostenlose Virtualisierungsverwaltungssoftware - oVirt , auf deren Grundlage die bekannten aber bereits kommerzielles Produkt - RHEV .


Die oVirt- Software ist erforderlich, um alle Infrastrukturelemente zusammenzuführen, damit Sie bequem mit hoch zugänglichen virtuellen Maschinen arbeiten können - dies sind Datenbanken, Webanwendungen, Proxies, Balancer, Server zum Sammeln von Protokollen und Analysen usw. n., das ist, woraus das Webportal unseres Unternehmens besteht.


Zusammenfassend erwarten uns die folgenden Artikel, die in der Praxis zeigen, wie die gesamte Hardware- und Software-Infrastruktur des Unternehmens bereitgestellt wird:


Liste der Artikel
  • Teil 1. Vorbereitung für die Bereitstellung des oVirt-Clusters 4.3.
  • Teil 2. Installieren und Konfigurieren des Ovirt-Clusters 4.3.
  • Teil 3. Organisation des fehlertoleranten Routings auf virtuellen VyOS-Routern.
  • Teil 4. Konfigurieren des Cisco 3850-Stacks und Organisieren des Intranet-Routings.

Teil 1. Bereitstellen des oVirt 4.3-Clusters vorbereiten


Grundlegende Host-Konfiguration


Das Installieren und Konfigurieren des Betriebssystems ist der einfachste Schritt. Es gibt viele Artikel über die ordnungsgemäße Installation und Konfiguration des Betriebssystems. Es macht also keinen Sinn, etwas Exklusives darüber zu veröffentlichen.


Wir haben also zwei Dell PowerEdge R640-Hosts, auf denen Sie das Betriebssystem installieren und Vorkonfigurationen vornehmen müssen, um sie als Hypervisoren für die Ausführung virtueller Maschinen im oVirt 4.3-Cluster zu verwenden.


Da wir die kostenlose, nichtkommerzielle Software oVirt verwenden möchten, wurde CentOS 7.7 für die Bereitstellung von Hosts ausgewählt, obwohl für oVirt auch andere Betriebssysteme auf Hosts installiert werden können:


  • Sonderbau basierend auf RHEL, dem sogenannten oVirt Node ;
  • OS Oracle Linux hat im Sommer 2019 die Unterstützung für den Betrieb von oVirt auf diesem Betriebssystem angekündigt .

Vor der Installation des Betriebssystems wird Folgendes empfohlen:


  • Konfigurieren Sie die iDRAC-Netzwerkschnittstelle auf beiden Hosts
  • Aktualisieren Sie die Firmware für BIOS und iDRAC auf die neuesten Versionen.
  • Es ist wünschenswert, den Systemprofilserver im Leistungsmodus zu konfigurieren.
  • Konfigurieren Sie RAID von lokalen Festplatten (RAID1 wird empfohlen), um das Betriebssystem auf dem Server zu installieren.

Anschließend installieren wir das Betriebssystem auf der zuvor über iDRAC erstellten Festplatte. Der Installationsvorgang ist normal, es sind keine besonderen Momente enthalten. Der Zugriff auf die Serverkonsole zum Starten der Installation des Betriebssystems kann auch über iDRAC erfolgen, obwohl nichts Sie daran hindert, den Monitor, die Tastatur und die Maus direkt mit dem Server zu verbinden und das Betriebssystem von einem Flash-Laufwerk aus zu installieren.


Nehmen Sie nach der Installation des Betriebssystems die anfänglichen Einstellungen vor:


systemctl enable network.service systemctl start network.service systemctl status network.service 

 systemctl stop NetworkManager systemctl disable NetworkManager systemctl status NetworkManager 

 yum install -y ntp systemctl enable ntpd.service systemctl start ntpd.service 

 cat /etc/sysconfig/selinux SELINUX=disabled SELINUXTYPE=targeted 

 cat /etc/security/limits.conf * soft nofile 65536 * hard nofile 65536 

 cat /etc/sysctl.conf vm.max_map_count = 262144 vm.swappiness = 1 

Installieren Sie die Basis-Software


Für die Erstkonfiguration des Betriebssystems müssen Sie eine Netzwerkschnittstelle auf dem Server konfigurieren, damit Sie auf das Internet zugreifen, das Betriebssystem aktualisieren und die erforderlichen Softwarepakete installieren können. Dies kann sowohl während der Installation des Betriebssystems als auch danach erfolgen.


 yum -y install epel-release yum update yum -y install bind-utils yum-utils net-tools git htop iotop nmon pciutils sysfsutils sysstat mc nc rsync wget traceroute gzip unzip telnet 

Alle oben genannten Einstellungen und eine Reihe von Software sind eine Frage der persönlichen Präferenz, und diese Reihe ist nur eine Empfehlung.


Da unser Host die Rolle eines Hypervisors spielt, aktivieren wir das gewünschte Leistungsprofil:


 systemctl enable tuned systemctl start tuned systemctl status tuned 

 tuned-adm profile tuned-adm profile virtual-host 

Weitere Informationen zum Leistungsprofil finden Sie hier: " Kapitel 4. tuned und tuned-adm ".


Nach der Installation des Betriebssystems fahren wir mit dem nächsten Teil fort - der Konfiguration der Netzwerkschnittstellen auf den Hosts und dem Cisco 2960X-Switch-Stack.


Konfigurieren des Cisco 2960X-Switch-Stacks


In unserem Projekt wird die folgende Anzahl von VLANs oder Broadcast-Domänen verwendet, die voneinander isoliert sind, um verschiedene Arten von Datenverkehr zu trennen:


VLAN 10 - Internet
VLAN 17 - Verwaltung (iDRAC, Speicher, Switch-Verwaltung)
VLAN 32 - VM-Produktionsnetzwerk
VLAN 33 - Verbindungsnetz (zu externen Auftragnehmern)
VLAN 34 - VM-Testnetzwerk
VLAN 35 - VM Developer Network
VLAN 40 - Überwachungsnetzwerk


Bevor wir mit der Arbeit beginnen, präsentieren wir ein Diagramm auf L2-Ebene, zu dem wir schließlich kommen sollten:



Für die Netzwerkinteraktion zwischen den oVirt-Hosts und den virtuellen Maschinen sowie für die Verwaltung unseres Speichers müssen Sie den Cisco 2960X-Switch-Stack konfigurieren.


Dell-Hosts verfügen über integrierte 4-Port-Netzwerkkarten. Daher ist es ratsam, die Verbindung zum Cisco 2960X über eine fehlertolerante Netzwerkverbindung zu organisieren, indem physische Netzwerkports in einer logischen Schnittstelle und das LACP-Protokoll (802.3ad) gruppiert werden:


  • Die ersten beiden Ports auf dem Host werden im Bonding-Modus konfiguriert und mit dem 2960X-Switch verbunden. Auf dieser logischen Schnittstelle wird eine Brücke mit einer Adresse für die Verwaltung des Hosts, die Überwachung und die Kommunikation mit anderen Hosts im Ovirt-Cluster konfiguriert und auch für die Livemigration virtueller Maschinen verwendet.
  • Die zweiten beiden Ports auf dem Host werden ebenfalls im Bonding-Modus konfiguriert und mit dem 2960X verbunden. Auf dieser logischen Schnittstelle werden über oVirt spätere Bridges (in den entsprechenden VLANs) erstellt, mit denen virtuelle Maschinen verbunden werden.
  • beide Netzwerkports innerhalb derselben logischen Schnittstelle sind aktiv, d. h. Der Verkehr auf ihnen kann gleichzeitig im Ausgleichsmodus übertragen werden.
  • Die Netzwerkeinstellungen auf den Clusterknoten müssen mit Ausnahme der IP-Adressen absolut GLEICH sein.

Grundkonfiguration des 2960X- Switch- Stacks und seiner Ports


Zuvor sollten unsere Schalter sein:


  • in einem Gestell montiert;
  • verbunden durch zwei Spezialkabel der gewünschten Länge, z. B. CAB-STK-E-1M;
  • an die Stromversorgung angeschlossen;
  • Zur Erstkonfiguration über den Konsolenport mit der Workstation des Administrators verbunden.

Die dazu notwendigen Anleitungen finden Sie auf der offiziellen Seite des Herstellers.


Konfigurieren Sie die Switches, nachdem Sie die obigen Schritte ausgeführt haben.
Was jedes Team bedeutet, soll im Rahmen dieses Artikels nicht entschlüsselt werden, bei Bedarf können alle Informationen unabhängig gefunden werden.
Unser Ziel ist es, den Switch-Stack so schnell wie möglich zu konfigurieren und die Hosts und Speicherverwaltungsschnittstellen damit zu verbinden.


1) Stellen Sie eine Verbindung zum Hauptschalter her, wechseln Sie in den privilegierten Modus, wechseln Sie in den Konfigurationsmodus und nehmen Sie grundlegende Einstellungen vor.


Grundlegende Switch-Konfiguration:
  enable configure terminal hostname 2960X no service pad service timestamps debug datetime msec service timestamps log datetime localtime show-timezone msec no service password-encryption service sequence-numbers switch 1 priority 15 switch 2 priority 14 stack-mac persistent timer 0 clock timezone MSK 3 vtp mode transparent ip subnet-zero vlan 17 name Management vlan 32 name PROD vlan 33 name Interconnect vlan 34 name Test vlan 35 name Dev vlan 40 name Monitoring spanning-tree mode rapid-pvst spanning-tree etherchannel guard misconfig spanning-tree portfast bpduguard default spanning-tree extend system-id spanning-tree vlan 1-40 root primary spanning-tree loopguard default vlan internal allocation policy ascending port-channel load-balance src-dst-ip errdisable recovery cause loopback errdisable recovery cause bpduguard errdisable recovery interval 60 line con 0 session-timeout 60 exec-timeout 60 0 logging synchronous line vty 5 15 session-timeout 60 exec-timeout 60 0 logging synchronous ip http server ip http secure-server no vstack interface Vlan1 no ip address shutdown exit 

Wir speichern die Konfiguration mit dem Befehl wr mem und laden den Switch-Stack mit dem Befehl reload auf dem Master-Switch 1 neu.


2) Konfigurieren Sie die Netzwerkports des Switches im Zugriffsmodus in VLAN 17, um die Verwaltungsschnittstellen von Speicher- und iDRAC-Servern zu verbinden.


Verwaltungsport-Einstellungen:
 interface GigabitEthernet1/0/5 description iDRAC - host1 switchport access vlan 17 switchport mode access spanning-tree portfast edge interface GigabitEthernet1/0/6 description Storage1 - Cntr0/Eth0 switchport access vlan 17 switchport mode access spanning-tree portfast edge interface GigabitEthernet2/0/5 description iDRAC - host2 switchport access vlan 17 switchport mode access spanning-tree portfast edge interface GigabitEthernet2/0/6 description Storage1 – Cntr1/Eth0 switchport access vlan 17 switchport mode access spanning-tree portfast edge exit 

3) Überprüfen Sie nach dem Neustart des Stapels, ob dieser ordnungsgemäß funktioniert:


Überprüfen der Funktion des Stacks:
 2960X#show switch stack-ring speed Stack Ring Speed : 20G Stack Ring Configuration: Full Stack Ring Protocol : FlexStack 2960X#show switch stack-ports Switch # Port 1 Port 2 -------- ------ ------ 1 Ok Ok 2 Ok Ok 2960X#show switch neighbors Switch # Port 1 Port 2 -------- ------ ------ 1 2 2 2 1 1 2960X#show switch detail Switch/Stack Mac Address : 0cd0.f8e4. Mac persistency wait time: Indefinite H/W Current Switch# Role Mac Address Priority Version State ---------------------------------------------------------- *1 Master 0cd0.f8e4. 15 4 Ready 2 Member 0029.c251. 14 4 Ready Stack Port Status Neighbors Switch# Port 1 Port 2 Port 1 Port 2 -------------------------------------------------------- 1 Ok Ok 2 2 2 Ok Ok 1 1 

4) Konfigurieren des SSH-Zugriffs auf den 2960X-Stack


Für das Remote-Stack-Management über SSH verwenden wir IP 172.20.1.10, das auf SVI (Switch Virtual Interface) VLAN17 konfiguriert ist .


Obwohl es für Verwaltungszwecke ratsam ist, einen speziellen dedizierten Port am Switch zu verwenden, ist dies eine Frage der persönlichen Präferenz und Gelegenheit.


Konfigurieren des SSH-Zugriffs auf den Switch-Stack:
 ip default-gateway 172.20.1.2 interface vlan 17 ip address 172.20.1.10 255.255.255.0 hostname 2960X ip domain-name hw.home-lab.ru no ip domain-lookup clock set 12:47:04 06 Dec 2019 crypto key generate rsa ip ssh version 2 ip ssh time-out 90 line vty 0 4 session-timeout 60 exec-timeout 60 0 privilege level 15 logging synchronous transport input ssh line vty 5 15 session-timeout 60 exec-timeout 60 0 privilege level 15 logging synchronous transport input ssh aaa new-model aaa authentication login default local username cisco privilege 15 secret my_ssh_password 

Konfigurieren Sie ein Kennwort, um in den privilegierten Modus zu wechseln:


 enable secret *myenablepassword* service password-encryption 

NTP konfigurieren:


 ntp server 85.21.78.8 prefer ntp server 89.221.207.113 ntp server 185.22.60.71 ntp server 192.36.143.130 ntp server 185.209.85.222 show ntp status show ntp associations show clock detail 

5) Konfigurieren Sie logische Etherchannel-Schnittstellen und physische Ports, die mit Hosts verbunden sind. Zur Vereinfachung der Konfiguration sind alle verfügbaren VLANs auf allen logischen Schnittstellen zulässig. In der Regel wird jedoch empfohlen, nur das zu konfigurieren, was Sie benötigen:


Konfigurieren Sie Etherchannel-Schnittstellen:
 interface Port-channel1 description EtherChannel with Host1-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk spanning-tree portfast edge trunk interface Port-channel2 description EtherChannel with Host2-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk spanning-tree portfast edge trunk interface Port-channel3 description EtherChannel with Host1-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk spanning-tree portfast edge trunk interface Port-channel4 description EtherChannel with Host2-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk spanning-tree portfast edge trunk interface GigabitEthernet1/0/1 description Host1-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 1 mode active interface GigabitEthernet1/0/2 description Host2-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 2 mode active interface GigabitEthernet1/0/3 description Host1-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 3 mode active interface GigabitEthernet1/0/4 description Host2-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 4 mode active interface GigabitEthernet2/0/1 description Host1-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 1 mode active interface GigabitEthernet2/0/2 description Host2-management switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 2 mode active interface GigabitEthernet2/0/3 description Host1-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 3 mode active interface GigabitEthernet2/0/4 description Host2-VM switchport trunk allowed vlan 10,17,30-40 switchport mode trunk channel-protocol lacp channel-group 4 mode active 

Erstkonfiguration von Netzwerkschnittstellen für virtuelle Maschinen auf Host1 und Host2


Wir prüfen die Verfügbarkeit der notwendigen Module für das Bonden im System, installieren das Modul zur Verwaltung von Bridges:


 modinfo bonding modinfo 8021q yum install bridge-utils 

Konfigurieren der logischen BOND1-Schnittstelle für virtuelle Maschinen auf Hosts und deren physischen Schnittstellen:
 cat /etc/sysconfig/network-scripts/ifcfg-bond1 #DESCRIPTION - management DEVICE=bond1 NAME=bond1 TYPE=Bond IPV6INIT=no ONBOOT=yes USERCTL=no NM_CONTROLLED=no BOOTPROTO=none BONDING_OPTS='mode=4 lacp_rate=1 xmit_hash_policy=2' cat /etc/sysconfig/network-scripts/ifcfg-em2 #DESCRIPTION - management DEVICE=em2 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond1 SLAVE=yes USERCTL=no NM_CONTROLLED=no cat /etc/sysconfig/network-scripts/ifcfg-em3 #DESCRIPTION - management DEVICE=em3 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond1 SLAVE=yes USERCTL=no NM_CONTROLLED=no 

Nach Abschluss der Einstellungen auf dem 2960X- Stack und den Hosts starten wir das Netzwerk auf den Hosts neu und überprüfen die logische Schnittstelle.


  • auf Host:

 systemctl restart network cat /proc/net/bonding/bond1 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: IEEE 802.3ad Dynamic link aggregation Transmit Hash Policy: layer2+3 (2) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 ... 802.3ad info LACP rate: fast Min links: 0 Aggregator selection policy (ad_select): stable System priority: 65535 ... Slave Interface: em2 MII Status: up Speed: 1000 Mbps Duplex: full ... Slave Interface: em3 MII Status: up Speed: 1000 Mbps Duplex: full 

  • auf dem 2960X- Switch- Stack :

 2960X#show lacp internal Flags: S - Device is requesting Slow LACPDUs F - Device is requesting Fast LACPDUs A - Device is in Active mode P - Device is in Passive mode Channel group 1 LACP port Admin Oper Port Port Port Flags State Priority Key Key Number State Gi1/0/1 SA bndl 32768 0x1 0x1 0x102 0x3D Gi2/0/1 SA bndl 32768 0x1 0x1 0x202 0x3D 2960X#sh etherchannel summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use N - not in use, no aggregation f - failed to allocate aggregator M - not in use, minimum links not met m - not in use, port not aggregated due to minimum links not met u - unsuitable for bundling w - waiting to be aggregated d - default port A - formed by Auto LAG Number of channel-groups in use: 11 Number of aggregators: 11 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 1 Po1(SU) LACP Gi1/0/1(P) Gi2/0/1(P) 

Erstkonfiguration von Netzwerkschnittstellen zum Verwalten von Clusterressourcen auf Host1 und Host2


Konfigurieren der logischen BOND1-Schnittstelle für die Verwaltung und ihrer physischen Schnittstellen auf den Hosts:
 cat /etc/sysconfig/network-scripts/ifcfg-bond0 #DESCRIPTION - management DEVICE=bond0 NAME=bond0 TYPE=Bond BONDING_MASTER=yes IPV6INIT=no ONBOOT=yes USERCTL=no NM_CONTROLLED=no BOOTPROTO=none BONDING_OPTS='mode=4 lacp_rate=1 xmit_hash_policy=2' cat /etc/sysconfig/network-scripts/ifcfg-em0 #DESCRIPTION - management DEVICE=em0 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no NM_CONTROLLED=no cat /etc/sysconfig/network-scripts/ifcfg-em1 #DESCRIPTION - management DEVICE=em1 TYPE=Ethernet BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no NM_CONTROLLED=no 

Nach Abschluss der Einstellungen auf dem 2960X- Stack und den Hosts starten wir das Netzwerk auf den Hosts neu und überprüfen die logische Schnittstelle.


 systemctl restart network cat /proc/net/bonding/bond1 2960X#show lacp internal 2960X#sh etherchannel summary 

Wir konfigurieren die Steuerungsnetzwerkschnittstelle auf jedem Host in VLAN 17 und binden sie an die logische Schnittstelle BOND1:


Konfigurieren von VLAN17 auf Host1:
 cat /etc/sysconfig/network-scripts/ifcfg-bond1.17 DEVICE=bond1.17 NAME=bond1-vlan17 BOOTPROTO=none ONBOOT=yes USERCTL=no NM_CONTROLLED=no VLAN=yes MTU=1500 IPV4_FAILURE_FATAL=yes IPV6INIT=no IPADDR=172.20.1.163 NETMASK=255.255.255.0 GATEWAY=172.20.1.2 DEFROUTE=yes DNS1=172.20.1.8 DNS2=172.20.1.9 ZONE=public 

Konfigurieren von VLAN17 auf Host2:
 cat /etc/sysconfig/network-scripts/ifcfg-bond1.17 DEVICE=bond1.17 NAME=bond1-vlan17 BOOTPROTO=none ONBOOT=yes USERCTL=no NM_CONTROLLED=no VLAN=yes MTU=1500 IPV4_FAILURE_FATAL=yes IPV6INIT=no IPADDR=172.20.1.164 NETMASK=255.255.255.0 GATEWAY=172.20.1.2 DEFROUTE=yes DNS1=172.20.1.8 DNS2=172.20.1.9 ZONE=public 

Wir starten das Netzwerk auf den Hosts neu und überprüfen ihre Sichtbarkeit untereinander.


Damit ist die Einrichtung des Cisco 2960X-Switch-Stacks abgeschlossen. Wenn alles korrekt durchgeführt wurde, besteht nun eine Netzwerkverbindung aller Infrastrukturelemente auf L2-Ebene.


Konfigurieren Sie den Dell MD3820f-Speicher


Bevor Sie mit dem Einrichten des Speichers beginnen, sollten Sie ihn bereits über FC mit dem Cisco 2960X- Switch-Stack mit Steuerungsschnittstellen sowie mit Host1- und Host2-Hosts verbinden .


Das allgemeine Schema, wie Speicher mit dem Switch-Stack verbunden werden soll, wurde im vorherigen Kapitel beschrieben.


Das Schema zum Verbinden des Speichers auf dem FC mit den Hosts sollte folgendermaßen aussehen:



Während der Verbindung müssen WWPN-Adressen für FC-HBA-Hosts aufgezeichnet werden, die mit FC-Ports auf dem Speichersystem verbunden sind. Dies ist für die anschließende Konfiguration der Bindung von Hosts an LUNs auf dem Speichersystem erforderlich.


Laden Sie auf der Arbeitsstation des Administrators das Speicherverwaltungsdienstprogramm Dell MD3820f - PowerVault Modular Disk Storage Manager ( MDSM ) herunter und installieren Sie es .
Wir stellen eine Verbindung über seine Standard-IP-Adressen her und konfigurieren dann unsere Adressen von VLAN17 aus , um die Controller über TCP / IP zu steuern:


Storage1 :


 ControllerA IP - 172.20.1.13, MASK - 255.255.255.0, Gateway - 172.20.1.2 ControllerB IP - 172.20.1.14, MASK - 255.255.255.0, Gateway - 172.20.1.2 

Rufen Sie nach dem Festlegen der Adressen die Speicherverwaltungsoberfläche auf und legen Sie ein Kennwort fest, stellen Sie die Uhrzeit ein, aktualisieren Sie die Firmware für Controller und Festplatten, falls erforderlich, usw.
Wie dies geschieht, wird im Handbuch zur Speicherverwaltung beschrieben.


Nachdem Sie die obigen Einstellungen vorgenommen haben, müssen Sie nur noch ein paar Schritte ausführen:


  1. Konfigurieren Sie die Host- FC- Kennungen .
  2. Erstellen Sie eine Hostgruppe - Hostgruppe und fügen Sie unsere beiden Dell-Hosts hinzu.
  3. Erstellen Sie eine Datenträgergruppe und virtuelle Datenträger (oder LUNs), die den Hosts angezeigt werden.
  4. Konfigurieren Sie die Präsentation von virtuellen Laufwerken (oder LUNs) für Hosts.

Das Hinzufügen neuer Hosts und das Binden von IDs von Host-FC-Ports erfolgt über das Menü - Host-Zuordnungen -> Definieren -> Hosts ...
WWPN-Adressen von FC-HBA-Hosts finden Sie beispielsweise in einem iDRAC-Server.


Als Ergebnis sollten wir so etwas bekommen:



Das Hinzufügen einer neuen Hostgruppe und das Binden von Hosts erfolgt über das Menü - Hostzuordnungen -> Definieren -> Hostgruppe ...
Wählen Sie für Hosts den Betriebssystemtyp - Linux (DM-MP) .


Erstellen Sie nach dem Erstellen der Hostgruppe über die Registerkarte Storage & Copy Services eine Datenträgergruppe - Datenträgergruppe , deren Typ von den Fehlertoleranzanforderungen abhängt, z. B. RAID10, und darin virtuelle Datenträger mit der richtigen Größe:



Und schließlich ist die letzte Phase die Präsentation von virtuellen Laufwerken (oder LUNs) für Hosts.
Dazu nehmen wir über das Menü - Host- Zuordnungen -> Lun-Zuordnung -> Hinzufügen ... die Bindung der virtuellen Festplatten an die Hosts vor und weisen ihnen Nummern zu.


Alles sollte so aussehen wie in diesem Screenshot:



Wir sind mit dem Einrichten des Speichersystems fertig. Wenn alles korrekt durchgeführt wurde, sollten die Hosts die LUNs sehen, die ihnen über ihre FC-HBAs angezeigt werden.
Veranlassen Sie das System, die Informationen zu den zugeordneten Laufwerken zu aktualisieren:


 ls -la /sys/class/scsi_host/ echo "- - -" > /sys/class/scsi_host/host[0-9]/scan 

Mal sehen, welche Geräte auf unseren Servern sichtbar sind:
 cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 02 Id: 00 Lun: 00 Vendor: DELL Model: PERC H330 Mini Rev: 4.29 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi15 Channel: 00 Id: 00 Lun: 00 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi15 Channel: 00 Id: 00 Lun: 01 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi15 Channel: 00 Id: 00 Lun: 04 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi15 Channel: 00 Id: 00 Lun: 11 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi15 Channel: 00 Id: 00 Lun: 31 Vendor: DELL Model: Universal Xport Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi18 Channel: 00 Id: 00 Lun: 00 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi18 Channel: 00 Id: 00 Lun: 01 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi18 Channel: 00 Id: 00 Lun: 04 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi18 Channel: 00 Id: 00 Lun: 11 Vendor: DELL Model: MD38xxf Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 Host: scsi18 Channel: 00 Id: 00 Lun: 31 Vendor: DELL Model: Universal Xport Rev: 0825 Type: Direct-Access ANSI SCSI revision: 05 lsscsi [0:2:0:0] disk DELL PERC H330 Mini 4.29 /dev/sda [15:0:0:0] disk DELL MD38xxf 0825 - [15:0:0:1] disk DELL MD38xxf 0825 /dev/sdb [15:0:0:4] disk DELL MD38xxf 0825 /dev/sdc [15:0:0:11] disk DELL MD38xxf 0825 /dev/sdd [15:0:0:31] disk DELL Universal Xport 0825 - [18:0:0:0] disk DELL MD38xxf 0825 - [18:0:0:1] disk DELL MD38xxf 0825 /dev/sdi [18:0:0:4] disk DELL MD38xxf 0825 /dev/sdj [18:0:0:11] disk DELL MD38xxf 0825 /dev/sdk [18:0:0:31] disk DELL Universal Xport 0825 - 

Sie können Multipath auch auf den Hosts konfigurieren. Bei der Installation von oVirt kann er dies jedoch selbst tun. Es ist jedoch besser, den MP im Voraus selbst zu überprüfen.


Installieren und konfigurieren Sie DM Multipath


 yum install device-mapper-multipath mpathconf --enable --user_friendly_names y cat /etc/multipath.conf | egrep -v "^\s*(#|$)" defaults { user_friendly_names yes find_multipaths yes } blacklist { wwid 26353900f02796769 devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[az]" } 

Installieren Sie den MP-Dienst im Autostart und führen Sie ihn aus:


 systemctl enable multipathd && systemctl restart multipathd 

Informationen über geladene Module auf MP-Betrieb prüfen:
 lsmod | grep dm_multipath dm_multipath 27792 6 dm_service_time dm_mod 124407 139 dm_multipath,dm_log,dm_mirror modinfo dm_multipath filename: /lib/modules/3.10.0-957.12.2.el7.x86_64/kernel/drivers/md/dm-multipath.ko.xz license: GPL author: Sistina Software <dm-devel@redhat.com> description: device-mapper multipath target retpoline: Y rhelversion: 7.6 srcversion: 985A03DCAF053D4910E53EE depends: dm-mod intree: Y vermagic: 3.10.0-957.12.2.el7.x86_64 SMP mod_unload modversions signer: CentOS Linux kernel signing key sig_key: A3:2D:39:46:F2:D3:58:EA:52:30:1F:63:37:8A:37:A5:54:03:00:45 sig_hashalgo: sha256 

Sehen Sie sich die Zusammenfassung der vorhandenen Multipath-Konfiguration an:


 mpathconf multipath is enabled find_multipaths is disabled user_friendly_names is disabled dm_multipath module is loaded multipathd is running 

Nachdem Sie dem Speicher eine neue LUN hinzugefügt und dem Host präsentiert haben, müssen Sie diese scannen, die mit dem HBA-Host verbunden ist.


 systemctl reload multipathd multipath -v2 

Zuletzt prüfen wir, ob alle LUNs auf dem Speicher für Hosts vorhanden sind und ob alle zwei Pfade haben.


MP-Betrieb prüfen:
 multipath -ll 3600a098000e4b4b3000003175cec1840 dm-2 DELL ,MD38xxf size=2.0T features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 rdac' wp=rw |-+- policy='service-time 0' prio=14 status=active | `- 15:0:0:1 sdb 8:16 active ready running `-+- policy='service-time 0' prio=9 status=enabled `- 18:0:0:1 sdi 8:128 active ready running 3600a098000e4b48f000002ab5cec1921 dm-6 DELL ,MD38xxf size=10T features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 rdac' wp=rw |-+- policy='service-time 0' prio=14 status=active | `- 18:0:0:11 sdk 8:160 active ready running `-+- policy='service-time 0' prio=9 status=enabled `- 15:0:0:11 sdd 8:48 active ready running 3600a098000e4b4b3000003c95d171065 dm-3 DELL ,MD38xxf size=150G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 rdac' wp=rw |-+- policy='service-time 0' prio=14 status=active | `- 15:0:0:4 sdc 8:32 active ready running `-+- policy='service-time 0' prio=9 status=enabled `- 18:0:0:4 sdj 8:144 active ready running 

Wie Sie sehen, sind alle drei virtuellen Laufwerke im Speichersystem auf zwei Arten sichtbar. Damit sind alle Vorarbeiten abgeschlossen, sodass wir mit dem Hauptteil fortfahren können - dem Aufbau des OVIRT-Clusters, der im nächsten Artikel behandelt wird.

Source: https://habr.com/ru/post/de483980/


All Articles