Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Dit artikel is een voortzetting van het vorige - “Creëren van een fouttolerante IT-infrastructuur. Deel 1 – voorbereiden op de implementatie van een oVirt 4.3-cluster.

Het behandelt het proces van de basisinstallatie en configuratie van een oVirt 4.3-cluster voor het hosten van zeer beschikbare virtuele machines, waarbij rekening wordt gehouden met het feit dat alle voorbereidende stappen voor het voorbereiden van de infrastructuur al eerder zijn voltooid.

prodroom

Het belangrijkste doel van het artikel is om stapsgewijze instructies te geven, zoals “Volgende -> Ja -> Finish"hoe je bepaalde functies kunt laten zien bij het installeren en configureren ervan. Het proces voor het implementeren van uw cluster valt mogelijk niet altijd samen met het proces dat daarin wordt beschreven vanwege de kenmerken van de infrastructuur en de omgeving, maar de algemene principes zullen hetzelfde zijn.

Vanuit subjectief oogpunt gezien oVirt 4.3 de functionaliteit is vergelijkbaar met VMware vSphere versie 5.x, maar uiteraard met eigen configuratie- en bedieningsfuncties.

Voor geïnteresseerden: alle verschillen tussen RHEV (ook bekend als oVirt) en VMware vSphere zijn bijvoorbeeld op internet te vinden hier, maar ik zal toch af en toe enkele van hun verschillen of overeenkomsten met elkaar opmerken naarmate het artikel vordert.

