Zoeken op website

XenServer 7 – Pool-upgrade via CLI en XenCenter-webinterface


Het eerste artikel in deze XenServer 7-serie ging over het installeren/upgraden van een enkele XenServer-host. De meeste XenServer-installaties bevinden zich waarschijnlijk in een pool van veel XenServer-hosts.

Dit artikel behandelt het proces van een volledige upgrade van de XenServer-pool. Het laatste onderdeel behandelt het huishoudelijk werk waarbij de gasten op de XenServer-hosts draaien.

systeem vereisten

  1. XenServer 7 ISO: XenServer-7.0.0-main.iso

Voordat ik verder ga, raad ik je aan om deze twee secties Systeemvereisten en Door de auteur voorgestelde toevoegingen te bekijken in ons eerste artikel van Xen Server 7 op:

  1. Nieuwe installatie van XenServer 7

VRIJWARING

Het doel van dit artikel is om door een XenServer-poolupgrade te lopen. Er zijn verschillende manieren om het upgradeproces uit te voeren en de ‘juiste’ oplossing voor een specifieke installatie zal sterk afhankelijk zijn van de organisatie.

Citrix heeft een zeer gedetailleerd document dat moet worden gelezen voordat het upgradeproces wordt gestart: xenserver-7-0-installation-guide.pdf

XenServer-poolupgrade

Ongetwijfeld maken de meeste XenServer-installaties waarschijnlijk deel uit van een groep XenServers. Dit bemoeilijkt het upgradeproces een beetje. Hoewel de optie om handmatig naar elke server te gaan en elke server te upgraden een optie is, heeft Citrix een veel eenvoudigere manier om dit te doen door het gebruik van een Rolling Pool upgrade via de nieuwste versie van XenCenter of via de 'xe' opdrachtregelprogramma.

Volgens de documentatie van Citrix kan een pool-upgrade worden uitgevoerd op elke versie van XenServer 6.x of hoger naar versie 7. Als een XenServer-host een versie gebruikt die ouder is dan 6.x, moet de host het juiste upgradepad volgen naar XenServer 6.2 en kan vervolgens worden geüpgraded naar XenServer 7.0.

Om de Rolling Pool-upgrade uit te voeren, moet de nieuwste versie van XenCenter worden gedownload van Citrix. De download vindt u hier: XenServer-7.0.1-XenCenterSetup.exe

Zoals vermeld in de XenServer 6.5-serie is XenCenter nog steeds een hulpprogramma dat alleen voor Windows beschikbaar is. De pool-upgrade kan ook via de CLI worden uitgevoerd voor degenen die mogelijk geen toegang hebben tot een Windows-machine om XenCenter uit te voeren.

In dit artikel worden beide methoden beschreven (XenCenter en CLI met het hulpprogramma xe).

OPMERKING – Voordat u een zwembadupgrade uitvoert, moeten twee dingen in acht worden genomen. De rolling pool-upgrade mag niet worden uitgevoerd bij het opstarten vanuit SAN-instellingen en Integrated StorageLink is verwijderd uit XenServer-versies 6.5 en hoger.

Ongeacht welke methode wordt gebruikt, XenCenter of CLI, de eerste stap is het uitschakelen van de hoge beschikbaarheid van de pool, het stoppen van alle niet-essentiële virtuele gastmachines en ervoor zorgen dat XenServer-hosts voldoende geheugen om de gasten te ondersteunen die tijdens de upgrade moeten blijven werken (dat wil zeggen: niet overprovisioned), hosts hebben ook voldoende ruimte op de harde schijf nodig voor XenServer 7. Zorg ervoor dat de cd/dvd-drives voor alle gasten leeg zijn, en het is sterk aangemoedigd dat er een back-up van de huidige poolstatus wordt gemaakt.

Laten we met het proces beginnen.

Pool-upgrade van de CLI

1. Zorg ervoor dat u de voorgaande vijf paragrafen heeft gelezen, aangezien daarin zeer belangrijke informatie voor het upgradeproces wordt beschreven! Het wordt ook sterk aanbevolen dat gebruikers de installatiehandleiding hier lezen: xenserver-7-0-installation-guide.pdf. De instructies en waarschuwingen voor het upgraden beginnen op pagina 24.

