XenServer 7 – Pooloppgradering via CLI og XenCenter Web Interface


Den første artikkelen i denne XenServer 7-serien dekket hvordan du installerer/oppgraderer en enkelt XenServer-vert. De fleste XenServer-installasjoner er sannsynligvis i en pool av mange XenServer-verter.

Denne artikkelen vil dekke prosessen med en hel XenServer-pooloppgradering. Den siste komponenten vil dekke noe rengjøring med gjestene som kjører på XenServer-vertene.

Systemkrav

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

Før du går videre, foreslår jeg at du sjekker ut disse to delene Systemkrav og Forslag til forfattere i vår første artikkel av Xen Server 7 på:

  1. Ny installasjon av XenServer 7

ANSVARSFRASKRIVELSE

Hensikten med denne artikkelen er å gå gjennom en XenServer-pooloppgradering. Det finnes flere måter å gjøre oppgraderingsprosessen på, og den "riktige" løsningen for en spesifikk installasjon vil være sterkt avhengig av organisasjonen.

Citrix har et svært detaljert dokument som bør gjennomgås før oppgraderingsprosessen startes: xenserver-7-0-installation-guide.pdf

XenServer Pool Oppgradering

Utvilsomt er de fleste XenServer-installasjoner sannsynligvis en del av en pool av XenServere. Dette kompliserer oppgraderingsprosessen litt. Mens muligheten til å gå til hver server manuelt og oppgradere hver enkelt er et alternativ, har Citrix en mye enklere måte å gjøre dette på ved å bruke en Rolling Pool-oppgradering gjennom den nyeste versjonen av XenCenter eller gjennom 'xe' kommandolinjeverktøy.

I følge Citrixs dokumentasjon kan en pooloppgradering utføres på hvilken som helst versjon av XenServer 6.x eller høyere til versjon 7. Hvis en XenServer-vert kjører en versjon eldre enn 6.x, må verten følge den riktige oppgraderingsstien til XenServer 6.2 og kan deretter oppgraderes til XenServer 7.0.

For å gjøre Rolling Pool-oppgraderingen, må den nyeste versjonen av XenCenter lastes ned fra Citrix. Nedlastingen finner du her: XenServer-7.0.1-XenCenterSetup.exe

Som nevnt i XenServer 6.5-serien, er XenCenter fortsatt kun et Windows-verktøy. Bassengoppgraderingen kan også gjøres via CLI for de som kanskje ikke har tilgang til en Windows-maskin for å kjøre XenCenter.

Denne artikkelen beskriver begge metodene (XenCenter og CLI med xe-verktøyet).

MERK – Før du gjør en bassengoppgradering, bør du merke deg to ting. Oppgraderingen av rullende basseng bør ikke gjøres med oppstart fra SAN-oppsett, og Integrated StorageLink er fjernet fra XenServer-versjoner 6.5 og høyere.

Uavhengig av hvilken metode som brukes, XenCenter eller CLI, er det første trinnet å deaktivere høy tilgjengelighet, stoppe alle ikke-essensielle virtuelle gjestemaskiner, sikre at XenServer-verter har nok minne for å støtte gjestene som trenger å fortsette å kjøre under oppgraderingen (dvs. ikke overprovisionert), verter trenger også nok harddiskplass for XenServer 7, sørg for at cd/dvd-stasjonene for alle gjester er tomme, og det er sterkt oppfordret til at det gjøres en sikkerhetskopi av gjeldende pooltilstand.

La oss starte prosessen.

Bassengoppgradering fra CLI

1. Sørg for at du har lest de foregående 5 avsnittene, da de skisserer en del svært viktig informasjon for oppgraderingsprosessen! Det anbefales også sterkt at brukere leser installasjonsveiledningen som ligger her: xenserver-7-0-installation-guide.pdf, Instruksjonene og advarslene for oppgradering starter på side 24.

2. Det faktiske første teknologiske trinnet er å sikkerhetskopiere bassengstatusen med 'xe'-verktøyet. Ved å bruke en SSH-tilkobling til Xen-bassenghovedverten kan følgende 'xe'-kommando kjøres.

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

Med databasen sikkerhetskopiert, kopier filen fra hovedverten for å sikre at en kopi er tilgjengelig i tilfelle oppgraderingen mislykkes. Følgende kommando vil kopiere filen Xen Pool.db fra den eksterne XenServeren identifisert av og plassere filen i gjeldende brukers nedlastingsmappe.

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

3. Når bassengdatabasen har blitt sikkerhetskopiert, må masteren ha alle gjester migrert til andre verter i bassenget, og deretter må masteren deaktiveres med følgende 'xe'< kommandoer:

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

Nå må verten startes på nytt fra installasjonsmediet XenServer 7 lokalt. På dette tidspunktet følger oppgraderingen mange av de samme delene som en enkelt vertsoppgradering tidligere i denne artikkelen.

Vær helt sikker på at OPPGRADERING er valgt når du går gjennom installasjonstrinnene! For klarhetens skyld, på dette tidspunktet, bør trinn 1-6 og deretter 15-19 i artikkelen "XenServer 7 – Fresh Install" fullføres på dette stadiet.

Installasjonsprosessen tar omtrent 12 minutter, så naviger til https://linux-console.net for å lese en annen artikkel mens du venter på at installasjonen skal fullføres. Når installasjonen er fullført, start masteren på nytt og fjern installasjonsmediet.

4. Når masteren starter på nytt, pass på at den ikke viser noen feil og at den starter opp til XenServer-konsollskjermen. Dette er en god indikasjon på en vellykket oppgradering, men ting er ikke gjort ennå. SSH tilbake til hovedsystemet og kontroller at det faktisk kjører den nye versjonen av XenServer med en av følgende kommandoer:

cat /etc/redhat-release
uname -a

5. Suksess! Denne bassengmesteren er nå oppgradert. På dette tidspunktet flytter du eventuelle gjester til denne verten etter behov og fortsett til neste XenServer-vert ved å gjenta trinn tre, bortsett fra å erstatte vertsnavnet til den neste verten som skal oppgraderes.

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

6. Fortsett trinn 3 til 5 for de gjenværende slavene i bassenget.

7. På dette tidspunktet er det AVGJØRENDE å ta i bruk en oppdatering til. Citrix ga ut en oppdatering for å løse problemer der tap av data og korrupsjon var mulig under visse omstendigheter.

VENNLIGST BRUK DENNE LATSEN NÅ! Denne oppdateringen krever at XenServer-vertene også startes på nytt. Instruksjoner for å oppnå dette gjennom XenCenter finner du senere i denne artikkelen.

For å oppnå dette gjennom CLI-en til en XenServer-vert, last ned oppdateringen og utsted følgende 'xe'-kommandoer:

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. Når alle vertene i bassenget har blitt oppdatert, må gjestene ha XenServer Guest Tools oppdatert. Trinn for å oppnå dette er på slutten av denne artikkelen.

Bassengoppgradering fra XenCenter

For de som har tilgang til en Windows-maskin for å kjøre XenCenter, kan en Rolling Pool-oppgradering oppnås gjennom XenCenter-applikasjonen.

Fordelen med å bruke XenCenter er mange av oppgavene og kontrollene som måtte gjøres manuelt i de tidligere instruksjonene, vil nå bli håndtert automatisk av XenCenter.

Oppgraderingsveiviseren for rullende basseng i XenCenter har to moduser; manuell og automatisk. I manuell modus må installasjonsprogrammet for XenServer 7 plasseres i hver enkelt XenServer-vert på det tidspunktet den oppgraderes (dvs. en oppstartbar usb eller cd).

Når du bruker automatisk modus, vil veiviseren bruke filer som ligger på en slags nettverksfilressurs som HTTP-, NFS- eller FTP-server. For å bruke denne metoden må installasjonsfilene fra XenServer install iso pakkes ut på den aktuelle nettverksfilserveren og gjøres tilgjengelige for XenServer-vertene.

Denne veiledningen vil ikke beskrive prosessen med å sette opp en HTTP-server, men den vil gå gjennom prosessen med å trekke ut ISO-innholdet for å tillate en automatisk oppgradering.

Pakk ut XenServer Install Files til HTTP Server

Denne delen vil anta at brukeren har en fungerende HTTP-server med en webrot satt til «/var/www/html». Denne delen vil også anta at XenServer 7 iso-filen er lastet ned og ligger i webrotmappen.

Det første trinnet for å sette opp installasjonsfilene for denne artikkelen er å montere iso, slik at installasjonsfilene kan plasseres i webroot. Det andre trinnet er å opprette en mappe for installasjonsfilene og deretter kopiere filene til den mappen.

Alle trinnene kan utføres som følger:

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

På dette tidspunktet, ved å navigere til serverens IP-adresse og xenserver-mappen, skal installasjonsmaterialet vises i nettleseren.

Oppgradering av rullende basseng med XenCenter

1. Det første trinnet er å lese avsnittene under XenServer Pool Upgrade-overskriften på nytt tidligere i dette dokumentet! Dette er ekstremt viktig siden disse avsnittene vil detaljere detaljer om oppgraderingen for å hjelpe overgangen fra eldre versjoner av XenServer.

2. Det første teknologiske trinnet er å sikkerhetskopiere den nåværende tilstanden til bassenget ved å bruke en 'xe'-kommando fra bassengmesteren. Ved å bruke en SSH-tilkobling eller XenCenter-konsoll til Xen-bassenghovedverten, kan følgende 'xe'-kommando kjøres.

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

Med databasen sikkerhetskopiert, anbefales det på det sterkeste at det lages en kopi av masteren, slik at i tilfelle en mislykket oppgradering kan masteren/poolen tilbakestilles til den opprinnelige tilstanden.

3. Sørg for at den nyeste versjonen av XenCenter er installert. Nedlastingskoblingen er som følger: XenServer-7.0.1-XenCenterSetup.exe.

4. Når bassengdatabasen er lagret og den nyeste versjonen av XenCenter installert, kan bassengoppgraderingen begynne. Åpne XenCenter og koble til bassenget som trenger den nye versjonen av XenServer. Når du er koblet til bassengmasteren, naviger til Verktøy-menyen og velg Opgradering av rullende basseng....

5. Sørg for å lese advarslene på den første ledeteksten. Trinnet som er nevnt her er sikkerhetskopieringen av bassengdatabasen som ble utført i trinn én av delen «Rullende bassengoppgradering med XenCenter» i denne artikkelen.

6. Det neste skjermbildet vil be brukeren om å velge bassengene de ønsker å oppgradere. Hvert basseng som XenCenter er koblet til kan velges. For enkelhets skyld er det brukt et lite testbasseng i denne dokumentasjonen.

7. Det neste trinnet lar brukeren velge enten «Automatisk» eller «Manuell»-modus. Igjen går denne artikkelen gjennom den automatiske metoden og antar at en HTTP-server er tilgjengelig og har XenServer ISO-innhold trukket ut i en mappe kalt 'xenserver' på den HTTP-serveren.

8. På dette tidspunktet vil XenCenter kjøre gjennom en rekke kontroller for å sikre at alle verter har de riktige oppdateringene/hurtigreparasjonene, og vil kontrollere at oppgraderingen sannsynligvis vil lykkes.

Avhengig av miljøet er dette sannsynligvis trinnet der problemer oppleves. To problemer ble møtt, men forfatteren på dette tidspunktet. Løsninger ble funnet og forhåpentligvis vil disse hjelpe andre.

Det første problemet som ble opplevd var behovet for to patcher som skulle brukes på XenServer-vertene. XenCenter vil oppnå dette hvis brukeren bestemmer seg for å gjøre det, men som forfatteren og andre har erfart, fullføres ikke alltid dette trinnet på riktig måte og kan forhindre at neste trinn fungerer som det skal.

Hvis XenCenter hevder at alle oppdateringer er brukt, men brukeren mottar «Ugyldig URL til installasjonsfiler» på neste skjermbilde, klarte forfatteren å få feilen til å forsvinne ved å starte master XenServer på nytt.

For å lese mer om problemet, se Citrix-diskusjonen på følgende URL: XenServer 7 Ugyldig URL til installasjonsfiler.

Det andre problemet som ble opplevd på dette tidspunktet var en advarsel fra XenCenter om en lokal VM som ble lagret på master XenServer-verten. Denne lokale VM-en ville hindre XenServer-installasjonsprogrammet i å partisjonere vertene på nytt med det nye GPT-partisjonsskjemaet.

Etter mye leting ble det lagt merke til at en sikkerhetskopi av metadata fra bassenget ble lagret på hovedvertens lokale lagring. Når dette ble flyttet til et annet sted, sluttet installasjonsprogrammet å se noen problemer.

9. Så snart forhåndskontrollene var ute av veien, vil installasjonsprogrammet be om plasseringen av installasjonsfilene. Denne artikkelen bruker en HTTP-server for å levere installasjonsfilene til XenServer-vertene, og som sådan må installasjonsprogrammet informeres om plasseringen av disse filene.

I boksene oppgir du nødvendig serverbaneinformasjon samt legitimasjonen som er nødvendig for å koble til, og trykk deretter Test-knappen for å sikre at XenCenter har tilgang til filene. Hvis det grønne merket vises, er installasjonsmediet funnet og kan brukes.

10. Når alt er klart, klikker du på «Start oppgradering»-knappen. Dette vil starte prosessen som starter med bassengmesteren.

MERK – Sørg for at administrasjonsnettverket for XenServer-vertene har DHCP. Når installasjonsprogrammet starter vertene på nytt, vil det forsøke å få en IP-adresse via DHCP.

11. På dette tidspunktet vil det være lurt å begynne å spise lunsj eller følge opp andre oppgaver. Denne prosessen vil ta en stund. Hvis tilgang til en lokal monitor eller KVM-system er tilgjengelig på XenServer-vertene, kan administratoren se på installasjonsprosessen og se om alt går som det skal.

12. Installasjonsprosessen på denne fire vertstestklyngen tok omtrent to timer å fullføre. Når installasjonen er fullført, sørg for å oppgradere gjesteverktøy på alle gjestene i bassenget.

Sørg også for å bekrefte at bassenget har blitt fullstendig oppgradert ved å se på bassengets «Generelt»-fane i XenCenter eller ved å koble til hver XenServer-vert manuelt.

Noen oppfølgingsoppgaver kan være nødvendige også på dette tidspunktet. Forfatteren opplevde noen problemer med de virtuelle grensesnittene på noen av gjestene da han prøvde å starte gjestene etter bassengoppgraderingen.

Det viste seg at noen av nettverkskonfigurasjonene for bassenget ikke ble oversatt gjennom installasjonsprosessen. Serverne hadde alle 4 fysiske grensesnitt (PIF-er) og på to av serverne sluttet ett par av PIF-ene å aktiveres ved oppstart.

Dette forårsaket en betydelig mengde sorg, men heldigvis hadde andre opplevd lignende problemer, og det var lett å finne en løsning. Serverne det var snakk om var Dell Power Edge 2950-er med integrerte Broadcom BCM5708 NIC.

Alt som var nødvendig var å tilbakestille systemene til XenServer 6.5 og deretter bruke oppdateringen fra Dells nettsted. Forfatteren anbefaler på det sterkeste å sikre at alle fastvareoppdateringer har blitt brukt på alle systemer som vil bli oppgradert til den nyere XenServer-utgivelsen for å forhindre problemer.

For å lese mer om dette emnet, vennligst se gjennom emnet på Citrix sin diskusjonsside: XenServer 7 Upgrade No Onboard Network.

Det opprinnelige problemet før oppgradering av fastvare på BCM5708 NIC

Merk fastvareversjonen samt PIF-tildelingen som ikke fungerer.

interface-rename -l

Den korrigerte fastvaren og PIF-tildelingen ved hjelp av verktøyet for grensesnittgi nytt navn

Merk fastvaren har blitt oppdatert og PIF-rekkefølgen er også riktig.

interface-rename -l

13. På dette tidspunktet skal alle XenServer-vertene være tilgjengelige og tilbake i riktig bassengkonfigurasjon. På dette tidspunktet er det AVGJØRENDE å bruke en oppdatering til. Citrix ga ut en oppdatering for å løse problemer der tap av data og korrupsjon var mulig under visse omstendigheter. VENNLIGST BRUK DENNE PATchen NÅ!

Bruker XenServer 7 Critical Patch XS70E004

Akkurat som det kreves i den nye installasjonsartikkelen, vil en bassengoppgradering også kreve at denne kritiske XenServer 7-oppdateringen brukes på bassenget for å sikre dataintegritet.

For å bruke oppdatering, følg trinn 20 til trinn 26 i fersk XenServer 7 denne veiledningen her: Applying XenServer 7 Critical Patch.

Dette avslutter prosessen med å oppdatere/installere XenServer til verter. På dette tidspunktet bør lagringslagre og virtuelle maskiner importeres på nytt, konfigureres og testes.

Den neste delen vil dekke den siste oppgaven med å oppdatere XenServer gjesteverktøy på de virtuelle gjestene.

Oppdaterer XenServer Guest-Tools

1. Den siste oppfølgingsoppgaven er å sikre at gjester kan startes på nytt, samt sikre at de har de nyeste gjesteverktøyene installert. Dette kan enkelt oppnås ved å følge de neste par trinnene.

2. Det første trinnet er å koble gjesteverktøyene ISO til DVD-stasjonen til en av de virtuelle gjestene.

3. Når XenServer kobler guest-tools.iso til gjesten, sørg for at gjesten gjenkjenner den nye disken. Dette eksemplet vil gå gjennom en Debian-gjest og installasjonen av verktøyene.

I utdataene nedenfor ble gjesteverktøy-disken tilordnet som 'xvdd'.

4. Denne enheten kan raskt monteres ved hjelp av monteringsverktøyet som følger:

mount /dev/xvdd /mnt

5. Når enheten er montert, kan dpkg brukes til å installere de nye gjesteverktøyene som følger:

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

6. Under installasjonen vil de riktige filene bli installert og xe-demonen vil bli startet på nytt på vegne av systemene.

For å bekrefte gjennom XenCenter at oppdateringen var vellykket, gå til «Generelt»-fanen for gjestemaskinen og se etter egenskapen merket «Virtualiseringstilstand:».

Whoo... Hvis du har overlevd så lenge, er forhåpentligvis XenServer 7 installert, lappet, og gjestene blir også oppdatert! Hvis du har spørsmål eller problemer, vennligst legg inn kommentarene nedenfor, så hjelper vi deg så snart som mulig.