Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Ovaj članak je nastavak prethodnog - “Kreiranje IT infrastrukture otporne na greške. Dio 1 - Priprema za implementaciju oVirt 4.3 klastera".

Pokrivaće proces osnovne instalacije i konfiguracije oVirt 4.3 klastera za hostovanje visoko dostupnih virtuelnih mašina, uzimajući u obzir činjenicu da su svi preliminarni koraci za pripremu infrastrukture već prethodno završeni.

Uvod

Glavna svrha članka je pružiti upute korak po korak poput „sljedeći -> Da -> završiti"kako prikazati neke funkcije prilikom instalacije i konfiguracije. Proces za implementaciju vašeg klastera možda se neće uvijek poklapati s onim opisanim u njemu, zbog karakteristika infrastrukture i okruženja, ali opći principi će biti isti.

Sa subjektivne tačke gledišta, oVirt 4.3 njegova funkcionalnost je slična VMware vSphere verziji 5.x, ali naravno sa vlastitom konfiguracijom i radnim karakteristikama.

Za one koji su zainteresovani, sve razlike između RHEV (aka oVirt) i VMware vSphere mogu se naći na internetu, npr. ovdje, ali ću i dalje povremeno primijetiti neke njihove razlike ili sličnosti kako članak bude napredovao.

Odvojeno bih želeo da malo uporedim rad sa mrežama za virtuelne mašine. oVirt implementira sličan princip upravljanja mrežom za virtuelne mašine (u daljem tekstu VM), kao u VMware vSphere:

  • koristeći standardni Linux most (u VMware - Standardni vSwitch), radi na virtuelizacijskim hostovima;
  • koristeći Open vSwitch (OVS) (u VMware-u - Distribuirani vSwitch) je distribuirani virtuelni prekidač koji se sastoji od dvije glavne komponente: centralnog OVN servera i OVN kontrolera na upravljanim hostovima.

Treba napomenuti da će zbog lakoće implementacije, članak opisati postavljanje mreža u oVirt-u za VM koristeći standardni Linux bridge, što je standardni izbor kada se koristi KVM hipervizor.

S tim u vezi, postoji nekoliko osnovnih pravila za rad s mrežom u klasteru, koja je najbolje da se ne krše:

  • Sve mrežne postavke na hostovima prije dodavanja u oVirt moraju biti identične, osim IP adresa.
  • Nakon što je host uzet pod kontrolu oVirt-a, ne preporučuje se ništa ručno mijenjati u mrežnim postavkama bez potpunog povjerenja u vaše radnje, jer će ih oVirt agent jednostavno vratiti na prethodne nakon ponovnog pokretanja hosta ili agent.
  • Dodavanje nove mreže za VM, kao i rad sa njom, trebalo bi da se uradi samo sa konzole za upravljanje oVirt.

Drugi vajnoe zamechanie — za vrlo kritično okruženje (veoma osjetljivo na novčane gubitke), ipak bi se preporučilo korištenje plaćene podrške i korištenja Red Hat virtuelizacija 4.3. Tokom rada oVirt klastera mogu se pojaviti neki problemi za koje je preporučljivo što prije dobiti kvalificiranu pomoć, umjesto da ih sami rješavate.

I na kraju preporučuje se Prije postavljanja oVirt klastera, upoznajte se s njim službena dokumentacija, kako bi bili svjesni barem osnovnih pojmova i definicija, inače će biti malo teško pročitati ostatak članka.

Osnovni za razumijevanje članka i principa rada oVirt klastera su ovi dokumenti sa uputstvima:

Volumen tamo nije veliki, za sat-dva možete sasvim savladati osnovne principe, ali za one koji vole detalje preporučuje se čitanje Dokumentacija proizvoda za Red Hat virtuelizaciju 4.3 — RHEV i oVirt su u suštini ista stvar.

Dakle, ako su sva osnovna podešavanja na hostovima, prekidačima i sistemima za skladištenje završena, prelazimo direktno na implementaciju oVirt-a.

Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Radi lakše orijentacije, navest ću glavne dijelove u ovom članku, koji se moraju popuniti jedan po jedan:

  1. Instaliranje servera za upravljanje oVirt
  2. Kreiranje novog data centra
  3. Kreiranje novog klastera
  4. Instaliranje dodatnih hostova u Self-Hosted okruženju
  5. Kreiranje prostora za pohranu ili Storage Domains
  6. Kreiranje i konfigurisanje mreža za virtuelne mašine
  7. Kreiranje instalacijske slike za implementaciju virtuelne mašine
  8. Kreirajte virtuelnu mašinu

Instaliranje servera za upravljanje oVirt

oVirt server za upravljanje je najvažniji element u oVirt infrastrukturi, u obliku virtuelne mašine, hosta ili virtuelnog uređaja koji upravlja celokupnom oVirt infrastrukturom.

Njegovi bliski analozi iz svijeta virtuelizacije su:

  • VMware vSphere - vCenter Server
  • Microsoft Hyper-V - System Center Virtual Machine Manager (VMM).

Za instaliranje oVirt servera za upravljanje imamo dvije opcije:

Opcija 1
Postavljanje servera u obliku specijalizovanog VM-a ili hosta.