2. De eigenlijke eerste technologische stap is het maken van een back-up van de poolstatus met de 'xe' tool. Met behulp van een SSH-verbinding met de Xen-poolmasterhost kan het volgende 'xe' commando worden uitgevoerd.

xe pool-dump-database file-name="Xen Pool.db"

Maak een back-up van de database en kopieer het bestand van de masterhost om er zeker van te zijn dat er een kopie beschikbaar is voor het geval de upgrade mislukt. Met de volgende opdracht kopieert u het bestand Xen Pool.db van de externe XenServer geïdentificeerd door en plaatst u het bestand in de map Downloads van de huidige gebruiker.

scp 'root@<XenServer_ip>:~/”Xen pool.db”'  ~/Downloads/

3. Zodra er een back-up is gemaakt van de pooldatabase, moet de master alle gasten laten migreren naar andere hosts in de pool en vervolgens moet de master worden uitgeschakeld met de volgende 'xe'< opdrachten:

xe host-evacuate host=<hostname of master>
xe host-disable host=<hostname of master>

Nu moet de host lokaal opnieuw worden opgestart vanaf de XenServer 7 installatiemedia. Op dit punt volgt de upgrade veel van dezelfde onderdelen als de upgrade voor één host eerder in dit artikel.

Zorg ervoor dat UPGRADE is gekozen wanneer u de stappen van het installatieprogramma doorloopt! Voor alle duidelijkheid: op dit punt moeten de stappen 1-6 en vervolgens 15-19 in het artikel "XenServer 7 – Nieuwe installatie" in dit stadium worden voltooid.

Het installatieproces duurt ongeveer 12 minuten, dus ga naar https://linux-console.net om een ander artikel te lezen terwijl u wacht tot de installatie is voltooid. Zodra de installatie is voltooid, start u de master opnieuw op en verwijdert u de installatiemedia.

4. Zorg er tijdens het herstarten voor dat de master geen fouten weergeeft en opstart naar het XenServer-consolescherm. Dit is een goede indicatie van een succesvolle upgrade, maar de zaken zijn nog niet klaar. SSH terug naar het hoofdsysteem en controleer of het inderdaad de nieuwe versie van XenServer draait met een van de volgende opdrachten:

cat /etc/redhat-release
uname -a

5. Succes! Deze poolmaster is nu geüpgraded. Verplaats op dit punt indien nodig eventuele gasten naar deze host en ga verder naar de volgende XenServer-host door stap drie te herhalen, behalve dat u de hostnaam vervangt van de volgende host die moet worden geüpgraded.

xe host-evacute host=<hostname of pool slave>
xe host-disable host=<hostname of pool slave>

6. Ga door met stap 3 tot en met 5 voor de resterende slaven in het zwembad.

7. Op dit punt is het CRUCIAAL om nog een update toe te passen. Citrix heeft een patch uitgebracht om problemen op te lossen waarbij gegevensverlies en corruptie onder bepaalde omstandigheden mogelijk waren.

PAS DEZE PATCH NU TOE! Deze patch vereist dat de XenServer-hosts ook opnieuw worden opgestart. Instructies om dit via XenCenter te doen vindt u verderop in dit artikel.

Om dit via de CLI van een XenServer-host te bereiken, downloadt u de patch en geeft u de volgende 'xe'-opdrachten uit:

wget -c http://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX214305/XS70E004.zip
unzip XS70E004.zip
xe patch-upload file-name=XS70E004.xsupdate
xe patch-apply uuid=<UUID_from_above_command>
xe patch-pool-apply uuid=<UUID_from_above_command> - only applies to a XenServer pool and must be run from the pool master

8. Zodra alle hosts in de pool zijn bijgewerkt, moeten de gasten de XenServer Guest Tools hebben bijgewerkt. Stappen om dit te bereiken vindt u aan het einde van dit artikel.

Zwembadupgrade van XenCenter

Voor degenen die toegang hebben tot een Windows machine waarop XenCenter draait, kan een Rolling Pool upgrade worden uitgevoerd via de XenCenter-applicatie.

Het voordeel van het gebruik van XenCenter is dat veel van de taken en controles die in de voorgaande instructies handmatig moesten worden uitgevoerd, nu automatisch door XenCenter worden afgehandeld.

