Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

Cititorilor li se propune să se familiarizeze cu principiile construirii unei infrastructuri reziliente pentru o mică întreprindere în cadrul unui singur Data Center, care vor fi detaliate într-un ciclu scurt de articole.

Partea introductivă

Sub Data Center (Centrul de Procesare a Datelor) poate fi înțeles ca:

  • un rack propriu într-o „sala de servere” pe teritoriul întreprinderii, care îndeplinește cerințele minime legate de alimentarea cu energie și răcirea echipamentelor, precum și cu acces la Internet prin intermediul a doi furnizori independenți;
  • un rack închiriat cu echipament propriu, situat într-un adevărat Data Center – așa numita colocation, care respectă standardul Tier III sau IV, și în care se garantează alimentare electrică fiabilă, răcire și se asigură un acces la Internet rezilient;
  • echipament complet închiriat într-un Data Center Tier III sau IV.

Ce opțiune de amplasare să alegem – în fiecare caz, totul este individual și de obicei depinde de câțiva factori esențiali:

  • de ce are nevoie o întreprindere de o infrastructură IT proprie;
  • ce anume vrea întreprinderea de la infrastructura IT (fiabilitate, scalabilitate, gestionabilitate etc.);
  • volumul investițiilor inițiale în infrastructura IT, precum și ce tip de costuri vor fi implicate – costuri de capital (înseamnă achiziționarea propriului echipament) sau costuri operaționale (echipamentul este de obicei închiriat);
  • orizontul de planificare al întreprinderii.

Despre factorii care influențează decizia întreprinderii de a crea și utiliza infrastructura sa IT se pot scrie multe, dar scopul nostru este să arătăm în practică cum se poate crea această infrastructură, astfel încât să fie atât rezilientă, cât și să reduce costurile pentru achiziționarea de software comercial sau chiar să le evite complet.

După o practică îndelungată, nu este bine să economisești pe hardware, deoarece cel zgârcit plătește de două ori, și chiar mult mai mult. Dar, din nou, hardware-ul de calitate este doar o recomandare, iar, în final, ce anume să cumperi și la ce preț depinde de capacitățile companiei și de "zgârcenia" conducerii acesteia. Trebuie înțeles termenul "zgârcenie" în sensul pozitiv, deoarece este mai bine să investești în hardware de la început, pentru a evita probleme serioase cu suportul și scalarea ulterioară, deoarece o planificare incorectă inițială și o economisire excesivă pot duce, în viitor, la costuri mai mari decât cele suportate la lansarea proiectului.

Deci, datele de bază pentru proiect sunt:

  • există o companie care a decis să creeze un portal web propriu și să își aducă activitatea pe Internet;
  • compania a decis să închirieze un rack pentru a-și plasa echipamentele într-un datacenter bun, certificat conform standardului Tier III;
  • compania a decis să nu facă economii mari pe hardware și, prin urmare, a achiziționat următoarele echipamente cu garanții și suport extins:

Lista echipamentelor

  • două servere fizice Dell PowerEdge R640 compuse din:
  • două procesoare Intel Xeon Gold 5120
  • 512 Gb RAM
  • două discuri SAS în RAID1 pentru instalarea OS-ului
  • plăcă de rețea integrată cu 4 porturi 1G
  • două plăci de rețea cu 2 porturi 10G
  • o placă HBA FC cu 2 porturi 16G.
  • o soluție de stocare Dell MD3820f cu două controlere, conectată prin FC 16G direct la serverele Dell;
  • două switch-uri de nivel 2 — Cisco WS-C2960RX-48FPS-L, unite într-un stack;
  • două switch-uri de nivel 3 — Cisco WS-C3850-24T-E, unite într-un stack;
  • Rack-ul, UPS-ul, PDU-ul, serverele de consolă – sunt furnizate de datacenter.

După cum vedem, echipamentele existente au perspective bune pentru scalarea orizontală și verticală, în cazul în care compania va putea concura cu alte firme similare în Internet și va începe să obțină profituri care pot fi reinvestite pentru extinderea resurselor în continuare pentru competiție și creșterea profitului.