Afzonderlijk zou ik het werk een beetje willen vergelijken met netwerken voor virtuele machines. oVirt implementeert een soortgelijk principe van netwerkbeheer voor virtuele machines (hierna VM's genoemd), zoals in VMware vSphere:

  • met behulp van een standaard Linux-bridge (in VMware - Standaard vSwitch), draait op virtualisatiehosts;
  • met behulp van Open vSwitch (OVS) (in VMware - Gedistribueerde vSwitch) is een gedistribueerde virtuele switch die bestaat uit twee hoofdcomponenten: een centrale OVN-server en OVN-controllers op beheerde hosts.

Opgemerkt moet worden dat vanwege het gemak van implementatie, het artikel het opzetten van netwerken in oVirt voor een VM beschrijft met behulp van een standaard Linux-bridge, wat de standaardkeuze is bij gebruik van de KVM-hypervisor.

In dit opzicht zijn er verschillende basisregels voor het werken met het netwerk in een cluster, die je het beste niet kunt overtreden:

  • Alle netwerkinstellingen op hosts voordat ze aan oVirt worden toegevoegd, moeten identiek zijn, behalve de IP-adressen.
  • Zodra een host onder de controle van oVirt is gebracht, wordt het ten zeerste afgeraden om handmatig iets in de netwerkinstellingen te wijzigen zonder volledig vertrouwen in uw acties, aangezien de oVirt-agent ze eenvoudigweg terugzet naar de vorige nadat de host opnieuw is opgestart of tussenpersoon.
  • Het toevoegen van een nieuw netwerk voor een VM, en het werken ermee, mag alleen gedaan worden vanuit de oVirt-beheerconsole.

Een andere belangrijke notitie — voor een zeer kritieke omgeving (zeer gevoelig voor monetaire verliezen) zou het nog steeds worden aanbevolen om betaalde ondersteuning en gebruik te gebruiken Red Hat-virtualisatie 4.3. Tijdens de werking van het oVirt-cluster kunnen zich enkele problemen voordoen waarvoor het raadzaam is om zo snel mogelijk gekwalificeerde hulp te krijgen, in plaats van deze zelf op te lossen.

En eindelijk aanbevolen Voordat u een oVirt-cluster implementeert, moet u zich vertrouwd maken met officiële documentatie, om op zijn minst op de hoogte te zijn van de basisconcepten en definities, anders zal het een beetje moeilijk zijn om de rest van het artikel te lezen.

Basis voor het begrijpen van het artikel en de werkingsprincipes van het oVirt-cluster zijn deze begeleidingsdocumenten:

Het volume is daar niet erg groot, in een uur of twee kun je de basisprincipes behoorlijk onder de knie krijgen, maar voor wie van details houdt, is het aan te raden om te lezen Productdocumentatie voor Red Hat Virtualisatie 4.3 — RHEV en oVirt zijn in wezen hetzelfde.

Dus als alle basisinstellingen op de hosts, switches en opslagsystemen zijn voltooid, gaan we direct over tot de implementatie van oVirt.

Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Voor het gemak van de oriëntatie zal ik de belangrijkste secties in dit artikel opsommen, die één voor één moeten worden ingevuld:

  1. De oVirt-beheerserver installeren
  2. Realisatie van een nieuw datacenter
  3. Een nieuw cluster maken
  4. Extra hosts installeren in een Self-Hosted-omgeving
  5. Een opslagruimte of opslagdomeinen aanmaken
  6. Netwerken voor virtuele machines creëren en configureren
  7. Een installatie-image maken voor het implementeren van een virtuele machine
  8. Een virtuele machine maken

De oVirt-beheerserver installeren

oVirt-beheerserver - dit is het belangrijkste element in de oVirt-infrastructuur, in de vorm van een virtuele machine, host of virtueel apparaat dat de gehele oVirt-infrastructuur beheert.

De nauwe analogen uit de wereld van virtualisatie zijn:

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

Om de oVirt-beheerserver te installeren, hebben we twee opties:

optie 1
Het inzetten van een server in de vorm van een gespecialiseerde VM of host.

Deze optie werkt redelijk goed, maar op voorwaarde dat een dergelijke VM onafhankelijk van het cluster werkt, d.w.z. draait op geen enkele clusterhost als een gewone virtuele machine waarop KVM draait.

Waarom kan zo’n VM niet op clusterhosts worden geïmplementeerd?

Helemaal aan het begin van het implementatieproces van de oVirt-beheerserver staan ​​we voor een dilemma: we moeten een beheer-VM installeren, maar in feite is er nog geen cluster zelf, en wat kunnen we daarom meteen bedenken? Dat klopt: installeer KVM op een toekomstig clusterknooppunt en maak er vervolgens een virtuele machine op, bijvoorbeeld met CentOS OS, en implementeer daarin de oVirt-engine. Dit kan meestal worden gedaan om redenen van volledige controle over zo'n VM, maar dit is een verkeerde bedoeling, omdat er in dit geval in de toekomst 100% problemen zullen zijn met zo'n controle-VM:

  • het kan niet worden gemigreerd in de oVirt-console tussen hosts (knooppunten) van het cluster;
  • bij het migreren met KVM via virsh migreren, zal deze VM niet beschikbaar zijn voor beheer vanuit de oVirt-console.
  • clusterhosts kunnen niet worden weergegeven in onderhoud-modus (onderhoudsmodus), als u deze VM van host naar host migreert met behulp van virsh migreren.

Doe dus alles volgens de regels - gebruik een aparte host voor de oVirt-beheerserver, of een onafhankelijke VM die erop draait, of beter nog, doe zoals beschreven in de tweede optie.

optie 2
Het installeren van oVirt Engine Appliance op een clusterhost die erdoor wordt beheerd.

Het is deze optie die in ons geval verder als correcter en geschikter zal worden beschouwd.
De vereisten voor een dergelijke VM worden hieronder beschreven; ik wil er alleen aan toevoegen dat het aanbevolen is om ten minste twee hosts in de infrastructuur te hebben waarop de controle-VM kan draaien om deze fouttolerant te maken. Hier zou ik willen toevoegen dat ik, zoals ik al in de reacties bij het vorige artikel schreef, nooit heb kunnen krijgen gespleten brein op een oVirt-cluster van twee hosts, met de mogelijkheid om daarop gehoste VM's te draaien.

OVirt Engine Appliance installeren op de eerste host van het cluster

Link naar officiële documentatie - oVirt zelfgehoste enginegids, hoofdstuk "De zelfgehoste engine implementeren via de opdrachtregel»

Het document specificeert de vereisten waaraan moet worden voldaan voordat een VM met een gehoste engine wordt ingezet, en beschrijft ook in detail het installatieproces zelf. Het heeft dus weinig zin om het woordelijk te herhalen, dus we zullen ons concentreren op enkele belangrijke details.

  • Voordat u met alle acties begint, moet u ervoor zorgen dat virtualisatie-ondersteuning is ingeschakeld in de BIOS-instellingen op de host.
  • Installeer het pakket voor het installatieprogramma voor de gehoste engine op de host:

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

  • We starten de procedure voor het implementeren van oVirt Hosted Engine in het scherm op de host (u kunt deze afsluiten via Ctrl-A + D, sluiten via Ctrl-D):

screen
hosted-engine --deploy

Als u wilt, kunt u de installatie uitvoeren met een vooraf opgesteld antwoordbestand:

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

  • Bij het inzetten van een gehoste engine specificeren we alle noodzakelijke parameters:

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

  • Om een ​​zeer beschikbare VM met een gehoste engine te installeren, hebben we eerder een speciale LUN op het opslagsysteem gemaakt, nummer 4 en 150 GB groot, die vervolgens aan de clusterhosts werd gepresenteerd - zie vorige artikel.

Eerder controleerden we ook de zichtbaarheid ervan op hosts:

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

  • Het implementatieproces van de gehoste engine zelf is niet ingewikkeld; uiteindelijk zouden we zoiets als dit moeten krijgen:

[ 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

We controleren de aanwezigheid van oVirt-services op de host:

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Als alles correct is gedaan, gebruikt u nadat de installatie is voltooid een webbrowser om naar te gaan https://ovirt_hostname/ovirt-engine vanaf de computer van de beheerder en klik op [Administratieportaal].

Screenshot van “Beheerportaal”

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Door de login en het wachtwoord (ingesteld tijdens het installatieproces) in het venster in te voeren zoals in de schermafbeelding, komen we bij het Open Virtualization Manager-configuratiescherm, waarin u alle acties met de virtuele infrastructuur kunt uitvoeren:

  1. datacenter toevoegen
  2. een cluster toevoegen en configureren
  3. hosts toevoegen en beheren
  4. voeg opslaggebieden of opslagdomeinen toe voor schijven van virtuele machines
  5. netwerken voor virtuele machines toevoegen en configureren
  6. virtuele machines, installatie-images en VM-sjablonen toevoegen en beheren

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Al deze acties zullen verder worden besproken, sommige in grote cellen, andere gedetailleerder en met nuances.
Maar eerst zou ik aanraden deze add-on te lezen, die waarschijnlijk voor velen nuttig zal zijn.

Toevoeging

1) Als er een dergelijke behoefte bestaat, belet niets u in principe om de KVM-hypervisor vooraf op de clusterknooppunten te installeren met behulp van pakketten libvirt и qemu-kvm (Of qemu-kvm-ev) van de gewenste versie, hoewel het dit bij het inzetten van een oVirt-clusterknooppunt zelf kan doen.

Maar als libvirt и qemu-kvm Als u de nieuwste versie niet hebt geïnstalleerd, ontvangt u mogelijk de volgende foutmelding bij het implementeren van een gehoste engine:

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

Die. hebbeding geupdate versie libvirt met bescherming tegen MDS, dat dit beleid ondersteunt:

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

Installeer libvirt v.4.5.0-10.el7_6.12, met md-clear ondersteuning:

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

Controleer op 'md-clear'-ondersteuning:

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

Hierna kunt u doorgaan met het installeren van de gehoste engine.

2) In oVirt 4.3 de aanwezigheid en het gebruik van een firewall firewalld is een verplichte vereiste.