De rolling pool-upgradewizard in XenCenter heeft twee modi; handmatig en automatisch. In de handmatige modus moet het installatieprogramma voor XenServer 7 in elke individuele XenServer-host worden geplaatst op het moment dat deze wordt geüpgraded (dat wil zeggen een opstartbare USB of cd).

Wanneer u de automatische modus gebruikt, gebruikt de wizard bestanden die zich op een soort netwerkbestandsshare bevinden, zoals een HTTP-, NFS- of FTP-server. Om deze methode te gebruiken, moeten de installatiebestanden van de XenServer-installatie-iso worden uitgepakt op de juiste netwerkbestandsserver en toegankelijk worden gemaakt voor de XenServer-hosts.

In deze handleiding wordt het proces van het opzetten van een HTTP-server niet gedetailleerd beschreven, maar wordt wel het proces doorlopen van het extraheren van de ISO-inhoud om een automatische upgrade mogelijk te maken.

XenServer-installatiebestanden uitpakken naar HTTP-server

In deze sectie wordt ervan uitgegaan dat de gebruiker een functionerende HTTP-server heeft met een webroot ingesteld op ‘/var/www/html’. In deze sectie wordt er ook van uitgegaan dat het ISO-bestand van XenServer 7 is gedownload en zich in de hoofdmap van het web bevindt.

De eerste stap bij het instellen van de installatiebestanden voor dit artikel is het mounten van de ISO, zodat de installatiebestanden in de webroot kunnen worden geplaatst. De tweede stap is het maken van een map voor de installatiebestanden en het kopiëren van de bestanden naar die map.

Alle stappen kunnen als volgt worden uitgevoerd:

mount XenServer-7.0.0-main.iso /mnt
mkdir /var/www/html/xenserver
cp -a /mnt/. /var/www/html/xenserver

Op dit punt, na het navigeren naar het IP-adres van de server en de xenserver-map, zouden de installatiematerialen in de browser moeten verschijnen.

Rolling Pool-upgrade met XenCenter

1. De eerste stap is het opnieuw lezen van de paragrafen onder de kop XenServer Pool Upgrade eerder in dit document! Dit is uiterst belangrijk omdat in deze paragrafen details worden gegeven over de upgrade om de overgang van oudere versies van XenServer te vergemakkelijken.

2. De eerste technologische stap is het maken van een back-up van de huidige status van de pool door een 'xe' commando van de poolmaster te gebruiken. Met behulp van een SSH-verbinding of XenCenter-console met de Xen-poolmasterhost kan de volgende 'xe'-opdracht worden uitgevoerd.

xe pool-dump-database file-name="Xen Pool.db"

Als er een back-up van de database is gemaakt, wordt sterk aanbevolen om een kopie van de master te maken, zodat in het geval van een mislukte upgrade de master/pool kan worden teruggezet naar de oorspronkelijke staat.

3. Zorg ervoor dat de nieuwste versie van XenCenter is geïnstalleerd. De downloadlink is als volgt: XenServer-7.0.1-XenCenterSetup.exe.

4. Zodra de pooldatabase is opgeslagen en de nieuwste versie van XenCenter is geïnstalleerd, kan de poolupgrade beginnen. Open XenCenter en maak verbinding met de pool die de nieuwe versie van XenServer nodig heeft. Zodra u verbonden bent met de zwembadmaster, navigeert u naar het menu ‘Extra’ en selecteert u ‘Rolling Pool Upgrade…’.

5. Zorg ervoor dat u de waarschuwingen bij de eerste prompt leest. De stap die hier wordt vermeld, is de back-up van de pooldatabase die is uitgevoerd in stap één van de sectie 'Rolling Pool Upgrade met XenCenter' van dit artikel.

6. In het volgende scherm wordt de gebruiker gevraagd de pools te selecteren die hij wil upgraden. Ieder zwembad waar XenCenter op is aangesloten kan worden geselecteerd. Voor de eenvoud is in deze documentatie gebruik gemaakt van een kleine testpool.

7. Met de volgende stap kan de gebruiker de modus ‘Automatisch’ of ‘Handmatig’ selecteren. Ook dit artikel doorloopt de automatische methode en gaat ervan uit dat er een HTTP-server beschikbaar is en dat de XenServer ISO-inhoud wordt geëxtraheerd in een map met de naam 'xenserver' op die HTTP-server.