Ce echipamente putem adăuga, dacă compania decide să crească performanța clustrelor noastre de calcule:

  • avem un rezervor mare de porturi pe switch-urile 2960X, deci putem adăuga mai multe servere hardware;
  • achiziționați două comutatoare FC pentru a le conecta la sistemul de stocare și servere suplimentare;
  • serverele deja existente pot fi actualizate – adăugând memorie, înlocuind procesoarele cu unele mai performante, conectându-le la rețeaua 10G cu adaptoarele de rețea existente;
  • la sistemul de stocare se pot adăuga rafturi de discuri suplimentare cu tipul necesar de discuri – SAS, SATA sau SSD, în funcție de sarcina planificată;
  • după adăugarea comutatoarelor FC se poate achiziționa un alt sistem de stocare pentru a adăuga și mai multă capacitate de stocare, iar dacă îi adăugați opțiunea specială Remote Replication, se poate configura replicarea datelor între sistemele de stocare atât în cadrul unui singur centru de date, cât și între centrele de date (dar asta este deja în afara subiectului articolului);
  • există, de asemenea, comutatoare de nivel trei – Cisco 3850, care pot fi utilizate ca nucleu redundant al rețelei, pentru rutare de mare viteză între rețelele interne. Acest lucru va fi de mare ajutor în continuare, pe măsură ce infrastructura internă va crește. De asemenea, 3850 are porturi 10G care pot fi activate ulterior, la actualizarea echipamentului de rețea pentru viteze de 10G.

Cum virtualizarea este esențială astăzi, ne vom alinia tendințelor, fiindcă este o modalitate excelentă de a reduce costurile pentru achiziționarea serverelor costisitoare pentru elementele separate ale infrastructurii (servere web, baze de date etc.), care nu sunt întotdeauna utilizate optim în condiții de încărcare redusă, așa cum se va întâmpla la începutul lansării proiectului.

În plus, virtualizarea oferă multe alte avantaje de care ne putem bucura: reziliență a mașinilor virtuale la defecțiuni hardware, migrarea live între nodurile hardware ale clusterei pentru întreținere, distribuirea manuală sau automată a încărcării între nodurile clusterei etc.

Pentru echipamentul achiziționat de întreprindere, se impune desfășurarea unui cluster VMware vSphere cu disponibilitate ridicată, dar deoarece orice software de la VMware este cunoscut pentru prețurile sale exorbitante, vom folosi un software complet gratuit pentru gestionarea virtualizării – oVirt, pe baza căruia se creează produsul cunoscut, dar deja comercial – RHEV.

Software oVirt necesar pentru a integra toate elementele infrastructurii într-un sistem unitar, pentru a permite o bună funcționare a mașinilor virtuale cu disponibilitate ridicată – baze de date, aplicații web, servere proxy, balanceuri de trafic, servere pentru colectarea jurnalelor și analitică etc., adică lucrurile care constituie portalul web al întreprinderii noastre.

În concluzia acestei introduceri, ne așteaptă următoarele articole, care în practică vor arăta cum să desfășurăm întreaga infrastructură hardware-software a întreprinderii:

Lista articolelor

  • Partea 1. Pregătirea pentru desfășurarea clusterului oVirt 4.3.
  • Partea 2. Instalarea și configurarea clusterului oVirt 4.3.
  • Partea 3. Configurarea clusterului VyOS, organizarea rutării externe cu redundanță.
  • Partea 4. Configurarea stivei Cisco 3850, organizarea rutării interne.

Partea 1. Pregătirea pentru desfășurarea clusterului oVirt 4.3

Configurarea de bază a hosturilor

Instalarea și configurarea sistemului de operare – acesta este cel mai simplu pas. Există o mulțime de articole despre cum să instalați și să configurați corect un sistem de operare, deci nu are sens să încercăm să oferim ceva exclusiv pe acest subiect.

Deci, avem două hosturi Dell PowerEdge R640, pe care trebuie să instalăm sistemul de operare și să facem setările preliminare pentru a le folosi ca hiper-vizoare pentru a rula mașini virtuale în clusterul oVirt 4.3.

Deoarece intenționăm să folosim software-ul gratuit și non-comercial oVirt, sistemul de operare ales pentru desfășurarea hosturilor este CentOS 7.7, deși pot fi instalate și alte sisteme de operare pe hosturile pentru oVirt:

  • o construcție specială pe bază de RHEL, așa-numitul oVirt Node;
  • OS Oracle Linux, vara anului 2019. a fost anunțată suportul pentru funcționarea oVirt pe acesta.

