ProHoster > Блог > Administracija > Kreiranje IT infrastrukture otporne na greške. Dio 1 - Priprema za implementaciju oVirt 4.3 klastera
Kreiranje IT infrastrukture otporne na greške. Dio 1 - Priprema za implementaciju oVirt 4.3 klastera
Čitaoci se pozivaju da se upoznaju sa principima izgradnje infrastrukture otporne na greške za malo preduzeće u okviru jednog data centra, o čemu će se detaljno govoriti u kratkom nizu članaka.
Uvod
By data centar (Centar za obradu podataka) može se shvatiti kao:
sopstveni rack u sopstvenoj "server sobi" na teritoriji preduzeća, koji ispunjava minimalne uslove za obezbeđivanje opreme za napajanje i hlađenje, a takođe ima pristup Internetu preko dva nezavisna provajdera;
iznajmljeni stalak sa sopstvenom opremom, koji se nalazi u pravom data centru - tzv. Tier III ili IV kolokacija koja garantuje pouzdano napajanje, hlađenje i pristup Internetu preko greške;
potpuno iznajmljena oprema u Tier III ili IV data centru.
Koju opciju smještaja odabrati - u svakom slučaju, sve je individualno, a obično ovisi o nekoliko glavnih faktora:
zašto je preduzeću uopšte potrebna sopstvena IT infrastruktura;
šta tačno preduzeće želi od IT infrastrukture (pouzdanost, skalabilnost, upravljivost, itd.);
iznos početne investicije u IT infrastrukturu, kao i vrstu troškova za to - kapitalne (što znači kupovinu sopstvene opreme), ili operativne (oprema se obično iznajmljuje);
horizont planiranja samog preduzeća.
Možete mnogo pisati o faktorima koji utiču na odluku preduzeća da kreira i koristi svoju IT infrastrukturu, ali naš cilj je da u praksi pokažemo kako da kreiramo upravo tu infrastrukturu tako da bude i otporna na greške, a da i dalje možete uštedeti - smanjiti troškove nabavke komercijalnog softvera ili ih u potpunosti izbjeći.
Kao što pokazuje duga praksa, ne vrijedi štedjeti na željezu, jer škrtac plaća dvaput, pa čak i mnogo više. Ali opet - dobar hardver, ovo je samo preporuka, a na kraju šta tačno kupiti i za koliko zavisi od mogućnosti preduzeća i "pohlepe" njegovog menadžmenta. Štaviše, riječ "pohlepa" treba shvatiti u dobrom smislu riječi, jer je bolje ulagati u hardver u početnoj fazi, kako kasnije ne biste imali ozbiljnih problema s njegovom daljnjom podrškom i skaliranjem, budući da je u početku neispravno planiranje i prevelike uštede mogu dovesti do većih troškova nego kod pokretanja projekta.
Dakle, početni podaci za projekat:
postoji preduzeće koje je odlučilo da napravi sopstveni web portal i prenese svoje aktivnosti na Internet;
kompanija je odlučila iznajmiti stalak za smještaj svoje opreme u dobar data centar certificiran prema standardu Tier III;
kompanija je odlučila da ne štedi mnogo na hardveru, te je stoga kupila sljedeću opremu sa produženim jamstvom i podrškom:
Spisak opreme
dva fizička Dell PowerEdge R640 servera kako slijedi:
dva Intel Xeon Gold 5120 procesora
512 Gb RAM-a
dva SAS diska u RAID1, za instalaciju OS-a
ugrađena 4-portna 1G mrežna kartica
dvije 2-portne 10G mrežne kartice
jedan 2-portni FC HBA 16G.
Dell MD2f 3820 skladište kontrolera povezano preko FC 16G direktno na Dell hostove;
dva prekidača drugog nivoa - Cisco WS-C2960RX-48FPS-L naslagani;
dva prekidača trećeg nivoa - Cisco WS-C3850-24T-E, kombinovani u stek;
Rack, UPS, PDU, konzolni serveri - obezbjeđuje data centar.
Kao što vidimo, postojeća oprema ima dobre izglede za horizontalno i vertikalno skaliranje, ako se preduzeće može takmičiti sa drugim kompanijama sličnog profila na Internetu, i počne da ostvaruje profit koji se može uložiti u proširenje resursa za dalju konkurenciju i rast profita.
Koju opremu možemo dodati ako preduzeće odluči da poveća performanse našeg računarskog klastera:
imamo veliku rezervu u smislu broja portova na svičevima 2960X, što znači da možemo dodati još hardverskih servera;
kupiti dva FC prekidača za povezivanje sistema skladištenja i dodatnih servera na njih;
postojeći serveri se mogu nadograditi - dodati memoriju, zamijeniti procesore efikasnijim, povezati se na 10G mrežu sa postojećim mrežnim adapterima;
možete dodati dodatne police za diskove u sistem za pohranu sa potrebnom vrstom diskova - SAS, SATA ili SSD, ovisno o planiranom opterećenju;
nakon dodavanja FC prekidača, možete kupiti drugi sistem za pohranu kako biste dodali još više diskovnog kapaciteta, a ako uz njega kupite posebnu opciju Remote Replication, možete konfigurirati replikaciju podataka između sustava za pohranu unutar granica jednog podatkovnog centra i između podatkovnih centara (ali ovo je već izvan okvira članka);
tu su i svičevi trećeg nivoa - Cisco 3850, koji se mogu koristiti kao mrežno jezgro otporno na greške za brzo rutiranje između internih mreža. To će mnogo pomoći u budućnosti, kako interna infrastruktura bude rasla. 3850 također ima 10G portove koji se kasnije mogu koristiti prilikom nadogradnje mrežne opreme na brzinu od 10G.
Budući da sada nema nigdje bez virtuelizacije, sigurno ćemo biti u trendu, pogotovo što je ovo odličan način da smanjite troškove nabavke skupih servera za pojedine infrastrukturne elemente (web servere, baze podataka itd.), koji nisu uvijek optimalni. koristi se u slučaju malog opterećenja, a to je upravo ono što će biti na početku pokretanja projekta.
Osim toga, virtuelizacija ima mnoge druge prednosti koje nam mogu biti vrlo korisne: tolerancija VM grešaka zbog kvara hardverskog servera, migracija uživo između hardverskih čvorova klastera radi njihovog održavanja, ručna ili automatska raspodjela opterećenja između čvorova klastera, itd.
Za hardver koji je kupilo preduzeće, nameštanje visoko dostupnog VMware vSphere klastera se nameće samo po sebi, ali pošto je svaki VMware softver poznat po svojim „konjskim“ cenama, koristićemo apsolutno besplatan softver za upravljanje virtuelizacijom - oVirt, na osnovu koje se stvara poznati, ali već komercijalni proizvod - rhev.
Softver oVirt neophodno je spojiti sve elemente infrastrukture u jednu cjelinu kako bi se mogao povoljno raditi sa visoko dostupnim virtuelnim mašinama - to su baze podataka, web aplikacije, proxy serveri, balanseri, serveri za prikupljanje logova i analitike itd., tj. , od čega se sastoji web portal našeg preduzeća.
Sumirajući ovaj uvod, očekuju nas sljedeći članci koji će u praksi pokazati kako tačno implementirati kompletnu hardversku i softversku infrastrukturu preduzeća:
Lista članaka
Dio 1. Priprema za implementaciju oVirt klastera 4.3.
Dio 2. Instaliranje i konfiguriranje oVirt klastera 4.3.
Dio 3. Postavljanje VyOS klastera, organiziranje eksternog rutiranja otpornog na greške.
Dio 4. Postavljanje Cisco 3850 steka, organizovanje intranet rutiranja.
Dio 1. Priprema za implementaciju oVirt 4.3 klastera
Osnovno podešavanje hosta
Instalacija i konfiguracija OS-a je najlakši korak. Postoji mnogo članaka o tome kako pravilno instalirati i konfigurirati OS, tako da nema smisla pokušavati dati nešto ekskluzivno o tome.
Dakle, imamo dva Dell PowerEdge R640 hosta na kojima treba da instaliramo OS i izvršimo preliminarna podešavanja kako bismo ih koristili kao hipervizore za pokretanje virtuelnih mašina u oVirt 4.3 klasteru.
Budući da planiramo koristiti besplatni nekomercijalni softver oVirt, odabrali smo OS za implementaciju hostova CentOS 7.7, iako je moguće instalirati i druge operativne sisteme na hostove za oVirt:
posebna konstrukcija bazirana na RHEL-u, tzv. oVirt čvor;
OS Oracle Linux ljeto 2019 najavljeno je o održavanju oVirt-a na njemu.
Prije instaliranja OS-a, preporučuje se:
konfigurirajte iDRAC mrežno sučelje na oba hosta;
ažurirajte firmver za BIOS i iDRAC na najnovije verzije;
konfigurišite sistemski profil servera, po mogućnosti u režimu performansi;
konfigurišite RAID sa lokalnih diskova (preporučuje se RAID1) da biste instalirali OS na server.
Zatim instaliramo OS na disk kreiran ranije putem iDRAC-a - proces instalacije je normalan, u njemu nema posebnih trenutaka. Takođe možete pristupiti serverskoj konzoli da biste pokrenuli instalaciju OS-a preko iDRAC-a, iako vas ništa ne sprečava da povežete monitor, tastaturu i miš direktno na server i instalirate OS sa fleš diska.
Nakon instaliranja OS-a, vršimo njegove početne postavke:
systemctl enable network.service
systemctl start network.service
systemctl status network.service
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl status NetworkManager
Za početno podešavanje OS-a, potrebno je da konfigurišete bilo koji mrežni interfejs na serveru tako da možete pristupiti Internetu da ažurirate OS i instalirate potrebne softverske pakete. To se može učiniti i tokom procesa instalacije OS-a i nakon njega.
Sve gore navedene postavke i set softvera su stvar ličnih preferencija, a ovaj set je samo preporuka.
Budući da će naš domaćin igrati ulogu hipervizora, omogućit ćemo željeni profil performansi:
systemctl enable tuned
systemctl start tuned
systemctl status tuned
tuned-adm profile
tuned-adm profile virtual-host
Više o profilu performansi možete pročitati ovdje:Poglavlje 4".
Nakon instaliranja OS-a, prelazimo na sljedeći dio - konfigurisanje mrežnih interfejsa na hostovima i niza Cisco 2960X prekidača.
Konfiguriranje Cisco 2960X sklopa prekidača
U našem projektu će se koristiti sljedeći VLAN brojevi - ili broadcast domeni izolovani jedan od drugog, kako bi se razdvojili različiti tipovi saobraćaja:
VLAN 10 - Internet VLAN 17 – Upravljanje (iDRAC, skladištenje, upravljanje prekidačima) VLAN 32 – VM proizvodna mreža VLAN 33 – interkonekcijska mreža (za vanjske izvođače) VLAN 34 – VM testna mreža VLAN 35 - Mreža programera VM VLAN 40 – monitoring mreža
Prije početka rada, dajemo dijagram na nivou L2, do kojeg bismo na kraju trebali doći:
Za mrežnu interakciju oVirt hostova i virtuelnih mašina međusobno, kao i za upravljanje našim sistemom skladištenja, potrebno je konfigurisati stog Cisco 2960X svičeva.
Dell domaćini imaju ugrađene mrežne kartice sa 4 porta, stoga je preporučljivo organizirati njihovu vezu sa Cisco 2960X koristeći mrežnu vezu otpornu na greške, koristeći grupiranje fizičkih mrežnih portova u logički interfejs i LACP (802.3). ad) protokol:
prva dva porta na hostu su konfigurisana u načinu povezivanja i povezana na 2960X prekidač - ovo logično sučelje će biti konfigurirano most sa adresom za upravljanje hostom, praćenje, komunikaciju sa drugim hostovima u oVirt klasteru, takođe će se koristiti za Live migraciju virtuelnih mašina;
druga dva porta na hostu su takođe konfigurisana u režimu povezivanja i povezana sa 2960X - na ovom logičkom interfejsu koristeći oVirt, mostovi će biti kreirani kasnije (u odgovarajućim VLAN-ovima) na koje će se virtuelne mašine povezati.
oba mrežna porta unutar istog logičkog interfejsa će biti aktivna, tj. saobraćaj na njima može se prenositi istovremeno, u balansnom modu.
mrežne postavke na čvorovima klastera moraju biti potpuno iste, osim za IP adrese.
Osnovno podešavanje steka prekidača 2960X i njegove luke
Prethodno bi naši prekidači trebali biti:
Rack mounted;
povezan sa dva posebna kabla potrebne dužine, na primer, CAB-STK-E-1M;
priključen na napajanje;
povezani na administratorsku radnu stanicu preko konzolnog porta za njihovu početnu konfiguraciju.
Potrebne smjernice za to su dostupne na adresi zvanična stranica proizvođač.
Nakon što završimo gore navedene korake, konfiguriramo prekidače.
Šta svaka naredba znači ne bi trebalo da se dešifruje u okviru ovog članka, ako je potrebno, sve informacije se mogu pronaći samostalno.
Naš cilj je brzo postaviti switch stack i povezati hostove i interfejse za upravljanje skladištem na njega.
1) Povezujemo se s glavnim prekidačem, idemo u privilegirani način rada, zatim idemo u konfiguracijski način i vršimo osnovna podešavanja.
Osnovna konfiguracija prekidača:
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
Sačuvajte konfiguraciju naredbom "wr mem" i ponovo pokrenite stek prekidača naredbom "reload» na glavnom prekidaču 1.
2) Mrežne portove sviča konfigurišemo u režimu pristupa (pristup) u VLAN 17, za povezivanje kontrolnih interfejsa sistema za skladištenje podataka i iDRAC servera.
3) Nakon ponovnog učitavanja steka, provjerite radi li ispravno:
Provjera funkcioniranja steka:
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) Podešavanje SSH pristupa 2960X stogu
Za daljinsko upravljanje stogom preko SSH-a, koristit ćemo IP 172.20.1.10 konfiguriran na SVI-u (virtuelni interfejs za prebacivanje) VLAN17.
Iako je poželjno koristiti namjenski namjenski port na sviču za potrebe upravljanja, ovo je stvar ličnih preferencija i mogućnosti.
Postavljanje SSH pristupa steku prekidača:
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
Postavite lozinku za ulazak u privilegirani način rada:
enable secret *myenablepassword*
service password-encryption
Postavite 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) Postavite logička Etherchannel sučelja i fizičke portove povezane na hostove. Radi lakše konfiguracije, svi dostupni VLAN-ovi će biti dozvoljeni na svim logičkim interfejsima, ali se generalno preporučuje da se konfiguriše samo ono što je potrebno:
Nakon završetka podešavanja na steku 2960H i hostove, ponovo pokrenite mrežu na hostovima i provjerite operativnost logičkog interfejsa.
na domaćinu:
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
na steku prekidača 2960H:
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)
Početna konfiguracija mrežnih sučelja za upravljanje resursima klastera, na hostovima Guest1 и Guest2
Konfiguriranje BOND1 logičkog sučelja za upravljanje na hostovima i njegovih fizičkih sučelja:
Ponovo pokrećemo mrežu na hostovima i provjeravamo njihovu vidljivost jedni drugima.
Ovim je završena konfiguracija Cisco 2960X switch steka, i ako je sve urađeno kako treba, sada imamo mrežnu povezanost svih infrastrukturnih elemenata međusobno na nivou L2.
Podešavanje skladištenja za Dell MD3820f
Pre početka rada na konfigurisanju sistema za skladištenje podataka, on mora već biti povezan na Cisco switch stack 2960H upravljačkim interfejsima, kao i na hostove Guest1 и Guest2 preko FC.
Opšta šema kako sistem za skladištenje podataka treba da bude povezan sa stekom prekidača data je u prethodnom poglavlju.
Šema za povezivanje pohrane putem FC-a na hostove bi trebala izgledati ovako:
Tokom konekcije, potrebno je zapisati WWPN adrese za FC HBA hostove povezane na FC portove na sistemu za skladištenje - to će biti neophodno za naknadnu konfiguraciju vezivanja hosta za LUN-ove na sistemu za skladištenje.
Preuzmite i instalirajte Dell MD3820f uslužni program za upravljanje skladištem na radnoj stanici administratora - PowerVault Modular Disk Storage Manager (MDSM).
Povezujemo se sa njom preko njenih podrazumevanih IP adresa, a zatim konfigurišemo naše adrese sa VLAN17, za upravljanje kontrolerima putem TCP/IP:
Skladištenje1:
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
Nakon podešavanja adresa, idemo na sučelje za upravljanje pohranom i postavljamo lozinku, postavljamo vrijeme, ažuriramo firmver za kontrolere i diskove, ako je potrebno, itd.
Kako se to radi opisano je u administrativni vodič skladištenje.
Nakon što izvršimo gore navedene postavke, potrebno je samo nekoliko stvari:
Konfigurirajte ID-ove FC porta domaćina - Identifikatori porta domaćina.
Kreirajte grupu domaćina − domaćin grupa i tome dodajte naša dva Dell hosta.
Kreirajte grupu diskova i virtuelne diskove (ili LUN-ove) u njoj, koji će biti predstavljeni domaćinima.
Konfigurirajte prezentaciju virtualnih diskova (ili LUN-ova) za hostove.
Dodavanje novih hostova i vezivanje identifikatora host FC portova na njih se vrši preko menija - Host Mappings -> Definiši -> Domaćini…
WWPN adrese FC HBA hostova mogu se naći, na primjer, u iDRAC serveru.
Kao rezultat, trebali bismo dobiti nešto poput ove slike:
Dodavanje nove grupe domaćina i vezivanje hostova na nju se vrši preko menija - Host Mappings -> Definiši -> Grupa domaćina…
Za hostove odaberite tip OS-a - Linux (DM-MP).
Nakon kreiranja grupe domaćina, preko kartice Usluge skladištenja i kopiranja, kreirajte grupu diskova - disk grupa, s tipom koji ovisi o zahtjevima za toleranciju grešaka, na primjer, RAID10, a u njemu virtuelni diskovi potrebne veličine:
I konačno, završna faza je predstavljanje virtuelnih diskova (ili LUN-ova) za hostove.
Da biste to učinili, kroz meni - Host Mappings -> Mapiranje mjeseca -> Dodati… mi vezujemo virtuelne diskove za hostove tako što im dodeljujemo brojeve.
Sve bi trebalo izgledati ovako:
Ovdje završavamo s postavkom pohrane, i ako je sve urađeno kako treba, onda bi domaćini trebali vidjeti LUN-ove koji su im predstavljeni kroz svoje FC HBA.
Natjerajmo sistem da ažurira informacije o povezanim diskovima:
ls -la /sys/class/scsi_host/
echo "- - -" > /sys/class/scsi_host/host[0-9]/scan
Pogledajmo koji su uređaji vidljivi na našim serverima:
Na hostovima također možete dodatno konfigurirati multipath, a iako to može i sam prilikom instalacije oVirt-a, bolje je prethodno provjeriti ispravnost MP-a.
Kao što vidite, sva tri virtuelna diska na sistemu za skladištenje su vidljiva na dva načina. Dakle, svi pripremni radovi su završeni, što znači da možete preći na glavni dio - postavljanje oVirt klastera, o čemu će biti riječi u sljedećem članku.