8. Op dit punt zal XenCenter een reeks controles uitvoeren om er zeker van te zijn dat alle hosts over de juiste patches/hotfixes beschikken en zal het controleren of de upgrade waarschijnlijk zal slagen.

Afhankelijk van de omgeving is dit waarschijnlijk de stap waarin problemen worden ervaren. Er zijn twee problemen tegengekomen, maar de auteur op dit punt. Er zijn oplossingen gevonden en hopelijk zullen deze anderen helpen.

Het eerste probleem dat zich voordeed was de noodzaak om twee patches toe te passen op de XenServer-hosts. XenCenter zal dit bereiken als de gebruiker besluit dit te doen, maar zoals de auteur en anderen hebben ervaren, wordt deze stap niet altijd correct voltooid en kan het voorkomen dat de volgende stap correct werkt.

Als XenCenter beweert dat alle patches zijn toegepast, maar de gebruiker op het volgende scherm “Ongeldige URL naar installatiebestanden” ontvangt, kon de auteur de fout met succes laten verdwijnen door de master-XenServer opnieuw op te starten.

Als u meer over dit probleem wilt lezen, bekijkt u de Citrix-discussie op de volgende URL: XenServer 7 Ongeldige URL naar installatiebestanden.

Het andere probleem dat zich op dit punt voordeed was een waarschuwing van XenCenter over een lokale VM die werd opgeslagen op de master XenServer-host. Deze lokale VM zou voorkomen dat het XenServer-installatieprogramma de hosts opnieuw zou partitioneren met het nieuwe GPT-partitieschema.

Na veel zoeken werd opgemerkt dat er een back-up van metagegevens van de pool werd opgeslagen op de lokale opslag van de masterhost. Nadat dit naar een andere locatie was verplaatst, zag het installatieprogramma geen problemen meer.

9. Zodra de voorafgaande controles achter de rug zijn, zal het installatieprogramma vragen naar de locatie van de installatiebestanden. Dit artikel maakt gebruik van een HTTP-server om de installatiebestanden aan de XenServer-hosts uit te zenden en daarom moet het installatieprogramma op de hoogte worden gesteld van de locatie van deze bestanden.

Geef in de vakken de benodigde informatie over het serverpad op, evenals de inloggegevens die nodig zijn om verbinding te maken en druk vervolgens op de knop 'Test' om er zeker van te zijn dat XenCenter toegang heeft tot de bestanden. Als het groene vinkje wordt weergegeven, is het installatiemedium gevonden en bruikbaar.

10. Zodra alles klaar is voor gebruik, klikt u op de knop 'Start upgrade'. Hiermee wordt het proces gestart, beginnend bij de zwembadmaster.

OPMERKING – Zorg ervoor dat het beheernetwerk voor de XenServer-hosts over DHCP beschikt. Wanneer het installatieprogramma de hosts opnieuw opstart, zal het proberen een IP-adres te verkrijgen via DHCP.

11. Op dit punt zou het verstandig zijn om te beginnen met lunchen of andere taken uit te voeren. Dit proces zal enige tijd duren. Als toegang tot een lokale monitor of KVM-systeem beschikbaar is op de XenServer-hosts, kan de beheerder het installatieproces bekijken en zien of alles naar behoren verloopt.

12. Het installatieproces op dit testcluster met vier hosts duurde ongeveer twee uur. Zodra de installatie is voltooid, moet u de gasttools voor alle gasten in het zwembad upgraden.

Zorg er ook voor dat u verifieert dat de pool volledig is geüpgraded door naar het tabblad 'Algemeen' van de pool in XenCenter te kijken of door handmatig verbinding te maken met elke XenServer-host.

Op dit punt kunnen ook enkele vervolgtaken nodig zijn. De auteur ondervond enkele problemen met de virtuele interfaces bij sommige gasten toen hij probeerde de gasten op te starten na de zwembadupgrade.