Înainte de instalarea sistemului de operare, se recomandă:

  • să configurați interfața de rețea iDRAC pe ambele hosturi;
  • să actualizați firmware-urile pentru BIOS și iDRAC la cele mai recente versiuni;
  • să configurați Profilul de Sistem al serverului ideal în modul Performance;
  • să configurați RAID din discurile locale (se recomandă RAID1), pentru instalarea sistemului de operare pe server.

Apoi, instalăm sistemul de operare pe discul creat anterior prin iDRAC – procesul de instalare este normal, fără momente speciale. Accesul la consola serverului pentru a începe instalarea sistemului de operare poate fi obținut și prin iDRAC, deși nimic nu ne împiedică să conectăm un monitor, o tastatură și un mouse direct la server pentru a instala sistemul de operare de pe un „flash drive”.

După instalarea sistemului de operare, facem setările inițiale:

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

Instalăm setul de bază de software

Pentru configurarea inițială a sistemului de operare, este necesar să configurăm orice interfață de rețea pe server pentru a putea avea acces la internet, pentru actualizarea sistemului de operare și instalarea pachetelor necesare. Acest lucru poate fi realizat fie în timpul instalării sistemului de operare, fie după aceasta.

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 

Toate setările și pachetele de software menționate anterior sunt o chestiune de preferințe personale și acest set are doar caracter recomandat.

Deoarece gazda noastră va juca rolul de hypervisor, haideți să activăm profilul de performanță necesar:

systemctl enable tuned 
systemctl start tuned 
systemctl status tuned 

tuned-adm profile 
tuned-adm profile virtual-host 

Mai multe informații despre profilul de performanță pot fi găsite aici: „Capitolul 4. tuned și tuned-adm«.

După instalarea sistemului de operare, trecem la următoarea etapă – configurarea interfețelor de rețea pe gazde și a stivei de switch-uri Cisco 2960X.

Configurarea stivei de switch-uri Cisco 2960X

În proiectul nostru vor fi folosite următoarele numere VLAN – sau domenii de difuzare, izolate între ele, cu scopul de a separa diferite tipuri de trafic:

VLAN 10 – Internet
VLAN 17 – Management (iDRAC, stocare, management switch-uri)
VLAN 32 – Rețeaua de producție a VM-urilor
VLAN 33 – rețeaua de interconectare (către contractori externi)
VLAN 34 – rețeaua de testare a VM-urilor
VLAN 35 – rețeaua de dezvoltare a VM-urilor
VLAN 40 – Rețeaua de monitorizare

Înainte de a începe lucrările, să prezentăm schema la nivel L2, la care ar trebui să ajungem în final:

Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

Pentru interacțiunea rețea gazdelor oVirt și a mașinilor virtuale între ele, precum și pentru managementul stocării noastre, este necesară configurarea stivei de switch-uri Cisco 2960X.

Gazdele Dell au plăci de rețea încorporate cu 4 porturi, prin urmare, conectarea lor la Cisco 2960X este recomandabilă printr-o conexiune de rețea redundantă, utilizând pentru aceasta agregarea porturilor de rețea fizice într-o interfață logică și protocolul LACP (802.3ad):

  • primele două porturi de pe gazdă sunt configurate în mod bonding și se conectează la switch-ul 2960X – pe această interfață logică va fi configurat bridge cu o adresă pentru gestionarea gazdelor, monitorizarea și comunicarea cu alte gazde din clusterul oVirt, de asemenea, va fi utilizată pentru migrarea live a mașinilor virtuale;
  • cele două porturi de pe gazdă sunt de asemenea configurate în modul de bundling și sunt conectate la 2960X – pe acest interfață logică, folosind oVirt, vor fi create ulterior bridge-uri (în VLAN-urile corespunzătoare) la care se vor conecta mașinile virtuale.
  • ambele porturi de rețea, în cadrul aceleași interfețe logice, vor fi active, adică traficul poate fi transmis simultan, în modul de balansare.
  • setările rețelei pe nodurile clusterului trebuie să fie absolut IDENTICE, cu excepția adreselor IP.

Configurarea de bază a stivei de switch-uri 2960X și a porturilor sale

În prealabil, switch-urile noastre trebuie să fie:

  • montate în rack;
  • conectate prin două cabluri speciale de lungime necesară, de exemplu, CAB-STK-E-1M;
  • conectate la sursa de alimentare;
  • conectate la stația de lucru a administratorului prin portul de consolă, pentru configurarea lor inițială.

Ghidul necesar pentru aceasta este disponibil pe pagina oficială a producătorului.

