Si invitano i lettori a conoscere i principi per costruire un'infrastruttura resiliente per una piccola impresa all'interno di un singolo data center, che saranno esaminati in dettaglio in un breve ciclo di articoli.
Introduzione
Sotto Data Center (Centro di Elaborazione Dati) può riferirsi a:
- un proprio rack nella propria "stanza dei server" all'interno dell'azienda, che soddisfa i requisiti minimi per l'alimentazione elettrica e il raffreddamento delle attrezzature, e che ha accesso a Internet tramite due fornitori indipendenti;
- un rack in affitto con attrezzature proprie, situato in un vero data center - il cosiddetto collocation, che corrisponde agli standard Tier III o IV, garantendo un'alimentazione elettrica affidabile, raffreddamento e un'uscita a Internet resiliente;
- attrezzature completamente in affitto in un data center Tier III o IV.
Quale opzione di collocazione scegliere - in ogni caso è tutto individuale e dipende solitamente da alcuni fattori principali:
- a cosa serve all'azienda l'infrastruttura IT.
- cosa desidera esattamente un'azienda dalla propria infrastruttura IT (affidabilità, scalabilità, gestibilità, ecc.);
- l'ammontare degli investimenti iniziali nell'infrastruttura IT e che tipo di spese siano previste – capitali (significa acquistare la propria attrezzatura) o operative (l'attrezzatura viene generalmente noleggiata);
- l'orizzonte di pianificazione stesso dell'azienda.
Si possono scrivere molte informazioni sui fattori che influenzano la decisione di un'azienda di creare e utilizzare la propria infrastruttura IT, ma il nostro obiettivo è dimostrare praticamente come realizzare questa infrastruttura in modo che sia sia resiliente che economica, riducendo le spese per l'acquisto di software commerciale o addirittura evitando completamente tali costi.
Come dimostra una lunga esperienza, risparmiare sull'hardware non vale la pena, poiché chi è avaro paga due volte, e anche molto di più. D'altra parte, un buon hardware è solo una raccomandazione, e alla fine cosa acquistare e a che prezzo dipende dalle possibilità dell'azienda e dalla "avarizia" della sua dirigenza. Inoltre, il termine "avarizia" va inteso nel senso positivo, poiché è meglio investire in hardware fin dall'inizio, per evitare seri problemi nella sua successiva manutenzione e scalabilità. Una pianificazione inizialmente errata e il risparmio eccessivo possono portare, in futuro, a costi maggiori rispetto a quelli iniziali per il lancio del progetto.
Quindi, i dati di partenza per il progetto:
- c'è un'azienda che ha deciso di creare un proprio portale web e portare la propria attività online;
- l'azienda ha deciso di affittare uno spazio per posizionare le proprie attrezzature in un buon data center con certificazione secondo lo standard Tier III;
- l'azienda ha deciso di non risparmiare molto sull'hardware e quindi ha acquistato il seguente equipaggiamento con garanzie e supporto estesi:
Elenco dell'hardware
- due server fisici Dell PowerEdge R640 così configurati:
- due processori Intel Xeon Gold 5120
- 512 Gb di RAM
- due dischi SAS in RAID1 per l'installazione del sistema operativo
- scheda di rete integrata con 4 porte 1G
- due schede di rete a 2 porte 10G
- un HBA FC a 2 porte 16G.
- Sistema di archiviazione Dell MD3820f a 2 controller, collegato tramite FC 16G direttamente agli host Dell;
- due switch di secondo livello — Cisco WS-C2960RX-48FPS-L uniti in un stack;
- due switch di terzo livello — Cisco WS-C3850-24T-E, uniti in un stack;
- Rack, UPS, PDU, server console – forniti dal data center.
Come vediamo, l'attrezzatura disponibile ha buone prospettive per la scalabilità orizzontale e verticale, nel caso in cui l'azienda possa competere con altre aziende simili online e inizi a generare profitti, che potrebbero essere reinvestiti nell'ampliamento delle risorse per ulteriore concorrenza e crescita dei profitti.
Quale attrezzatura possiamo aggiungere se l'azienda decide di aumentare le prestazioni del nostro cluster di calcolo:
- abbiamo un grande margine di porte sugli switch 2960X, quindi possiamo aggiungere più server hardware;
- acquistare due switch FC per collegarvi l'SAN e server aggiuntivi;
- i server esistenti possono essere potenziati – aggiungendo memoria, sostituendo i processori con modelli più performanti e collegandoli a una rete 10G utilizzando le schede di rete già in uso;
- all'SAN è possibile aggiungere ulteriori scaffali disco con il tipo di dischi necessari – SAS, SATA o SSD, a seconda del carico previsto;
- dopo aver aggiunto gli switch FC, è possibile acquistare un'altra SAN per aggiungere ulteriore capacità di archiviazione e, se si acquista l'opzione speciale Remote Replication, sarà possibile configurare la replicazione dei dati tra le SAN sia all'interno dello stesso data center sia tra diversi data center (ma questo esula dal contesto dell'articolo);
- sono inoltre disponibili switch di terzo livello – Cisco 3850, che possono essere utilizzati come nucleo di rete ad alta disponibilità per il routing ad alta velocità tra le reti interne. Questo sarà molto utile in futuro, man mano che cresce l'infrastruttura interna. Inoltre, il 3850 ha porte 10G, che possono essere utilizzate in seguito, durante l'aggiornamento dell'hardware di rete a 10G.
Poiché senza virtualizzazione non si va da nessuna parte, anche noi saremo ovviamente al passo con i tempi, soprattutto perché è un ottimo modo per ridurre i costi di acquisto di costosi server per singoli elementi dell'infrastruttura (server web, database, ecc.), che non sempre vengono utilizzati in modo ottimale in caso di bassa carico, e questo è esattamente quello che accadrà all'inizio del progetto.
Inoltre, la virtualizzazione ha molti altri vantaggi che ci possono tornare molto utili: resilienza delle VM ai guasti del server hardware, migrazione live tra i nodi hardware del cluster per la manutenzione, distribuzione manuale o automatica del carico tra i nodi del cluster, ecc.
Per l'hardware acquistato dall'azienda, si suggerisce di implementare un cluster ad alta disponibilità VMware vSphere, ma dato che qualsiasi software di VMware è noto per i suoi prezzi "esorbitanti", utilizzeremo un software completamente gratuito per la gestione della virtualizzazione - , sulla base del quale si crea un prodotto commerciale noto ma già affermato — .
Software oVirt è necessario unire tra loro tutti gli elementi dell'infrastruttura in un tutto unico, per ottenere la possibilità di lavorare facilmente con macchine virtuali altamente disponibili – database, applicazioni web, server proxy, bilanciatori, server per la raccolta di log e analisi, ecc., cioè ciò che costituisce il portale web della nostra azienda.
Riassumendo questa introduzione, ci aspettano i seguenti articoli che mostreranno nella pratica come implementare l'intera infrastruttura hardware e software dell'azienda:
Elenco degli articoli
- Parte 1. Preparazione all'implementazione del cluster oVirt 4.3.
- Parte 2. Installazione e configurazione del cluster oVirt 4.3.
- Parte 3. Configurazione del cluster VyOS, organizzazione del routing esterno ridondante.
- Parte 4. Configurazione dello stack Cisco 3850, organizzazione del routing interno.
Parte 1. Preparazione all'implementazione del cluster oVirt 4.3
Configurazione di base degli host
L'installazione e la configurazione del sistema operativo sono il passaggio più semplice. Ci sono innumerevoli articoli su come installare e configurare correttamente il sistema operativo, quindi non ha senso cercare di fornire qualcosa di esclusivo su questo argomento.
Abbiamo due host Dell PowerEdge R640 su cui dobbiamo installare un sistema operativo e effettuare le configurazioni preliminari per utilizzarli come hypervisor per eseguire macchine virtuali nel cluster oVirt 4.3.
Poiché prevediamo di utilizzare il software gratuito e non commerciale oVirt, per il dispiegamento degli host è stato scelto il sistema operativo CentOS 7.7, sebbene sia possibile installare altri sistemi operativi sugli host per oVirt:
- una build speciale basata su RHEL, nota come ;
- Il sistema operativo Oracle Linux è stato annunciato nell'estate del 2019 Prima di installare il sistema operativo, si consiglia di:
configurare l'interfaccia di rete iDRAC su entrambi gli host;
- aggiornare i firmware per BIOS e iDRAC alle ultime versioni;
- configurare il profilo di sistema del server preferibilmente in modalità Performance;
- configurare il RAID con i dischi locali (si consiglia RAID1) per installare il sistema operativo sul server.
- Successivamente, installiamo il sistema operativo sul disco precedentemente creato tramite iDRAC: il processo di installazione è standard e non presenta particolari momenti critici. L'accesso alla console del server per avviare l'installazione del sistema operativo può essere ottenuto anche tramite iDRAC, sebbene non ci sia nulla che impedisca di collegare direttamente un monitor, una tastiera e un mouse al server e installare il sistema operativo da una 'pen drive'.
Затем устанавливаем ОС на созданный ранее через iDRAC диск – процесс установки обычный, каких-то особых моментов в нём нет. Доступ к консоли сервера для начала установки ОС также можно получить через iDRAC, хотя ничто не мешает подключить монитор, клавиатуру и мышь напрямую к серверу и установить ОС с «флэшки».
Dopo l'installazione del sistema operativo, eseguiamo le impostazioni iniziali:
systemctl enable network.service
systemctl start network.service
systemctl status network.servicesystemctl stop NetworkManager
systemctl disable NetworkManager
systemctl status NetworkManageryum install -y ntp
systemctl enable ntpd.service
systemctl start ntpd.servicecat /etc/sysconfig/selinux
SELINUX=disabled
SELINUXTYPE=targetedcat /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536cat /etc/sysctl.conf
vm.max_map_count = 262144
vm.swappiness = 1Installiamo un set di base di software
Per la configurazione iniziale del sistema operativo, è necessario configurare un'interfaccia di rete sul server per avere accesso a Internet, per aggiornare il sistema operativo e installare i pacchetti software necessari. Questo può essere fatto sia durante l'installazione del sistema operativo che successivamente.
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 Tutte le impostazioni e il set di software sopra indicati sono questioni di preferenze personali e questo set è solo di carattere raccomandativo.
Poiché il nostro host agirà da hypervisor, attiviamo il profilo di prestazioni necessario:
systemctl enable tuned
systemctl start tuned
systemctl status tuned tuned-adm profile
tuned-adm profile virtual-host Per ulteriori informazioni sui profili di prestazioni, puoi leggere qui: "«.
Dopo l'installazione del sistema operativo, passiamo alla fase successiva: la configurazione delle interfacce di rete sugli host e dello stack degli switch Cisco 2960X.
Configurazione dello stack degli switch Cisco 2960X
Nel nostro progetto utilizzeremo i seguenti numeri VLAN — o domini di broadcast, isolati tra loro, per separare diversi tipi di traffico:
VLAN 10 – Internet
VLAN 17 – Management (iDRAC, SAN, gestione degli switch)
VLAN 32 – rete di produzione VM
VLAN 33 – rete di interconnessione (ai contraenti esterni)
VLAN 34 – rete di test VM
VLAN 35 – rete di sviluppo VM
VLAN 40 – rete di monitoraggio
Prima di iniziare i lavori, presenteremo uno schema a livello L2, a cui dovremmo arrivare:

Per facilitare l'interazione tra gli host oVirt e le macchine virtuali, nonché per gestire il nostro SAN, è necessaria la configurazione dello stack degli switch Cisco 2960X.
Gli host Dell dispongono di schede di rete integrate a 4 porte; pertanto, è opportuno organizzare la loro connessione allo switch Cisco 2960X utilizzando una connessione di rete ridondante, raggruppando le porte di rete fisiche in un'interfaccia logica e utilizzando il protocollo LACP (802.3ad):
- I primi due porte sull'host sono configurati in modalità bonding e collegati allo switch 2960X – su questa interfaccia logica sarà configurato bridge con un indirizzo per la gestione dell'host, il monitoraggio e la comunicazione con altri host nel cluster oVirt; sarà inoltre utilizzato per la migrazione live delle macchine virtuali.
- Le seconde due porte sull'host sono anch'esse configurate in modalità bonding e collegate a 2960X – su questa interfaccia logica con oVirt, saranno successivamente creati bridge (nelle rispettive VLAN) ai quali si collegheranno le macchine virtuali.
- Entrambe le porte di rete, all'interno di un'unica interfaccia logica, saranno attive, cioè il traffico potrà essere trasmesso simultaneamente, in modalità bilanciamento.
- Le impostazioni di rete sui nodi del cluster devono essere assolutamente IDENTICHE, ad eccezione degli indirizzi IP.
Configurazione di base dello stack di switch 2960X e le sue porte
I nostri switch devono essere:
- montati in rack;
- collegati tramite due cavi speciali della lunghezza adeguata, ad esempio, CAB-STK-E-1M;
- collegati all'alimentazione;
- connessi alla workstation dell'amministratore tramite la porta console per la loro configurazione iniziale.
La guida necessaria è disponibile su del produttore.
Dopo aver completato i passaggi sopra indicati, procediamo alla configurazione degli switch.
Non ci si propone di interpretare cosa significhi ogni comando in questo articolo; se necessario, tutte le informazioni possono essere trovate autonomamente.
Il nostro obiettivo è configurare rapidamente il stack di switch e collegare ad esso gli host e le interfacce di gestione dello storage.
1) Ci connettiamo allo switch principale, accediamo alla modalità privilegiata, poi entriamo nella modalità di configurazione e facciamo le impostazioni di base.
Configurazione di base dello switch:
abilita
configura terminale
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 trasparente
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
Salviamo la configurazione con il comando «wr mem» e riavviamo lo stack degli switch con il comando «reload» sullo switch principale switch 1.
2) Configuriamo le porte di rete dello switch in modalità accesso (access) nella VLAN 17, per collegare le interfacce di gestione dei sistemi di archiviazione (SXD) e dei server iDRAC.
Configurazione delle porte di gestione:
interfaccia GigabitEthernet1/0/5
descrizione iDRAC - host1
switchport access vlan 17
switchport mode access
spanning-tree portfast edge
interfaccia GigabitEthernet1/0/6
descrizione Storage1 - Cntr0/Eth0
switchport access vlan 17
switchport mode access
spanning-tree portfast edge
interfaccia GigabitEthernet2/0/5
descrizione iDRAC - host2
switchport access vlan 17
switchport mode access
spanning-tree portfast edge
interfaccia GigabitEthernet2/0/6
descrizione Storage1 – Cntr1/Eth0
switchport access vlan 17
switchport mode access
spanning-tree portfast edge
exit3) Dopo il riavvio dello stack, verifichiamo che funzioni correttamente:
Verifica del funzionamento dello stack:
2960X#show switch stack-ring speed
Velocità Stack Ring : 20G
Configurazione Stack Ring: Completa
Protocollo Stack Ring : FlexStack
2960X#show switch stack-ports
Switch # Porta 1 Porta 2
-------- ------ ------
1 Ok Ok
2 Ok Ok
2960X#show switch neighbors
Switch # Porta 1 Porta 2
-------- ------ ------
1 2 2
2 1 1
2960X#show switch detail
Indirizzo Mac Switch/Stack : 0cd0.f8e4.XXXX
Tempo di attesa persistenza Mac: Indefinito
H/W Corrente
Switch# Ruolo Indirizzo Mac Priorità Versione Stato
----------------------------------------------------------
*1 Master 0cd0.f8e4.XXXX 15 4 Pronto
2 Membro 0029.c251.XXXX 14 4 Pronto
Stato Porta Stack Vicini
Switch# Porta 1 Porta 2 Porta 1 Porta 2
--------------------------------------------------------
1 Ok Ok 2 2
2 Ok Ok 1 14) Configurazione dell'accesso SSH allo stack 2960X
Per gestire da remoto il stack tramite SSH, utilizzeremo l'IP 172.20.1.10, configurato su SVI (switch virtual interface) VLAN17.
Sebbene per motivi di gestione sia preferibile utilizzare una porta dedicata sullo switch, questo dipende da preferenze personali e disponibilità.
Configurazione dell'accesso SSH allo stack degli switch:
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_passwordImpostiamo la password per l'accesso al livello di privilegio:
enable secret *myenablepassword*
service password-encryptionImpostiamo l'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 detail5) Configuriamo le interfacce logiche Etherchannel e le porte fisiche collegate agli host. Per semplificare la configurazione, tutte le VLAN esistenti saranno consentite su tutte le interfacce logiche, ma solitamente si raccomanda di configurare solo ciò che è necessario:
Impostazione delle interfacce Etherchannel:
interfaccia Port-channel1
descrizione EtherChannel con Host1-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
spanning-tree portfast edge trunk
interfaccia Port-channel2
descrizione EtherChannel con Host2-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
spanning-tree portfast edge trunk
interfaccia Port-channel3
descrizione EtherChannel con Host1-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
spanning-tree portfast edge trunk
interfaccia Port-channel4
descrizione EtherChannel con Host2-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
spanning-tree portfast edge trunk
interfaccia GigabitEthernet1/0/1
descrizione Host1-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 1 modalità attiva
interfaccia GigabitEthernet1/0/2
descrizione Host2-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 2 modalità attiva
interfaccia GigabitEthernet1/0/3
descrizione Host1-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 3 modalità attiva
interfaccia GigabitEthernet1/0/4
descrizione Host2-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 4 modalità attiva
interfaccia GigabitEthernet2/0/1
descrizione Host1-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 1 modalità attiva
interfaccia GigabitEthernet2/0/2
descrizione Host2-management
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 2 modalità attiva
interfaccia GigabitEthernet2/0/3
descrizione Host1-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 3 modalità attiva
interfaccia GigabitEthernet2/0/4
descrizione Host2-VM
switchport trunk vlan consentiti 10,17,30-40
switchport modalità trunk
channel-protocol lacp
gruppo-canale 4 modalità attivaConfigurazione iniziale delle interfacce di rete per le macchine virtuali, sugli host Host1 e Host2
Verifichiamo la presenza dei moduli necessari per il funzionamento del bonding nel sistema, installiamo il modulo per la gestione dei bridge:
modinfo bonding
modinfo 8021q
yum install bridge-utilsConfigurazione dell'interfaccia logica BOND1 sugli host per le macchine virtuali e delle sue interfacce fisiche:
cat /etc/sysconfig/network-scripts/ifcfg-bond1
#DESCRIZIONE - gestione
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
#DESCRIZIONE - gestione
DEVICE=em2
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond1
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no
cat /etc/sysconfig/network-scripts/ifcfg-em3
#DESCRIZIONE - gestione
DEVICE=em3
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond1
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no Dopo aver completato le impostazioni nello stack 2960X e sugli host, riavviamo la rete sugli host e controlliamo il funzionamento dell'interfaccia logica.
- sull'host:
systemctl restart network
cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (27 aprile 2011)
Modalità di bonding: aggregazione dinamica dei link IEEE 802.3ad
Politica di hash di trasmissione: layer2+3 (2)
Stato MII: su
Intervallo di polling MII (ms): 100
Ritardo in su (ms): 0
Ritardo in giù (ms): 0
...
info 802.3ad
Tasso LACP: veloce
Min link: 0
Politica di selezione dell'aggregatore (ad_select): stabile
Priorità di sistema: 65535
...
Interfaccia secondaria: em2
Stato MII: su
Velocità: 1000 Mbps
Duplex: completo
...
Interfaccia secondaria: em3
Stato MII: su
Velocità: 1000 Mbps
Duplex: completo- sullo stack dei switch 2960X:
2960X#show lacp internal
Flags: S - Il dispositivo richiede Slow LACPDUs
F - Il dispositivo richiede Fast LACPDUs
A - Il dispositivo è in modalità attiva P - Il dispositivo è in modalità passiva
Gruppo canale 1
LACP porta Admin Oper Porta Stato
Porta Flags Stato Priorità Chiave Chiave Numero Stato
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 - giù P - accoppiato nel port-channel
I - stand-alone s - sospeso
H - Hot-standby (solo LACP)
R - Layer3 S - Layer2
U - in uso N - non in uso, nessuna aggregazione
f - errore nell'allocazione dell'aggregatore
M - non in uso, link minimi non raggiunti
m - non in uso, porta non aggregata a causa dei link minimi non raggiunti
u - inadatto per l'accoppiamento
w - in attesa di aggregazione
d - porta di default
A - formato da Auto LAG
Numero di gruppi canale in uso: 11
Numero di aggregatori: 11
Gruppo Port-channel Protocollo Porte
------+-------------+-----------+-----------------------------------------------
1 Po1(SU) LACP Gi1/0/1(P) Gi2/0/1(P)Configurazione iniziale delle interfacce di rete per la gestione delle risorse del cluster, sugli host Host1 e Host2
Configurazione sugli host dell'interfaccia logica BOND1 per la gestione e delle sue interfacce fisiche:
cat /etc/sysconfig/network-scripts/ifcfg-bond0
#DESCRIZIONE - gestione
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
#DESCRIZIONE - gestione
DEVICE=em0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no
cat /etc/sysconfig/network-scripts/ifcfg-em1
#DESCRIZIONE - gestione
DEVICE=em1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no Dopo aver completato le impostazioni nello stack 2960X e sugli host, riavviamo la rete sugli host e controlliamo il funzionamento dell'interfaccia logica.
systemctl restart network
cat /proc/net/bonding/bond1
2960X#show lacp internal
2960X#sh etherchannel summaryImpostiamo l'interfaccia di rete di gestione su ciascun host in VLAN 17, e la colleghiamo all'interfaccia logica BOND1:
Configurazione VLAN17 su 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=publicConfigurazione VLAN17 su 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=publicRiavviamo la rete sugli host e controlliamo la loro visibilità reciproca.
La configurazione dello stack degli switch Cisco 2960X è completata e, se tutto è stato fatto correttamente, ora abbiamo la connettività di rete tra tutti gli elementi dell'infrastruttura a livello L2.
Configurazione dello storage Dell MD3820f
Prima di iniziare la configurazione dello storage, deve già essere collegato allo stack degli switch Cisco 2960X tramite interfacce di gestione, così come agli host Host1 e Host2 via FC.
Lo schema generale di come lo storage deve essere collegato allo stack degli switch è stato fornito nel capitolo precedente.
Lo schema di connessione dello storage via FC agli host dovrebbe apparire così:

Durante il collegamento, è necessario annotare gli indirizzi WWPN degli host FC HBA collegati alle porte FC dello storage – saranno necessari per la successiva configurazione del binding degli host ai LUN dello storage.
Sulla workstation dell'amministratore, scarichiamo e installiamo l'utilità per gestire lo storage Dell MD3820f – PowerVault Modular Disk Storage Manager (MDSM).
Ci colleghiamo tramite il suo indirizzo IP predefinito e poi configuriamo i nostri indirizzi da VLAN17, per gestire i controller tramite TCP/IP:
Storage1:
ControllerA IP - 172.20.1.13, MASCHERA - 255.255.255.0, Gateway - 172.20.1.2
ControllerB IP - 172.20.1.14, MASCHERA - 255.255.255.0, Gateway - 172.20.1.2Dopo aver configurato gli indirizzi, accediamo all'interfaccia di gestione dello storage e impostiamo la password, configuriamo il tempo, aggiorniamo il firmware per i controller e i dischi, se necessario e così via.
Come fare ciò è descritto in dello storage.
Dopo aver completato le impostazioni sopra indicate, dovremo eseguire solo alcune azioni:
- Impostare gli identificatori dei porti FC host – Host Port Identifiers.
- Creare un gruppo di host – Host group e aggiungere i nostri due host Dell a esso.
- Creare un gruppo di dischi e al suo interno i dischi virtuali (o LUN) che verranno presentati agli host.
- Configurare la presentazione dei dischi virtuali (o LUN) per gli host.
L'aggiunta di nuovi host e l'associazione degli identificatori dei porti FC host avviene tramite il menu – Host Mappings -> Define -> Hosts…
Gli indirizzi WWPN degli HBA FC degli host possono essere trovati, per esempio, in iDRAC del server.
Di conseguenza, dovremmo ottenere un'immagine simile a questa:

L'aggiunta di un nuovo gruppo di host e l'associazione ad esso degli host avviene tramite il menu – Host Mappings -> Define -> Host Group…
Per gli host scegliamo il tipo di OS – Linux (DM-MP).
Dopo aver creato il gruppo di host, tramite la scheda Storage & Copy Services, creiamo un gruppo di dischi – Disk Group, con un tipo che dipende dalle esigenze di tolleranza ai guasti, ad esempio RAID10, e al suo interno ci sono dischi virtuali della dimensione necessaria:

E infine, l'ultima fase è la presentazione dei dischi virtuali (o LUN) ai host.
Per fare ciò, nel menu – Host Mappings -> Mappatura Lun -> Aggiungi… colleghiamo i dischi virtuali agli host, assegnando loro numeri.
Dovrebbe risultare come nello screenshot seguente:

Con questa configurazione del sistema di archiviazione, concludiamo, e se tutto è stato fatto correttamente, gli host dovrebbero vedere i LUN presentati tramite i loro FC HBA.
Forziamo il sistema ad aggiornare le informazioni sui dischi connessi:
ls -la /sys/class/scsi_host/
echo "- - -" > /sys/class/scsi_host/host[0-9]/scanVediamo quali dispositivi sono visibili sui nostri server:
cat /proc/scsi/scsi
Dispositivi collegati:
Host: scsi0 Canale: 02 Id: 00 Lun: 00
Fornitore: DELL Modello: PERC H330 Mini Rev: 4.29
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi15 Canale: 00 Id: 00 Lun: 00
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi15 Canale: 00 Id: 00 Lun: 01
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi15 Canale: 00 Id: 00 Lun: 04
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi15 Canale: 00 Id: 00 Lun: 11
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi15 Canale: 00 Id: 00 Lun: 31
Fornitore: DELL Modello: Universal Xport Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi18 Canale: 00 Id: 00 Lun: 00
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi18 Canale: 00 Id: 00 Lun: 01
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi18 Canale: 00 Id: 00 Lun: 04
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi18 Canale: 00 Id: 00 Lun: 11
Fornitore: DELL Modello: MD38xxf Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
Host: scsi18 Canale: 00 Id: 00 Lun: 31
Fornitore: DELL Modello: Universal Xport Rev: 0825
Tipo: Accesso Diretto ANSI revisione SCSI: 05
lsscsi
[0:2:0:0] disco DELL PERC H330 Mini 4.29 /dev/sda
[15:0:0:0] disco DELL MD38xxf 0825 -
[15:0:0:1] disco DELL MD38xxf 0825 /dev/sdb
[15:0:0:4] disco DELL MD38xxf 0825 /dev/sdc
[15:0:0:11] disco DELL MD38xxf 0825 /dev/sdd
[15:0:0:31] disco DELL Universal Xport 0825 -
[18:0:0:0] disco DELL MD38xxf 0825 -
[18:0:0:1] disco DELL MD38xxf 0825 /dev/sdi
[18:0:0:4] disco DELL MD38xxf 0825 /dev/sdj
[18:0:0:11] disco DELL MD38xxf 0825 /dev/sdk
[18:0:0:31] disco DELL Universal Xport 0825 -Nei server è anche possibile configurare multipath, e sebbene durante l'installazione di oVirt possa farlo automaticamente, è meglio controllare in anticipo il corretto funzionamento del MP da soli.
Installazione e configurazione di 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]"
}Impostiamo il servizio MP per l'avvio automatico e lo avviamo:
systemctl enable multipathd && systemctl restart multipathdControllo delle informazioni sui moduli caricati per il funzionamento del 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: sha256Visualizziamo un riepilogo delle informazioni sulla configurazione multipath esistente:
mpathconf
multipath è abilitato
find_multipaths è disabilitato
user_friendly_names è disabilitato
dm_multipath module è caricato
multipathd è in esecuzioneDopo aver aggiunto un nuovo LUN al sistema di archiviazione e presentato all'host, è necessario eseguire la scansione degli HBA collegati all'host.
systemctl reload multipathd
multipath -v2Infine, verifichiamo se tutti i LUN sono stati presentati al sistema di archiviazione per gli host e se ci sono due percorsi per ciascuno di essi.
Controllo del funzionamento di 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 runningCome si può vedere, tutti e tre i dischi virtuali nel sistema di archiviazione sono visibili su due percorsi. Pertanto, tutti i lavori preliminari sono stati completati, e si può passare alla parte principale: la configurazione del cluster oVirt, che sarà trattata nel prossimo articolo.
Fonte: habr.com