Het bleek dat sommige netwerkconfiguraties voor de pool niet tijdens het installatieproces werden vertaald. De servers hadden allemaal vier fysieke interfaces (PIF's) en op twee van de servers werd één paar PIF's niet meer actief tijdens het opstarten.

Dit veroorzaakte een aanzienlijke hoeveelheid verdriet, maar gelukkig hadden anderen soortgelijke problemen ervaren en was een oplossing gemakkelijk te vinden. De servers in kwestie waren Dell Power Edge 2950's met geïntegreerde Broadcom BCM5708 NIC's.

Het enige dat nodig was, was de systemen terugzetten naar XenServer 6.5 en vervolgens de update vanaf de website van Dell toepassen. De auteur raadt sterk aan ervoor te zorgen dat alle firmware-updates zijn toegepast op alle systemen die worden geüpgraded naar de nieuwere XenServer-release om problemen te helpen voorkomen.

Als u meer over dit onderwerp wilt lezen, raadpleegt u het onderwerp op de discussiepagina van Citrix: XenServer 7 Upgrade No Onboard Network.

Het oorspronkelijke probleem vóór het upgraden van de firmware op de BCM5708 NIC's

Let op de firmwareversie en de defecte PIF-toewijzing.

interface-rename -l

De gecorrigeerde firmware en PIF-hertoewijzing met behulp van het hulpprogramma voor het hernoemen van de interface

Let op de firmware is bijgewerkt en de PIF-volgorde is ook correct.

interface-rename -l

13. Op dit punt zouden alle XenServer-hosts beschikbaar moeten zijn en terug in de juiste poolconfiguratie. Op dit punt is het CRUCIAAL om nog een update toe te passen. Citrix heeft een patch uitgebracht om problemen op te lossen waarbij gegevensverlies en corruptie onder bepaalde omstandigheden mogelijk waren. PAS DEZE PATCH NU AAN!

XenServer 7 kritieke patch XS70E004 toepassen

Net zoals vereist in het artikel over een nieuwe installatie, vereist een pool-upgrade ook dat deze cruciale XenServer 7-patch op de pool wordt toegepast om de gegevensintegriteit te garanderen.

Voor het toepassen van de patch volgt u stap 20 tot en met stap 26 in de nieuwe versie van XenServer 7, deze handleiding hier: XenServer 7 Critical Patch toepassen.

Hiermee is het proces van het updaten/installeren van XenServer op hosts voltooid. Op dit punt moeten opslagplaatsen en virtuele machines opnieuw worden geïmporteerd, geconfigureerd en getest.

In het volgende gedeelte wordt de laatste taak behandeld van het bijwerken van XenServer-gasttools op de virtuele gasten.

XenServer Guest-Tools bijwerken

1. De laatste vervolgtaak is ervoor te zorgen dat gasten opnieuw kunnen worden opgestart en ervoor te zorgen dat ze de nieuwste gasthulpprogramma's hebben geïnstalleerd. Dit kan eenvoudig worden bereikt door de volgende paar stappen te volgen.

2. De eerste stap is het koppelen van de guest-tools ISO aan het dvd-station van een van de virtuele gasten.

3. Zodra XenServer guest-tools.iso aan de gast heeft gekoppeld, zorgt u ervoor dat de gast de nieuwe schijf herkent. In dit voorbeeld wordt een Debian-gast en de installatie van de tools doorlopen.

In de onderstaande uitvoer is de schijf met gasthulpprogramma's toegewezen als 'xvdd'.

4. Dit apparaat kan als volgt snel worden gemonteerd met behulp van het mount-hulpprogramma:

mount /dev/xvdd /mnt

5. Zodra het apparaat is aangekoppeld, kan dpkg als volgt worden gebruikt om de nieuwe gasttools te installeren:

dpkg -i /mnt/Linux/xe-guest-utilities_7.0.0-24_all.deb

6. Tijdens de installatie worden de juiste bestanden geïnstalleerd en wordt de xe daemon namens het systeem opnieuw opgestart.

Om via XenCenter te bevestigen dat de update succesvol was, gaat u naar het tabblad ‘Algemeen’ voor de gastmachine en zoekt u naar de eigenschap met het label ‘Virtualisatiestatus:’.

Whoo... Als je het zo lang hebt overleefd, is XenServer 7 hopelijk geïnstalleerd, gepatcht en zijn de gasten ook bijgewerkt! Als u vragen of problemen heeft, kunt u dit in de reacties hieronder plaatsen. We zullen u zo snel mogelijk helpen.