Als we tijdens de implementatie van een VM voor een gehoste engine de volgende foutmelding ontvangen:

[ 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

Vervolgens moet u een andere firewall uitschakelen (als deze wordt gebruikt), installeren en uitvoeren 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

Later, wanneer de ovirt-agent op een nieuwe host voor het cluster wordt geïnstalleerd, zal deze de vereiste poorten configureren firewalld automatisch.

3) Een host opnieuw opstarten waarop een VM draait met een gehoste engine.

Zoals gewoonlijk, 1-link и 2-link naar bestuursdocumenten.

Al het beheer van de gehoste engine-VM gebeurt ALLEEN met behulp van de opdracht gehoste motor op de host waar het draait, ongeveer Vers we moeten vergeten, evenals het feit dat je via SSH verbinding kunt maken met deze VM en het commando “stillegging.

Procedure voor het in de onderhoudsmodus zetten van een VM:

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

We herstarten de host met de gehoste engine-agent en doen ermee wat we nodig hebben.

Controleer na het opnieuw opstarten de status van de VM met de gehoste engine:

hosted-engine --vm-status

Als onze VM met gehoste engine niet start en we soortgelijke fouten zien in het servicelogboek:

Fout in het servicelogboek:

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

Vervolgens verbinden we de opslag en starten we de agent opnieuw op:

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

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

Nadat we de VM met gehoste engine hebben gestart, halen we deze uit de onderhoudsmodus:

Procedure voor het verwijderen van een VM uit de onderhoudsmodus:

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) Het verwijderen van de gehoste engine en alles wat daarmee samenhangt.

Soms is het nodig om een ​​eerder geïnstalleerde gehoste engine correct te verwijderen - link naar het begeleidingsdocument.

Voer gewoon de opdracht uit op de host:

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