După finalizarea acțiunilor menționate mai sus, configurăm switch-urile.
Ce înseamnă fiecare comandă, nu va fi explicat în cadrul acestui articol, dacă este necesar, toate informațiile pot fi găsite singuri.
Scopul nostru este să configurăm stiva de switch-uri cât mai repede posibil și să conectăm la ea gazdele și interfețele de management ale STS.

1) Ne conectăm la switch-ul principal, trecem în modul privilegiat, apoi intrăm în modul de configurare și facem setările de bază.

Configurația de bază a switch-ului:

 activează
 configurează terminalul

 nume gazdă 2960X

 nu serviciu pad
 serviciu marcaje debug datetime msec
 serviciu marcaje log datetime localtime show-timezone msec
 nu serviciu criptare-parolă
 serviciu numere-secuențe

 switch 1 prioritate 15
 switch 2 prioritate 14
 timer persistent stack-mac 0

 fus orar ceas MSK 3
  modul vtp transparent
  ip subnet-zero

 vlan 17
  nume Management

 vlan 32
  nume PROD 

 vlan 33
  nume Interconectare

 vlan 34
  nume Test

 vlan 35
  nume Dev

 vlan 40
  nume Monitorizare

 modul spanning-tree rapid-pvst
 spanning-tree etherchannel guard misconfig
 spanning-tree portfast bpduguard default
 spanning-tree extinde system-id
 spanning-tree vlan 1-40 root primary
 spanning-tree loopguard default
 politica de alocare vlan internă în creștere
 port-channel load-balance src-dst-ip

 errdisable recovery cause loopback
 errdisable recovery cause bpduguard
 errdisable recovery interval 60

linie con 0
 timeout-sesiune 60
 exec-timeout 60 0
 înregistrare sincronizată
linie vty 5 15
 timeout-sesiune 60
 exec-timeout 60 0
 înregistrare sincronizată

 ip http server
 ip http secure-server
 nu vstack

interfață Vlan1
 nu ip address
 oprit

 ieși 

Salvăm configurația cu comanda „wr mem” și repornim stiva de switch-uri cu comanda „reload” pe switch-ul principal 1.

2) Configurăm porturile de rețea ale switch-ului în modul de acces (access) în VLAN 17, pentru a conecta interfețele de management ale SCSI și serverelor iDRAC.

Configurarea porturilor de management:

interfață GigabitEthernet1/0/5
 descriere iDRAC - host1
 switchport acces vlan 17
 switchport mod acces
 spanning-tree portfast edge

interfață GigabitEthernet1/0/6
 descriere Storage1 - Cntr0/Eth0
 switchport acces vlan 17
 switchport mod acces
 spanning-tree portfast edge

interfață GigabitEthernet2/0/5
 descriere iDRAC - host2
 switchport acces vlan 17
 switchport mod acces
 spanning-tree portfast edge

interfață GigabitEthernet2/0/6
 descriere Storage1 – Cntr1/Eth0
 switchport acces vlan 17
 switchport mod acces
 spanning-tree portfast edge
 ieși

3) După repornirea stivei, verificăm dacă funcționează corect:

Verificarea funcționalității stivei:

2960X#show switch stack-ring speed

Viteza Stack Ring        : 20G
Configurația Stack Ring: Complet
Protocol Stack Ring     : 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
Adresa Mac Switch/Stack : 0cd0.f8e4.XXXX
Timpul de așteptare la persistenta Mac: Nedefinit
                                           H/W   Curent
Switch#  Rol   Adresa Mac     Prioritate Versiune  Stare
----------------------------------------------------------
*1       Master 0cd0.f8e4.XXXX    15     4       Pregătit
 2       Membru 0029.c251.XXXX     14     4       Pregătit

         Starea Portului Stack             Vecinii
Switch#  Port 1     Port 2           Port 1   Port 2
--------------------------------------------------------
  1        Ok         Ok                2        2
  2        Ok         Ok                1        1

4) Configurarea accesului SSH la stiva 2960X

Pentru gestionarea de la distanță a stivei prin SSH, vom folosi IP 172.20.1.10, configurat pe SVI (interfața virtuală a switch-ului) VLAN17.

Deși pentru scopuri de management este recomandat să folosiți un port dedicat pe comutator, aceasta depinde de preferințe și posibilități personale.

Configurarea accesului SSH la stiva de comutatoare:

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

Configurăm parola pentru accesul în modul privilegiat:

enable secret *myenablepassword*
service password-encryption