Ova opcija radi dosta dobro, ali pod uslovom da takav VM radi nezavisno od klastera, tj. ne radi ni na jednom hostu klastera kao obična virtuelna mašina koja pokreće KVM.

Zašto se takav VM ne može postaviti na hostove klastera?

Na samom početku procesa postavljanja oVirt servera za upravljanje imamo dilemu – trebamo instalirati upravljački VM, ali zapravo još nema samog klastera, pa prema tome šta možemo smisliti u hodu? Tako je - instalirajte KVM na budući čvor klastera, a zatim kreirajte virtuelnu mašinu na njoj, na primjer, sa CentOS OS-om i u njemu implementirajte oVirt engine. To se obično može učiniti iz razloga potpune kontrole nad takvim VM-om, ali ovo je pogrešna namjera, jer će u ovom slučaju u budućnosti postojati 100% problema s takvim kontrolnim VM-om:

  • ne može se migrirati u oVirt konzoli između hostova (čvorova) klastera;
  • prilikom migracije koristeći KVM preko virsh migrate, ovaj VM neće biti dostupan za upravljanje sa oVirt konzole.
  • hostovi klastera se ne mogu prikazati u Režim održavanja (režim održavanja), ako migrirate ovu VM sa hosta na host koristeći virsh migrate.

Dakle, uradite sve po pravilima - koristite ili poseban host za server za upravljanje oVirt, ili nezavisni VM koji radi na njemu, ili još bolje, uradite kako je napisano u drugoj opciji.

Opcija 2
Instaliranje oVirt Engine Appliance na klaster hostu kojim upravlja.

Upravo će se ova opcija dalje smatrati ispravnijom i prikladnijom u našem slučaju.
Zahtjevi za takav VM su opisani u nastavku samo da dodam da je preporučljivo imati najmanje dva hosta u infrastrukturi na kojoj se može pokrenuti kontrolni VM kako bi bio otporan na greške. Ovdje bih dodao da, kao što sam već napisao u komentarima u prethodnom članku, nikada nisam uspio dobiti splitbrain na oVirt klasteru od dva hosta, sa mogućnošću pokretanja VM-a sa hostom na njima.

Instaliranje oVirt Engine Appliancea na prvom hostu klastera

Link do službene dokumentacije - oVirt Vodič za samo-hostovani motor, poglavlje "Postavljanje samo-hostovanog motora pomoću komandne linije»

Dokument specificira preduvjete koji moraju biti ispunjeni prije postavljanja VM-a sa hostiranim motorom, a također detaljno opisuje sam proces instalacije, tako da nema smisla ponavljati ga doslovno, pa ćemo se fokusirati na neke važne detalje.

  • Prije nego što započnete sve radnje, obavezno omogućite podršku za virtuelizaciju u BIOS postavkama na hostu.
  • Instalirajte paket za instalaciju hostovanog motora na hostu:

yum -y install http://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm 
yum -y install epel-release
yum install screen ovirt-hosted-engine-setup

  • Započinjemo proceduru za implementaciju oVirt Hosted Engine-a na ekranu na hostu (možete izaći preko Ctrl-A + D, zatvoriti preko Ctrl-D):

screen
hosted-engine --deploy

Ako želite, možete pokrenuti instalaciju sa unaprijed pripremljenom datotekom odgovora:

hosted-engine --deploy --config-append=/var/lib/ovirt-hosted-engine-setup/answers/answers-ohe.conf

  • Prilikom postavljanja hosted-engine-a navodimo sve potrebne parametre:

- имя кластера
- количество vCPU и vRAM (рекомендуется 4 vCPU и 16 Гб)
- пароли
- тип хранилища для hosted engine ВМ – в нашем случае FC
- номер LUN для установки hosted engine
- где будет находиться база данных для hosted engine – рекомендую для простоты выбрать Local (это БД PostgreSQL работающая внутри этой ВМ)
и др. параметры. 

  • Da bismo instalirali visokodostupnu VM sa hostovanim motorom, prethodno smo kreirali poseban LUN na sistemu za skladištenje, veličine 4 i 150 GB, koji je potom predstavljen domaćinima klastera - vidi prethodni članak.

Prethodno smo također provjerili njegovu vidljivost na hostovima:

multipath -ll
…
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

  • Sam proces implementacije hostovanog motora nije komplikovan na kraju treba da dobijemo nešto poput ovoga:

[ INFO  ] Generating answer file '/var/lib/ovirt-hosted-engine-setup/answers/answers-20191129131846.conf'
[ INFO  ] Generating answer file '/etc/ovirt-hosted-engine/answers.conf'
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination
[ INFO  ] Hosted Engine successfully deployed

Provjeravamo prisutnost oVirt servisa na hostu:

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Ako je sve urađeno kako treba, onda nakon završetka instalacije koristite web pretraživač da idite na https://ovirt_hostname/ovirt-engine sa administratorskog računara i kliknite na [Administrativni portal].

Snimak ekrana "Administrativnog portala"

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Unošenjem login i lozinke (podešene tokom procesa instalacije) u prozor kao na snimku ekrana dolazimo do kontrolne table Open Virtualization Manager, u kojoj možete izvršiti sve radnje sa virtuelnom infrastrukturom:

  1. dodati data centar
  2. dodati i konfigurirati klaster
  3. dodati i upravljati hostovima
  4. dodajte područja za pohranu ili Storage Domains za diskove virtuelnih mašina
  5. dodati i konfigurirati mreže za virtuelne mašine
  6. dodajte i upravljajte virtuelnim mašinama, instalacijskim slikama, VM šablonima

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

O svim ovim radnjama će se dalje raspravljati, neke u velikim ćelijama, druge detaljnije i s nijansama.
Ali prvo bih preporučio da pročitate ovaj dodatak, koji će vjerovatno mnogima biti od koristi.

Dodatak

1) U principu, ako postoji takva potreba, onda vas ništa ne sprječava da unaprijed instalirate KVM hipervizor na čvorove klastera koristeći pakete libvirt и qemu-kvm (ili qemu-kvm-ev) željene verzije, iako pri postavljanju čvora klastera oVirt to može učiniti sam.

Ali ako libvirt и qemu-kvm Ako niste instalirali najnoviju verziju, možete dobiti sljedeću grešku prilikom postavljanja hostovanog motora:

error: unsupported configuration: unknown CPU feature: md-clear

One. mora imati ažurirana verzija libvirt sa zaštitom od MDS, koji podržava ovu politiku:

<feature policy='require' name='md-clear'/>

Instalirajte libvirt v.4.5.0-10.el7_6.12, sa podrškom za md-clear:

yum-config-manager --disable mirror.centos.org_centos-7_7_virt_x86_64_libvirt-latest_

yum install centos-release-qemu-ev
yum update
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer libguestfs libguestfs-tools dejavu-lgc-sans-fonts virt-top libvirt libvirt-python libvirt-client

systemctl enable libvirtd
systemctl restart libvirtd && systemctl status libvirtd

Provjerite podršku za 'md-clear':

virsh domcapabilities kvm | grep require
      <feature policy='require' name='ss'/>
      <feature policy='require' name='hypervisor'/>
      <feature policy='require' name='tsc_adjust'/>
      <feature policy='require' name='clflushopt'/>
      <feature policy='require' name='pku'/>
      <feature policy='require' name='md-clear'/>
      <feature policy='require' name='stibp'/>
      <feature policy='require' name='ssbd'/>
      <feature policy='require' name='invtsc'/>

Nakon toga, možete nastaviti s instaliranjem hostovanog motora.

2) U oVirt 4.3, prisustvo i upotreba zaštitnog zida firewalld je obavezan uslov.

Ako tokom implementacije VM-a za hosted-engine dobijemo sljedeću grešku:

[ ERROR ] fatal: [localhost]: FAILED! => {"changed": false, "msg": "firewalld is required to be enabled and active in order to correctly deploy hosted-engine. Please check, fix accordingly and re-deploy.n"}
[ ERROR ] Failed to execute stage 'Closing up': Failed executing ansible-playbook
[https://bugzilla.redhat.com/show_bug.cgi?id=1608467

Zatim morate isključiti drugi zaštitni zid (ako se koristi) i instalirati i pokrenuti firewalld:

yum install firewalld
systemctl enable firewalld
systemctl start firewalld

firewall-cmd --state
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
firewall-cmd --get-zones

Kasnije, prilikom instaliranja agenta ovirt na novi host za klaster, on će konfigurirati potrebne portove u firewalld automatski.

3) Ponovno pokretanje hosta na kojem radi VM sa hostiranim motorom.

Normalno, link 1 и link 2 na upravljačke dokumente.

Svo upravljanje hostovanom mašinom VM vrši se SAMO pomoću naredbe hosted-engine na hostu gdje radi, oko Virsh moramo zaboraviti, kao i činjenicu da se na ovaj VM možete povezati preko SSH-a i pokrenuti naredbu “ugasiti".

Procedura za stavljanje VM-a u način održavanja:

hosted-engine --set-maintenance --mode=global

hosted-engine --vm-status
!! Cluster is in GLOBAL MAINTENANCE mode !!
--== Host host1.test.local (id: 1) status ==--
conf_on_shared_storage             : True
Status up-to-date                  : True
Hostname                           : host1.test.local
Host ID                            : 1
Engine status                      : {"health": "good", "vm": "up", "detail": "Up"}
Score                              : 3400
stopped                            : False
Local maintenance                  : False
crc32                              : dee1a774
local_conf_timestamp               : 1821
Host timestamp                     : 1821
Extra metadata (valid at timestamp):
        metadata_parse_version=1
        metadata_feature_version=1
        timestamp=1821 (Sat Nov 29 14:25:19 2019)
        host-id=1
        score=3400
        vm_conf_refresh_time=1821 (Sat Nov 29 14:25:19 2019)
        conf_on_shared_storage=True
        maintenance=False
        state=GlobalMaintenance
        stopped=False

hosted-engine --vm-shutdown

Ponovo pokrećemo host sa hostovanim engine agentom i radimo ono što nam je potrebno.

Nakon ponovnog pokretanja, provjerite status VM-a sa hostovanim motorom:

hosted-engine --vm-status

Ako se naš VM sa hosted-engine-om ne pokrene i ako vidimo slične greške u servisnom dnevniku:

Greška u servisnom dnevniku:

journalctl -u ovirt-ha-agent
...
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.hosted_engine.HostedEngine ERROR Failed to start necessary monitors
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.agent.Agent ERROR Traceback (most recent call last):#012  File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/agent.py", line 131, in _run_agent#012    return action(he)#012  File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/agent.py", line 55, in action_proper#012    return he.start_monitoring()#012  File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/hosted_engine.py", line 413, in start_monitoring#012    self._initialize_broker()#012  File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/hosted_engine.py", line 537, in _initialize_broker#012    m.get('options', {}))#012  File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/lib/brokerlink.py", line 86, in start_monitor#012    ).format(t=type, o=options, e=e)#012RequestError: brokerlink - failed to start monitor via ovirt-ha-broker: [Errno 2] No such file or directory, [monitor: 'ping', options: {'addr': '172.20.32.32'}]
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.agent.Agent ERROR Trying to restart agent

Zatim povezujemo skladište i ponovo pokrećemo agenta:

hosted-engine --connect-storage
systemctl restart ovirt-ha-agent
systemctl status ovirt-ha-agent

hosted-engine --vm-start
hosted-engine --vm-status

Nakon pokretanja VM-a s hosted-engine-om, izvlačimo ga iz načina održavanja:

Procedura za uklanjanje VM-a iz načina održavanja:

hosted-engine --check-liveliness
hosted-engine --set-maintenance --mode=none
hosted-engine --vm-status

--== Host host1.test.local (id: 1) status ==--

conf_on_shared_storage             : True
Status up-to-date                  : True
Hostname                           : host1.test.local
Host ID                            : 1
Engine status                      : {"health": "good", "vm": "up", "detail": "Up"}
Score                              : 3400
stopped                            : False
Local maintenance                  : False
crc32                              : 6d1eb25f
local_conf_timestamp               : 6222296
Host timestamp                     : 6222296
Extra metadata (valid at timestamp):
        metadata_parse_version=1
        metadata_feature_version=1
        timestamp=6222296 (Fri Jan 17 11:40:43 2020)
        host-id=1
        score=3400
        vm_conf_refresh_time=6222296 (Fri Jan 17 11:40:43 2020)
        conf_on_shared_storage=True
        maintenance=False
        state=EngineUp
        stopped=False

4) Uklanjanje hostovanog motora i svega povezanog s njim.

Ponekad je potrebno pravilno ukloniti prethodno instalirani hostovani motor - link dokumentu sa uputstvima.

Samo pokrenite naredbu na hostu:

/usr/sbin/ovirt-hosted-engine-cleanup

Zatim uklanjamo nepotrebne pakete, prije toga napravimo sigurnosnu kopiju nekih konfiguracija, ako je potrebno:

yum autoremove ovirt* qemu* virt* libvirt* libguestfs 

Kreiranje novog data centra

Referentna dokumentacija - Vodič za administraciju oVirt. Poglavlje 4: Data centri

Prvo da definišemo šta je to data centar (citiram iz pomoći) je logički entitet koji definira skup resursa koji se koriste u određenom okruženju.

Data centar je vrsta kontejnera koji se sastoji od:

  • logičke resurse u obliku klastera i hostova
  • klaster mrežni resursi u obliku logičkih mreža i fizičkih adaptera na hostovima,
  • resursi za skladištenje (za VM diskove, šablone, slike) u obliku skladišnih područja (Storage Domains).

Data centar može uključivati ​​više klastera koji se sastoje od više hostova sa virtuelnim mašinama koje se na njima pokreću, a može imati i više skladišnih područja povezanih s njim.
Može postojati nekoliko centara podataka koji rade nezavisno jedan od drugog. Ovirt ima podjelu ovlasti prema ulozi, a dozvole možete konfigurirati pojedinačno, kako na razini podatkovnog centra tako i na njegovim pojedinačnim logičkim elementima.

Data centrom, ili podatkovnim centrima ako ih ima nekoliko, upravlja se s jedne administrativne konzole ili portala.

Za kreiranje podatkovnog centra idite na administrativni portal i kreirajte novi podatkovni centar:
Izračunajte >> Data centri >> Novi

Pošto koristimo zajedničku pohranu na sistemu za pohranu, tip pohrane bi trebao biti dijeljen:

Snimak ekrana čarobnjaka za kreiranje centra podataka

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Kada instalirate virtuelnu mašinu sa hosted-engine-om, data centar se kreira prema zadanim postavkama - Datacenter1, a zatim, ako je potrebno, možete promijeniti njegovu vrstu pohrane u drugu.

Kreiranje data centra je jednostavan zadatak, bez ikakvih lukavih nijansi, a sve dodatne radnje s njim opisane su u dokumentaciji. Jedino što ću napomenuti je da pojedinačni hostovi koji imaju samo lokalnu pohranu (disk) za VM neće moći ući u podatkovni centar sa Storage Type - Shared (ne mogu se tamo dodati), a za njih morate kreirati poseban data centar - tj. Svaki pojedinačni host s lokalnom pohranom treba svoj zasebni podatkovni centar.

Kreiranje novog klastera

Link na dokumentaciju - Vodič za administraciju oVirt. Poglavlje 5: Klasteri

Bez nepotrebnih detalja, cluster – ovo je logično grupisanje hostova koji imaju zajedničko skladište (u obliku zajedničkih diskova na sistemu za skladištenje, kao u našem slučaju). Takođe je poželjno da hostovi u klasteru budu hardverski identični i da imaju isti tip procesora (Intel ili AMD). Najbolje je, naravno, da serveri u klasteru budu potpuno identični.

Klaster je dio data centra (sa specifičnom vrstom pohrane - lokalne ili Zajednička), a svi hostovi moraju pripadati nekoj vrsti klastera, ovisno o tome imaju li dijeljenu pohranu ili ne.

Kada instalirate virtuelnu mašinu sa hostovanim motorom na host, data centar se kreira prema zadanim postavkama - Datacenter1, zajedno sa klasterom – cluster1, a u budućnosti možete konfigurirati njegove parametre, omogućiti dodatne opcije, dodati mu hostove itd.

Kao i obično, za detalje o svim postavkama klastera preporučljivo je pogledati zvaničnu dokumentaciju. Od nekih karakteristika postavljanja klastera, samo ću dodati da je prilikom kreiranja dovoljno konfigurirati samo osnovne parametre na kartici Opšti.

Naznačit ću najvažnije parametre:

  • Tip procesora — bira se na osnovu toga koji su procesori instalirani na hostovima klastera, kog su proizvođača i koji je procesor na hostovima najstariji, tako da se, u zavisnosti od toga, koriste sve dostupne procesorske instrukcije u klasteru.
  • Tip prekidača – u našem klasteru koristimo samo Linux bridge, zato ga i biramo.
  • Vrsta zaštitnog zida – ovde je sve jasno, ovo je firewalld, koji mora biti omogućen i konfigurisan na hostovima.

Snimak ekrana sa parametrima klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Instaliranje dodatnih hostova u Self-Hosted okruženju

link za dokumentaciju.

Dodatni hostovi za Self-Hosted okruženje se dodaju na isti način kao i običan host, uz dodatni korak implementacije VM-a sa hostovanim motorom - Odaberite radnju implementacije hostovanog motora >> Razviti. Budući da dodatni host također mora imati LUN za VM sa hostiranim motorom, to znači da se ovaj host može, ako je potrebno, koristiti za hostiranje VM-a sa hostiranim motorom na njemu.
Za potrebe tolerancije grešaka, toplo se preporučuje da postoje najmanje dva hosta na kojima se može postaviti hostirani motor VM.

Na dodatnom hostu onemogućite iptables (ako je omogućen), omogućite firewalld

systemctl stop iptables
systemctl disable iptables

systemctl enable firewalld
systemctl start firewalld

Instalirajte potrebnu KVM verziju (ako je potrebno):

yum-config-manager --disable mirror.centos.org_centos-7_7_virt_x86_64_libvirt-latest_

yum install centos-release-qemu-ev
yum update
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer libguestfs libguestfs-tools dejavu-lgc-sans-fonts virt-top libvirt libvirt-python libvirt-client

systemctl enable libvirtd
systemctl restart libvirtd && systemctl status libvirtd

virsh domcapabilities kvm | grep md-clear

Instalirajte potrebna spremišta i hostovani instalater motora:

yum -y install http://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
yum -y install epel-release
yum update
yum install screen ovirt-hosted-engine-setup

Zatim idite na konzolu Otvorite Virtualization Manager, dodajte novi host i radite sve korak po korak, kako je napisano dokumentaciju.

Kao rezultat toga, nakon dodavanja dodatnog hosta, trebali bismo dobiti nešto poput slike u administrativnoj konzoli, kao na snimku ekrana.

Snimak ekrana administrativnog portala - hostovi

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Domaćin na kojem je trenutno aktivan VM sa hostiranim motorom ima zlatnu krunu i natpis "Pokretanje Hosted Engine VM", domaćin na kojem se ova VM može pokrenuti ako je potrebno - natpis "Može pokrenuti Hosted Engine VM".

U slučaju kvara domaćina na kojem "Pokretanje Hosted Engine VM", automatski će se ponovo pokrenuti na drugom hostu. Ovaj VM se također može migrirati sa aktivnog hosta na host u pripravnosti radi njegovog održavanja.

Postavljanje upravljanja napajanjem / ograđivanje na oVirt hostovima

Linkovi za dokumentaciju:

Iako se može činiti da ste završili sa dodavanjem i konfigurisanjem hosta, to nije sasvim tačno.
Za normalan rad hostova i za identifikaciju/rješavanje kvarova sa bilo kojim od njih, potrebna su podešavanja za upravljanje napajanjem/ograđivanje.

mačevanje, ili ograđivanje, je proces privremenog isključivanja neispravnog ili neuspjelog hosta iz klastera, tokom kojeg se ili oVirt servisi na njemu ili sam host ponovo pokreću.

Svi detalji o definicijama i parametrima upravljanja napajanjem/ograđivanjem su dati, kao i obično, u dokumentaciji, dat ću samo primjer kako konfigurirati ovaj važan parametar, primijenjen na servere Dell R640 sa iDRAC 9.

  1. Idite na administrativni portal, kliknite Izračunajte >> Hosts odaberite domaćina.
  2. Kliknite Uredi.
  3. Kliknite na karticu Power Management.
  4. Označite polje pored opcije Omogućite upravljanje napajanjem.
  5. Označite polje pored opcije Kdump integracijakako bi se spriječilo da host pređe u režim ograđivanja dok snima ispis pada jezgra.

Napomena.

Nakon omogućavanja Kdump integracije na već pokrenutom hostu, mora se ponovo instalirati prema proceduri u oVirt Administration Guide -> Poglavlje 7: Domaćini -> Ponovno instaliranje hostova.

  1. Opciono, možete označiti polje Onemogućite kontrolu politike upravljanja napajanjem, ako ne želimo da upravljanje napajanjem hosta bude kontrolirano Politikom planiranja klastera.
  2. Kliknite na dugme (+) za dodavanje novog uređaja za upravljanje napajanjem, otvorit će se prozor za uređivanje svojstava agenta.
    Za iDRAC9 popunite polja:
    • Adresa – iDRAC9 adresa
    • Korisnicko ime lozinka – prijavu i lozinku za prijavu na iDRAC9, respektivno
    • tip —drac5
    • oznaka Secure
    • dodajte sljedeće opcije: cmd_prompt=>,login_timeout=30

Snimak ekrana sa parametrima "Upravljanje napajanjem" u svojstvima hosta

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Kreiranje prostora za pohranu ili Storage Domains

Link do dokumentacije - Vodič za administraciju oVirt, Poglavlje 8: Skladištenje.

Storage Domain, ili prostor za pohranu, je centralizirana lokacija za pohranjivanje diskova virtualne mašine, instalacijskih slika, predložaka i snimaka.

Područja za skladištenje mogu se povezati sa data centrom koristeći različite protokole, klaster i mrežne sisteme datoteka.

oVirt ima tri tipa skladišnog prostora:

  • Data Domain – za skladištenje svih podataka povezanih sa virtuelnim mašinama (diskovi, šabloni). Data Domain se ne može dijeliti između različitih podatkovnih centara.
  • ISO domena (zastarjela vrsta prostora za pohranu) – za pohranjivanje slika instalacije OS-a. ISO domen se može dijeliti između različitih centara podataka.
  • Izvoz domena (zastarjeli tip prostora za pohranu) – za privremeno pohranjivanje slika koje se premeštaju između centara podataka.

U našem konkretnom slučaju, skladište sa tipom Data Domain koristi Fibre Channel Protocol (FCP) za povezivanje na LUN-ove na sistemu za skladištenje.

Sa stanovišta oVirt-a, kada se koriste sistemi za skladištenje podataka (FC ili iSCSI), svaki virtuelni disk, snimak ili šablon je logički disk.
Blok uređaji se sklapaju u jednu jedinicu (na hostovima klastera) koristeći Volume Group, a zatim dijele pomoću LVM-a na logičke volumene, koji se koriste kao virtualni diskovi za VM.

Sve ove grupe i mnogi LVM volumeni mogu se vidjeti na hostu klastera pomoću naredbi itd и lvs. Naravno, sve radnje sa takvim diskovima treba da se rade samo sa oVirt konzole, osim u posebnim slučajevima.

Virtuelni diskovi za VM mogu biti dva tipa - QCOW2 ili RAW. Diskovi mogu biti "tanak" ili "debelo". Snimci se uvijek kreiraju kao "tanak".

Način upravljanja Storage domenima, ili prostorima za skladištenje kojima se pristupa preko FC-a, sasvim je logičan - za svaki virtuelni disk VM postoji poseban logički volumen na koji može pisati samo jedan host. Za FC konekcije, oVirt koristi nešto poput klasterizovanog LVM-a.

Virtuelne mašine koje se nalaze na istom prostoru za skladištenje mogu se migrirati između hostova koji pripadaju istom klasteru.

Kao što možemo vidjeti iz opisa, klaster u oVirt-u, kao klaster u VMware vSphere ili Hyper-V, u suštini znači istu stvar - to je logičko grupisanje hostova, po mogućnosti identičnog sastava hardvera, i koji imaju zajedničko skladište za virtuelne mašinski diskovi.

Prijeđimo direktno na kreiranje prostora za pohranu podataka (VM diskova), jer bez njega podatkovni centar neće biti inicijaliziran.
Dozvolite mi da vas podsjetim da svi LUN-ovi predstavljeni hostovima klastera na sistemu za skladištenje moraju biti vidljivi na njima pomoću naredbe “višestruki -ll".

Prema dokumentaciju, idite na portal idite na skladištenje >> domena -> Nova domena i slijedite upute iz odjeljka "Dodavanje FCP memorije".

Nakon pokretanja čarobnjaka, popunite potrebna polja:

  • Ime — postavite naziv klastera
  • Funkcija domene —Podaci
  • Tip skladištenja — Fiber Channel
  • Host za korištenje — odaberite host na kojem je LUN koji nam je potreban dostupan

Na listi LUN-ova označite onaj koji nam je potreban, kliknite dodati a onda u redu. Ako je potrebno, možete podesiti dodatne parametre skladišnog prostora klikom na Napredni parametri.

Snimak ekrana čarobnjaka za dodavanje “Domena pohrane”

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Na osnovu rezultata čarobnjaka, trebali bismo dobiti novo područje za skladištenje, a naš podatkovni centar bi trebao preći u status UP, ili inicijalizirano:

Snimke ekrana podatkovnog centra i skladišnih područja u njemu:

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Kreiranje i konfigurisanje mreža za virtuelne mašine

Link do dokumentacije - Vodič za administraciju oVirt, Poglavlje 6: Logičke mreže

Mreže ili mreže služe za grupisanje logičkih mreža koje se koriste u oVirt virtuelnoj infrastrukturi.

Za interakciju između mrežnog adaptera na virtuelnoj mašini i fizičkog adaptera na hostu, koriste se logička sučelja kao što je Linux bridge.

Za grupisanje i podjelu prometa između mreža, VLAN-ovi su konfigurisani na prekidačima.

Prilikom kreiranja logičke mreže za virtuelne mašine u oVirt-u, mora joj se dodijeliti identifikator koji odgovara VLAN broju na prekidaču kako bi VM-ovi mogli međusobno komunicirati, čak i ako rade na različitim čvorovima klastera.

Trebalo je izvršiti preliminarna podešavanja mrežnih adaptera na hostovima za povezivanje virtuelnih mašina prethodni članak – logički interfejs konfigurisan bondxnumx, tada sve mrežne postavke treba izvršiti samo preko oVirt administrativnog portala.

Nakon kreiranja VM-a sa hosted-engine-om, pored automatskog kreiranja data centra i klastera, automatski je kreirana i logička mreža za upravljanje našim klasterom - ovritmgmt, na koji je ovaj VM bio povezan.

Ako je potrebno, možete pogledati logičke mrežne postavke ovritmgmt i prilagodite ih, ali morate paziti da ne izgubite kontrolu nad oVirt infrastrukturom.

Logičke mrežne postavke ovritmgmt

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Da kreirate novu logičku mrežu za obične VM, na administrativnom portalu idite na mreža >> mreže >> Novi, i na kartici Opšti dodajte mrežu sa željenim VLAN ID-om, a također potvrdite okvir pored “VM mreža", to znači da se može koristiti za dodjelu VM-u.

Snimak ekrana nove VLAN32 logičke mreže

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Na kartici jato, pripajamo ovu mrežu našem klasteru cluster1.

Nakon ovoga idemo na Izračunajte >> Hosts, idite redom na svaki host, na karticu Mrežni interfejsi, i pokrenite čarobnjaka Postavite host mreže, za vezanje za hostove nove logičke mreže.

Snimak ekrana čarobnjaka „Podešavanje host mreža“.

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

OVirt agent će automatski izvršiti sva potrebna mrežna podešavanja na hostu - kreirati VLAN i BRIDGE.

Primjeri konfiguracijskih datoteka za nove mreže na hostu:

cat ifcfg-bond1
# Generated by VDSM version 4.30.17.1
DEVICE=bond1
BONDING_OPTS='mode=1 miimon=100'
MACADDR=00:50:56:82:57:52
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=no

cat ifcfg-bond1.432
# Generated by VDSM version 4.30.17.1
DEVICE=bond1.432
VLAN=yes
BRIDGE=ovirtvm-vlan432
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=no

cat ifcfg-ovirtvm-vlan432
# Generated by VDSM version 4.30.17.1
DEVICE=ovirtvm-vlan432
TYPE=Bridge
DELAY=0
STP=off
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=no

Da vas još jednom podsjetim na hostu klastera NO NEED kreirajte mrežna sučelja ručno unaprijed ifcfg-bond1.432 и ifcfg-ovirtvm-vlan432.

Nakon dodavanja logičke mreže i provjere veze između hosta i VM hostovanog motora, može se koristiti u virtuelnoj mašini.

Kreiranje instalacijske slike za implementaciju virtuelne mašine

Link do dokumentacije - Vodič za administraciju oVirt, Poglavlje 8: Skladištenje, odjeljak Prijenos slika u domenu za pohranu podataka.

Bez instalacijske slike OS-a neće biti moguće instalirati virtuelnu mašinu, iako to naravno nije problem ako je npr. instaliran na mreži Pahuljar sa unapred kreiranim slikama.

U našem slučaju to nije moguće, pa ćete morati sami da uvezete ovu sliku u oVirt. Ranije je ovo zahtijevalo kreiranje ISO domene, ali u novoj verziji oVirt-a je zastarjelo, te stoga sada možete otpremati slike direktno na Storage domenu sa administrativnog portala.

Na administrativnom portalu idite na skladištenje >> Diskovi >> upload >> Start
Dodamo našu sliku OS-a kao ISO datoteku, popunimo sva polja u obrascu i kliknemo na dugme "Testirajte vezu".

Snimak ekrana čarobnjaka za dodavanje instalacijske slike

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Ako dobijemo grešku poput ove:

Unable to upload image to disk d6d8fd10-c1e0-4f2d-af15-90f8e636dadc due to a network error. Ensure that ovirt-imageio-proxy service is installed and configured and that ovirt-engine's CA certificate is registered as a trusted CA in the browser. The certificate can be fetched from https://ovirt.test.local/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA`

Zatim morate dodati oVirt certifikat u “Pouzdani korijenski CA-ovi"(Pouzdani Root CA) na kontrolnoj stanici administratora, odakle pokušavamo preuzeti sliku.

Nakon što dodate certifikat u pouzdani korijenski CA, kliknite ponovo "Testirajte vezu", trebalo bi da dobije:

Connection to ovirt-imageio-proxy was successful.

Nakon što završite radnju dodavanja certifikata, možete ponovo pokušati učitati ISO sliku u Storage Domain.

U principu, možete napraviti zasebnu Storage Domain sa tipom podataka za pohranjivanje slika i predložaka odvojeno od VM diskova, ili ih čak pohraniti u Storage Domain za hostirani mehanizam, ali to je diskrecija administratora.

Snimak ekrana sa ISO slikama u Storage Domain za hostirani mehanizam

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Kreirajte virtuelnu mašinu

Link za dokumentaciju:
oVirt Vodič za upravljanje virtuelnim mašinama –> Poglavlje 2: Instaliranje Linux virtuelnih mašina
Resursi za klijente konzole

Nakon učitavanja instalacione slike sa OS-om u oVirt, možete nastaviti direktno sa kreiranjem virtuelne mašine. Dosta posla je obavljeno, ali smo već u završnoj fazi, zbog koje je sve ovo i započeto - dobijanje infrastrukture otporne na greške za hostovanje visoko dostupnih virtuelnih mašina. I sve je to potpuno besplatno - niti jedan peni nije potrošen na kupovinu bilo koje softverske licence.

Da biste kreirali virtuelnu mašinu sa CentOS 7, mora se preuzeti instalacijska slika iz OS-a.

Idemo na administrativni portal, idemo na Izračunajte >> Virtual Machines, i pokrenite čarobnjak za kreiranje VM-a. Popunite sve parametre i polja i kliknite u redu. Sve je vrlo jednostavno ako pratite dokumentaciju.

Kao primjer, dat ću osnovne i dodatne postavke visoko dostupnog VM-a, sa kreiranim diskom, spojenim na mrežu i dizanjem sa instalacione slike:

Snimci ekrana sa visoko dostupnim postavkama VM-a

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Nakon što završite rad sa čarobnjakom, zatvorite ga, pokrenite novi VM i instalirajte OS na njega.
Da biste to učinili, idite na konzolu ovog VM-a preko administrativnog portala:

Snimak ekrana postavki administrativnog portala za povezivanje na VM konzolu

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Da biste se povezali sa VM konzolom, prvo morate konfigurisati konzolu u svojstvima virtuelne mašine.

Snimak ekrana postavki VM-a, kartica "Konzola".

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Za povezivanje na VM konzolu možete koristiti npr. Virtual Machine Viewer.

Za povezivanje na VM konzolu direktno u prozoru pretraživača, postavke veze preko konzole trebale bi biti sljedeće:

Stvaranje IT infrastrukture otporne na greške. Dio 2. Instaliranje i konfiguriranje oVirt 4.3 klastera

Nakon instaliranja OS-a na VM, preporučljivo je instalirati oVirt gost agent:

yum -y install epel-release
yum install -y ovirt-guest-agent-common
systemctl enable ovirt-guest-agent.service && systemctl restart ovirt-guest-agent.service
systemctl status ovirt-guest-agent.service

Dakle, kao rezultat naših akcija, kreirani VM će biti visoko dostupan, tj. ako čvor klastera na kojem radi ne uspije, oVirt će ga automatski ponovo pokrenuti na drugom čvoru. Ovaj VM se također može migrirati između hostova klastera za njihovo održavanje ili druge svrhe.

zaključak

Nadam se da je ovaj članak uspio dočarati da je oVirt sasvim normalan alat za upravljanje virtuelnom infrastrukturom, koji nije tako težak za implementaciju - najvažnije je slijediti određena pravila i zahtjeve opisane kako u članku tako iu dokumentaciji.

Zbog velikog obima članka nije bilo moguće u njega uključiti mnoge stvari, kao što je postupno izvršavanje raznih čarobnjaka sa svim detaljnim objašnjenjima i screenshotovima, dugim zaključcima nekih naredbi itd. U stvari, to bi zahtijevalo pisanje cijele knjige, što nema previše smisla jer se nove verzije softvera stalno pojavljuju s inovacijama i promjenama. Najvažnije je razumjeti princip kako sve to zajedno funkcionira i dobiti opći algoritam za kreiranje platforme otporne na greške za upravljanje virtuelnim mašinama.

Iako smo stvorili virtuelnu infrastrukturu, sada je trebamo naučiti da komunicira i između njenih pojedinačnih elemenata: hostova, virtuelnih mašina, internih mreža i sa spoljnim svetom.

Ovaj proces je jedan od glavnih zadataka administratora sistema ili mreže, o čemu će biti reči u sledećem članku - o upotrebi VyOS virtuelnih rutera u infrastrukturi otpornoj na greške u našem preduzeću (kao što ste pretpostavili, radiće kao virtuelni mašine na našem oVirt klasteru).

izvor: www.habr.com

Dodajte komentar