Vervolgens verwijderen we onnodige pakketten en maken we indien nodig een back-up van enkele configuraties:

yum autoremove ovirt* qemu* virt* libvirt* libguestfs 

Realisatie van een nieuw datacenter

Referentiedocumentatie - oVirt Beheerhandleiding. Hoofdstuk 4: Datacenters

Laten we eerst definiëren wat het is datacentrum (Ik citeer uit de Help) is een logische entiteit die een reeks bronnen definieert die in een specifieke omgeving worden gebruikt.

Een datacenter is een soort container bestaande uit:

  • logische bronnen in de vorm van clusters en hosts
  • clusternetwerkbronnen in de vorm van logische netwerken en fysieke adapters op hosts,
  • opslagbronnen (voor VM-schijven, sjablonen, afbeeldingen) in de vorm van opslaggebieden (Storage Domains).

Een datacenter kan meerdere clusters bevatten die bestaan ​​uit meerdere hosts waarop virtuele machines draaien, en er kunnen ook meerdere opslaggebieden aan gekoppeld zijn.
Er kunnen meerdere datacenters zijn; deze opereren onafhankelijk van elkaar. Ovirt heeft een scheiding van bevoegdheden per rol en u kunt machtigingen individueel configureren, zowel op datacenterniveau als op de individuele logische elementen ervan.

Het datacenter, of datacenters als er meerdere zijn, worden beheerd vanuit één beheerconsole of portal.

Om een ​​datacenter aan te maken, gaat u naar het administratieve portaal en maakt u een nieuw datacenter aan:
Berekenen >> data Centers >> New

Omdat we gedeelde opslag op het opslagsysteem gebruiken, moet het opslagtype Gedeeld zijn:

Schermafbeelding van de wizard Datacenter maken

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Bij het installeren van een virtuele machine met gehoste engine wordt standaard een datacenter aangemaakt - Datacentrum1en vervolgens kunt u, indien nodig, het opslagtype wijzigen in een ander type.

Het creëren van een datacenter is een eenvoudige taak, zonder lastige nuances, en alle aanvullende handelingen daarbij worden beschreven in de documentatie. Het enige dat ik wil opmerken is dat afzonderlijke hosts die alleen lokale opslag (schijf) voor VM's hebben, geen datacenter kunnen binnenkomen met Opslagtype - Gedeeld (ze kunnen daar niet worden toegevoegd), en voor hen moet je een een apart datacenter - d.w.z. Elke individuele host met lokale opslag heeft een eigen, afzonderlijk datacenter nodig.

Een nieuw cluster maken

Link naar documentatie - oVirt Beheerhandleiding. Hoofdstuk 5: Clusters

Zonder onnodige details, TROS – dit is een logische groep hosts die een gemeenschappelijk opslaggebied hebben (in de vorm van gedeelde schijven op een opslagsysteem, zoals in ons geval). Ook is het wenselijk dat de hosts in het cluster qua hardware identiek zijn en hetzelfde type processor hebben (Intel of AMD). Het beste is uiteraard dat de servers in het cluster volledig identiek zijn.

Het cluster maakt deel uit van een datacenter (met een specifiek type opslag - Lokale of Gedeelde), en alle hosts moeten tot een soort cluster behoren, afhankelijk van of ze gedeelde opslag hebben of niet.

Wanneer u een virtuele machine met een gehoste engine op een host installeert, wordt er standaard een datacenter gemaakt - Datacentrum1, samen met het cluster – Cluster1, en in de toekomst kunt u de parameters ervan configureren, extra opties inschakelen, er hosts aan toevoegen, enz.

Zoals gebruikelijk is het raadzaam om voor details over alle clusterinstellingen de officiële documentatie te raadplegen. Van sommige kenmerken van het instellen van een cluster zal ik alleen toevoegen dat het bij het maken ervan voldoende is om alleen de basisparameters op het tabblad te configureren Algemeen.

Ik zal de belangrijkste parameters noteren:

  • Type processor — wordt geselecteerd op basis van welke processors op de clusterhosts zijn geïnstalleerd, van welke fabrikant ze zijn en welke processor op de hosts de oudste is, zodat, afhankelijk hiervan, alle beschikbare processorinstructies in het cluster worden gebruikt.
  • Type schakelaar – in ons cluster gebruiken we alleen Linux bridge, daarom kiezen we ervoor.
  • Firewall-type – alles is hier duidelijk, dit is firewalld, die moet worden ingeschakeld en geconfigureerd op de hosts.

Schermafbeelding met clusterparameters

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Extra hosts installeren in een Self-Hosted-omgeving

Link voor documentatie.

Extra hosts voor een zelfgehoste omgeving worden op dezelfde manier toegevoegd als een gewone host, met als extra stap het inzetten van een VM met een gehoste engine: Kies actie voor gehoste engine-implementatie >> Implementeren. Omdat de extra host ook een LUN moet krijgen voor een VM met een gehoste engine, betekent dit dat deze host, indien nodig, kan worden gebruikt om een ​​VM met een gehoste engine erop te hosten.
Voor fouttolerantiedoeleinden wordt het ten zeerste aanbevolen dat er ten minste twee hosts zijn waarop een gehoste engine-VM kan worden geplaatst.

Schakel op de extra host iptables uit (indien ingeschakeld) en schakel firewalld in

systemctl stop iptables
systemctl disable iptables

systemctl enable firewalld
systemctl start firewalld

Installeer de vereiste KVM-versie (indien nodig):

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

Installeer de benodigde opslagplaatsen en het gehoste engine-installatieprogramma:

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

Ga vervolgens naar de console Open Virtualisatiebeheer, voeg een nieuwe host toe en voer alles stap voor stap uit, zoals geschreven in documentatie.

Als gevolg hiervan zouden we, na het toevoegen van een extra host, zoiets als de afbeelding in de beheerconsole moeten krijgen, zoals in de schermafbeelding.

Schermafbeelding van het administratieve portaal - hosts

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

De host waarop de VM met gehoste engine momenteel actief is, heeft een gouden kroon en het opschrift “Het uitvoeren van de gehoste engine-VM", de host waarop deze VM indien nodig kan worden gelanceerd - de inscriptie "Kan de Hosted Engine VM uitvoeren.

In het geval van een hoststoring waarbij "Het uitvoeren van de gehoste engine-VM", zal het automatisch opnieuw opstarten op de tweede host. Deze VM kan voor onderhoud ook worden gemigreerd van de actieve host naar de standby-host.

Energiebeheer / hekwerk instellen op oVirt-hosts

Documentatielinks:

Hoewel het lijkt alsof u klaar bent met het toevoegen en configureren van een host, is dat niet helemaal waar.
Voor de normale werking van hosts, en om fouten met een van deze te identificeren/op te lossen, zijn instellingen voor energiebeheer/afrastering vereist.

Schermen, of hekwerk, is het proces waarbij een defecte of defecte host tijdelijk wordt uitgesloten van het cluster, waarbij de oVirt-services daarop of de host zelf opnieuw worden opgestart.

Alle details over de definities en parameters van energiebeheer/afrastering worden zoals gebruikelijk gegeven in de documentatie; ik zal alleen een voorbeeld geven van hoe deze belangrijke parameter moet worden geconfigureerd, zoals toegepast op Dell R640-servers met iDRAC 9.

  1. Ga naar het administratieve portaal, klik Berekenen >> hosts selecteer een gastheer.
  2. Klik Edit.
  3. Klik op het tabblad Power management.
  4. Vink het vakje naast de optie aan Schakel energiebeheer in.
  5. Vink het vakje naast de optie aan Kdump-integratieom te voorkomen dat de host in de schermmodus gaat tijdens het opnemen van een kernelcrashdump.

Opmerking.

Na het inschakelen van Kdump-integratie op een reeds actieve host, moet deze opnieuw worden geïnstalleerd volgens de procedure in oVirt Administration Guide -> Hoofdstuk 7: Gastheren -> Hosts opnieuw installeren.

  1. Optioneel kunt u het vakje aanvinken Schakel beleidscontrole van energiebeheer uit, als we niet willen dat het energiebeheer van de host wordt beheerd door het planningsbeleid van het cluster.
  2. Klik op de knop (+) om een ​​nieuw energiebeheerapparaat toe te voegen, wordt het venster voor het bewerken van agenteigenschappen geopend.
    Vul voor iDRAC9 de velden in:

    • Adres – iDRAC9-adres
    • Gebruikersnaam wachtwoord – respectievelijk login en wachtwoord voor inloggen op iDRAC9
    • Type —drac5
    • mark Veilig Bestellen
    • voeg de volgende opties toe: cmd_prompt=>,login_timeout=30

Schermafbeelding met “Energiebeheer”-parameters in hosteigenschappen

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Een opslagruimte of opslagdomeinen aanmaken

Link naar documentatie - oVirt Beheerhandleiding, Hoofdstuk 8: Opslag.

Opslagdomein, of opslaggebied, is een gecentraliseerde locatie voor het opslaan van schijven van virtuele machines, installatie-images, sjablonen en snapshots.

Opslagruimtes kunnen met behulp van verschillende protocollen, cluster- en netwerkbestandssystemen met het datacenter worden verbonden.

oVirt heeft drie soorten opslagruimte:

  • Gegevensdomein – om alle gegevens op te slaan die zijn gekoppeld aan virtuele machines (schijven, sjablonen). Data Domain kan niet worden gedeeld tussen verschillende datacenters.
  • ISO-domein (verouderd type opslagruimte) – voor het opslaan van installatiekopieën van het besturingssysteem. ISO Domain kan worden gedeeld tussen verschillende datacenters.
  • Domein exporteren (verouderd type opslagruimte) – voor tijdelijke opslag van afbeeldingen die tussen datacenters zijn verplaatst.

In ons specifieke geval gebruikt een opslaggebied met het Data Domain-type Fibre Channel Protocol (FCP) om verbinding te maken met LUN's op het opslagsysteem.

Vanuit het oogpunt van oVirt is bij gebruik van opslagsystemen (FC of iSCSI) elke virtuele schijf, snapshot of sjabloon een logische schijf.
Blokapparaten worden samengevoegd tot één eenheid (op clusterhosts) met behulp van Volume Group en vervolgens met behulp van LVM verdeeld in logische volumes, die worden gebruikt als virtuele schijven voor VM's.

Al deze groepen en veel LVM-volumes zijn te zien op de clusterhost met behulp van de opdrachten enz и lvs. Uiteraard mogen alle acties met dergelijke schijven alleen vanaf de oVirt-console worden uitgevoerd, behalve in speciale gevallen.

Er kunnen twee typen virtuele schijven voor VM's zijn: QCOW2 of RAW. Schijven kunnen "dun"of"dik". Snapshots worden altijd gemaakt als "dun".

De manier om opslagdomeinen, of opslaggebieden waartoe toegang wordt verkregen via FC, te beheren is vrij logisch: voor elke virtuele VM-schijf is er een afzonderlijk logisch volume dat door slechts één host kan worden beschreven. Voor FC-verbindingen gebruikt oVirt zoiets als geclusterde LVM.

Virtuele machines die zich op hetzelfde opslaggebied bevinden, kunnen worden gemigreerd tussen hosts die tot hetzelfde cluster behoren.

Zoals we uit de beschrijving kunnen zien, betekent een cluster in oVirt, net als een cluster in VMware vSphere of Hyper-V, in wezen hetzelfde: het is een logische groep hosts, bij voorkeur identiek qua hardwaresamenstelling, en met gemeenschappelijke opslag voor virtuele machine schijven.

Laten we direct doorgaan met het creëren van een opslaggebied voor gegevens (VM-schijven), want zonder dit zal het datacenter niet worden geïnitialiseerd.
Ik wil u eraan herinneren dat alle LUN's die aan de clusterhosts op het opslagsysteem worden gepresenteerd, daarop zichtbaar moeten zijn met behulp van de opdracht "multipad -ll.

Volgens documentatie, ga naar het portaal ga naar Opbergen >> domeinen -> Nieuw domein en volg de instructies uit het gedeelte 'FCP-opslag toevoegen'.

Nadat u de wizard heeft gestart, vult u de verplichte velden in:

  • Naam — stel de clusternaam in
  • Domeinfunctie -Gegevens
  • Opslag type - Fibre Channel
  • Host om te gebruiken — selecteer een host waarop de door ons gewenste LUN beschikbaar is

Markeer in de lijst met LUN's degene die we nodig hebben en klik op Toevoegen en gooi ОК. Indien nodig kunt u aanvullende parameters van het opslaggebied aanpassen door op te klikken Geavanceerde parameters.

Screenshot van de wizard voor het toevoegen van “Opslagdomein”

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Op basis van de resultaten van de wizard zouden we een nieuwe opslagruimte moeten ontvangen en zou ons datacenter naar de status moeten verhuizen UP, of geïnitialiseerd:

Screenshots van het datacenter en de opslagruimtes daarin:

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Netwerken voor virtuele machines creëren en configureren

Link naar documentatie - oVirt Beheerhandleiding, Hoofdstuk 6: Logische netwerken

Netwerken, of netwerken, dienen voor het groeperen van logische netwerken die worden gebruikt in de virtuele oVirt-infrastructuur.

Voor interactie tussen de netwerkadapter op de virtuele machine en de fysieke adapter op de host worden logische interfaces zoals Linux bridge gebruikt.

Om het verkeer tussen netwerken te groeperen en te verdelen, zijn op de switches VLAN's geconfigureerd.

Bij het creëren van een logisch netwerk voor virtuele machines in oVirt moet hieraan een identificatie worden toegewezen die overeenkomt met het VLAN-nummer op de switch, zodat de VM's met elkaar kunnen communiceren, zelfs als ze op verschillende knooppunten van het cluster draaien.

Voorlopige instellingen van netwerkadapters op hosts voor het verbinden van virtuele machines moesten worden gedaan vorige artikel – logische interface geconfigureerd bond1, dan mogen alle netwerkinstellingen alleen via het oVirt-beheerportaal worden uitgevoerd.

Na het creëren van een VM met gehoste engine werd er, naast het automatisch aanmaken van een datacenter en cluster, ook automatisch een logisch netwerk gecreëerd om ons cluster te beheren - ovritmgmt, waarmee deze VM was verbonden.

Indien nodig kunt u de logische netwerkinstellingen bekijken ovritmgmt en pas ze aan, maar u moet oppassen dat u de controle over de oVirt-infrastructuur niet verliest.

Logische netwerkinstellingen ovritmgmt

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Als u een nieuw logisch netwerk voor reguliere VM's wilt maken, gaat u in het beheerportaal naar Netwerk >> Networks >> New, en op het tabblad Algemeen voeg een netwerk toe met de gewenste VLAN-ID, en vink ook het vakje aan naast “VM-netwerk", betekent dit dat het kan worden gebruikt voor toewijzing aan een VM.

Screenshot van het nieuwe logische VLAN32-netwerk

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Op het tabblad TROS, koppelen we dit netwerk aan ons cluster Cluster1.

Hierna gaan we naar Berekenen >> hosts, ga beurtelings naar elke host, naar het tabblad Netwerk interfacesen start de wizard Hostnetwerken instellen, om te binden aan hosts van een nieuw logisch netwerk.

Schermafbeelding van de wizard “Hostnetwerken instellen”.

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

De oVirt-agent maakt automatisch alle benodigde netwerkinstellingen op de host - maak een VLAN en BRIDGE.

Voorbeeldconfiguratiebestanden voor nieuwe netwerken op de host:

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

Ik wil u er nogmaals aan herinneren dat op de clusterhost NIET NODIG maak vooraf handmatig netwerkinterfaces ifcfg-obligatie1.432 и ifcfg-ovirtvm-vlan432.

Nadat u een logisch netwerk hebt toegevoegd en de verbinding tussen de host en de gehoste engine-VM heeft gecontroleerd, kan dit in de virtuele machine worden gebruikt.

Een installatie-image maken voor het implementeren van een virtuele machine

Link naar documentatie - oVirt Beheerhandleiding, Hoofdstuk 8: Opslag, sectie Afbeeldingen uploaden naar een gegevensopslagdomein.

Zonder OS-installatieimage zal het niet mogelijk zijn om een ​​virtuele machine te installeren, al is dit uiteraard geen probleem als deze bijvoorbeeld op het netwerk is geïnstalleerd Schoenmaker met vooraf gemaakte afbeeldingen.

In ons geval is dit niet mogelijk en zul je deze afbeelding dus zelf in oVirt moeten importeren. Voorheen vereiste dit het aanmaken van een ISO-domein, maar in de nieuwe versie van oVirt is dit verouderd en daarom kunt u nu afbeeldingen rechtstreeks vanuit het beheerportaal naar het opslagdomein uploaden.

Ga in het administratieve portaal naar Opbergen >> Schijven >> Uploaden >> Start
We voegen onze OS-image toe als een ISO-bestand, vullen alle velden in het formulier in en klikken op de knop "Test verbinding".

Schermafbeelding van de wizard Installatie-image toevoegen

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Als we een foutmelding als deze krijgen:

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`

Vervolgens moet u het oVirt-certificaat toevoegen aan “Vertrouwde root-CA's"(Trusted Root CA) op het controlestation van de beheerder, vanwaar we de afbeelding proberen te downloaden.

Nadat u het certificaat aan de vertrouwde root-CA hebt toegevoegd, klikt u opnieuw op "Test verbinding", zou moeten krijgen:

Connection to ovirt-imageio-proxy was successful.

Nadat u de actie van het toevoegen van het certificaat hebt voltooid, kunt u proberen de ISO-image opnieuw naar het opslagdomein te uploaden.

In principe kunt u een apart Storage Domain maken met het Data type om afbeeldingen en sjablonen gescheiden van VM-schijven op te slaan, of deze zelfs in een Storage Domain voor de gehoste engine opslaan, maar dit is ter beoordeling van de beheerder.

Schermafbeelding met ISO-images in Storage Domain voor gehoste engine

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Een virtuele machine maken

Documentatielink:
oVirt Handleiding voor beheer van virtuele machines -> Hoofdstuk 2: Virtuele Linux-machines installeren
Console-clientbronnen

Nadat u het installatie-image met het besturingssysteem in oVirt hebt geladen, kunt u direct doorgaan met het maken van een virtuele machine. Er is veel werk verzet, maar we bevinden ons al in de laatste fase, waarvoor dit allemaal is begonnen: het verkrijgen van een fouttolerante infrastructuur voor het hosten van zeer beschikbare virtuele machines. En dit alles is helemaal gratis - er is geen enkele cent uitgegeven aan de aanschaf van softwarelicenties.

Om een ​​virtuele machine met CentOS 7 te maken, moet de installatie-image van het besturingssysteem worden gedownload.

We gaan naar het administratieve portaal, ga naar Berekenen >> Virtuele Machinesen start de wizard voor het maken van een VM. Vul alle parameters en velden in en klik ОК. Alles is heel eenvoudig als je de documentatie volgt.

Als voorbeeld geef ik de basis- en aanvullende instellingen van een zeer beschikbare VM, met een gemaakte schijf, verbonden met het netwerk en opgestart vanaf een installatie-image:

Schermafbeeldingen met maximaal beschikbare VM-instellingen

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Nadat u klaar bent met het werken met de wizard, sluit u deze, start u een nieuwe VM en installeert u het besturingssysteem erop.
Om dit te doen, gaat u via de beheerportal naar de console van deze VM:

Schermafbeelding van de beheerdersportalinstellingen voor verbinding met de VM-console

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Om verbinding te maken met de VM-console, moet u eerst de console configureren in de eigenschappen van de virtuele machine.

Schermafbeelding van VM-instellingen, tabblad “Console”.

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Om verbinding te maken met de VM-console kunt u bijvoorbeeld gebruiken: Virtuele machineviewer.

Om rechtstreeks in het browservenster verbinding te maken met de VM-console, moeten de verbindingsinstellingen via de console als volgt zijn:

Creëren van een fouttolerante IT-infrastructuur. Deel 2. Installeren en configureren van het oVirt 4.3 cluster

Na installatie van het besturingssysteem op de VM is het raadzaam om de oVirt-gastagent te installeren:

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

Als resultaat van onze acties zal de gecreëerde VM dus zeer beschikbaar zijn, d.w.z. als het clusterknooppunt waarop het draait uitvalt, zal oVirt het automatisch opnieuw opstarten op het tweede knooppunt. Deze VM kan ook worden gemigreerd tussen clusterhosts voor onderhoud of andere doeleinden.

Conclusie

Ik hoop dat dit artikel heeft kunnen overbrengen dat oVirt een volkomen normale tool is voor het beheren van virtuele infrastructuur, die niet zo moeilijk te implementeren is - het belangrijkste is om bepaalde regels en vereisten te volgen die zowel in het artikel als in de documentatie worden beschreven.

Vanwege de grote omvang van het artikel was het niet mogelijk om er veel dingen in op te nemen, zoals de stapsgewijze uitvoering van verschillende wizards met alle gedetailleerde uitleg en schermafbeeldingen, lange conclusies van sommige commando's, enz. In feite zou dit het schrijven van een heel boek vereisen, wat niet veel zin heeft omdat er voortdurend nieuwe versies van software verschijnen met innovaties en veranderingen. Het belangrijkste is om het principe te begrijpen van hoe het allemaal samenwerkt, en om een ​​algemeen algoritme te verkrijgen voor het creëren van een fouttolerant platform voor het beheer van virtuele machines.

Hoewel we een virtuele infrastructuur hebben gecreëerd, moeten we deze nu leren communiceren tussen de afzonderlijke elementen: hosts, virtuele machines, interne netwerken en met de buitenwereld.

Dit proces is een van de hoofdtaken van een systeem- of netwerkbeheerder, die in het volgende artikel zal worden behandeld - over het gebruik van virtuele VyOS-routers in de fouttolerante infrastructuur van onze onderneming (zoals u al vermoedde, zullen ze werken als virtuele machines op ons oVirt-cluster).

Bron: www.habr.com

Voeg een reactie