Configurăm NTP:

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) Configurăm interface-urile logice Etherchannel și porturile fizice conectate la gazde. Pentru simplificarea configurației, toate VLAN-urile existente vor fi permise pe toate interface-urile logice, dar de obicei se recomandă configurarea doar a celor necesare:

Configurarea interface-urilor Etherchannel:

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

Configurarea inițială a interfețelor de rețea pentru mașinile virtuale de pe gazde Host1 și Host2

Verificăm prezența modulelor necesare pentru funcționarea bondingului în sistem și instalăm modulul pentru gestionarea bridge-urilor:

modinfo bonding
modinfo 8021q
yum install bridge-utils

Configurarea interfeței logice BOND1 pentru mașinile virtuale pe gazde și a interfețelor sale fizice:

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 

După finalizarea setărilor pe stack 2960X și gazde, repornim rețeaua pe gazde și verificăm funcționalitatea interfeței logice.

  • pe gazdă:

systemctl restart network

cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (27 aprilie 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

  • pe stack-ul switch-urilor 2960X:

2960X#show lacp internal
Flags:  S - Dispozitivul cere LACPDUs lente
        F - Dispozitivul cere LACPDUs rapide
        A - Dispozitivul este în modul activ       P - Dispozitivul este în modul pasiv

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 - bunded in port-channel
        I - stand-alone s - suspendat
        H - Standby activ (doar LACP)
        R - Layer3      S - Layer2
        U - în utilizare      N - nefolosit, fără agregare
        f - eșuat la alocarea agregatorului

        M - nefolosit, linkuri minime neîndeplinite
        m - nefolosit, portul nu este aggregat din cauza linkurilor minime neîndeplinite
        u - nepotrivit pentru agrupare
        w - în așteptare pentru agregare
        d - port implicit

        A - format prin Auto LAG

Numărul grupurilor de canale utilizate: 11
Numărul agregatoarelor:           11

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)         LACP      Gi1/0/1(P)  Gi2/0/1(P)

Configurarea inițială a interfețelor de rețea pentru gestionarea resurselor clusterului, pe gazde Host1 și Host2

Configurarea interfeței logice BOND1 pentru management pe gazde și a interfețelor sale fizice:

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 

După finalizarea setărilor pe stack 2960X și gazde, repornim rețeaua pe gazde și verificăm funcționalitatea interfeței logice.

systemctl restart network
cat /proc/net/bonding/bond1

2960X#show lacp internal
2960X#sh etherchannel summary

Configurăm interfața de rețea de management pe fiecare gazdă în VLAN 17, și o legăm la interfața logică BOND1:

Configurarea VLAN17 pe 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.17.163
NETMASK=255.255.255.0
GATEWAY=172.20.17.2
DEFROUTE=yes
DNS1=172.20.17.8
DNS2=172.20.17.9
ZONE=public

Configurarea VLAN17 pe 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.17.164
NETMASK=255.255.255.0
GATEWAY=172.20.17.2
DEFROUTE=yes
DNS1=172.20.17.8
DNS2=172.20.17.9
ZONE=public

Facem restart la rețea pe gazde și verificăm vizibilitatea lor între ele.

Prin urmare, configurarea stack-ului de switch-uri Cisco 2960X s-a încheiat, și dacă totul a fost realizat corect, acum avem conectivitate de rețea între toate elementele infrastructurii la nivel L2.

Configurarea SAN Dell MD3820f

Înainte de a începe lucrările de configurare a SAN, aceasta trebuie deja să fie conectată la stack-ul de switch-uri Cisco 2960X interfețele de management, precum și la gazde Host1 și Host2 prin FC.

Schema generală, cum trebuie SAN-ul să fie conectat la stack-ul de switch-uri, a fost prezentată în capitolul anterior.

Schema de conectare a SAN prin FC la gazde trebuie să arate astfel:

Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

În timpul conectării, este necesar să notăm adresele WWPN pentru HBA-urile FC ale gazdelor conectate la porturile FC de pe SAN – acest lucru va fi necesar pentru configurarea ulterioară a legăturii gazdelor la LUN-urile pe SAN.

Pe stația de lucru a administratorului descărcăm și instalăm utilitarul pentru gestionarea SAN-ului Dell MD3820f – PowerVault Modular Disk Storage Manager (MDSM).
Ne conectăm la acesta prin adresele IP implicite, și apoi configurăm adresele noastre din VLAN17, pentru gestionarea controlerelor prin TCP/IP:

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

După configurarea adreselor, accesăm interfața de gestionare a SAN-ului și setăm parola, configurăm ora, actualizăm firmware-ul pentru controlere și discuri, dacă este necesar, etc.
Cum se face acest lucru – este descris în manual de administrare SAS.

După ce am finalizat setările de mai sus, va trebui să facem doar câteva acțiuni:

  1. Configurarea identificatorilor porturilor FC de gazdă – Identificatori de port de gazdă.
  2. Crearea unui grup de gazde – Grup de gazde și adăugarea a două gazde Dell.
  3. Crearea unui grup de discuri și în acesta, discurile virtuale (sau LUN-uri), care vor fi prezentate gazdelor.
  4. Configurarea prezentării discurilor virtuale (sau LUN-urilor) pentru gazde.

Adăugarea de noi gazde și legarea lor la identificatorii porturilor FC de gazdă se face din meniul – Mapări de gazde -> Definire -> Gazde…
Adresele WWPN ale HBA-urilor FC ale gazdelor pot fi găsite, de exemplu, în iDRAC-ul serverului.

Ca rezultat, ar trebui să obținem o imagine similară:

Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

Adăugarea unui nou grup de gazde și legarea acestuia la gazde se face din meniul – Mapări de gazde -> Definire -> Grup de gazde…
Pentru gazde, alegem tipul de OS – Linux (DM-MP).

După crearea grupului de gazde, prin tab-ul Servicii de stocare și copiere, creăm un grup de discuri – Grup de discuri, cu un tip dependent de cerințele de redundanță, de exemplu, RAID10, și în acesta discurile virtuale de dimensiunea dorită:

Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

Și în final, etapa finală — prezentarea discurilor virtuale (sau LUN-urilor) pentru gazde.
Pentru asta, din meniul – Mapări de gazde -> Mapare LUN -> Adăugați… facem legătura discurilor virtuale cu gazdele, atribuindu-le numere.

Totul ar trebui să arate așa cum este în această captură de ecran:

Crearea unei infrastructuri IT reziliente. Partea 1 – pregătirea pentru desfășurarea clusterului oVirt 4.3

Astfel, terminăm cu configurarea SAS și, dacă totul a fost făcut corect, gazdele ar trebui să vadă LUN-urile prezentate lor prin HBA-urile lor FC.
Să forțăm sistemul să actualizeze informațiile despre discurile conectate:

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

Să vedem ce dispozitive sunt vizibile pe serverele noastre:

cat /proc/scsi/scsi
Dispozitive atașate:
Host: scsi0 Channel: 02 Id: 00 Lun: 00
  Vendor: DELL     Model: PERC H330 Mini   Rev: 4.29
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 00
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 01
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 04
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 11
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 31
  Vendor: DELL     Model: Universal Xport  Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 00
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 01
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 04
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 11
  Vendor: DELL     Model: MD38xxf          Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 31
  Vendor: DELL     Model: Universal Xport  Rev: 0825
  Type:   Acces direct                    ANSI  revizia SCSI: 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  -

Pe gazde, este posibil să configurați suplimentar multipath, deși la instalarea oVirt, acesta poate face asta de unul singur, este mai bine să verificați corectitudinea funcționării MP în prealabil.

Instalarea și configurarea 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[a-z]"
 }

Activăm serviciul MP la pornire automată și îl lansăm:

systemctl enable multipathd && systemctl restart multipathd

Verificarea informațiilor despre modulele încărcate pentru funcționarea MP:

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 
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

Vizualizăm informații sumare despre configurația multipath existentă:

mpathconf
multipath este activat
find_multipaths este dezactivat
nume_prietenoase este dezactivat
modulul dm_multipath este încărcat
multipathd este în execuție

După adăugarea unui nou LUN pe stocarea SAN și prezentarea acestuia gazdei, este necesară scanarea HBA-urilor conectate la gazdă.

systemctl reload multipathd
multipath -v2

Și, în final, verificăm dacă toate LUN-urile au fost prezentate pe stocarea SAN pentru gazde și dacă toate au două căi.

Verificarea funcționării MP:

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

După cum se poate observa, toate cele trei discuri virtuale pe stocarea SAN sunt vizibile prin două căi. Astfel, toate lucrările pregătitoare sunt finalizate, iar acum putem trece la etapa principală – configurarea cluster-ului oVirt, care va fi tratată în următorul articol.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster