Hva er servervirtualiseringsprogramvare?

Sist oppdatert:
23. oktober 2024

Hva er servervirtualiseringsprogramvare?

Programvare for servervirtualisering muliggjør opprettelse og administrasjon av virtuelle maskiner (VM-er) på en fysisk server der hver virtuell maskin fungerer som en uavhengig server. Servervirtualisering lar IT maksimere det fulle potensialet til dagens kraftige fysiske servere. Hver virtuelle maskin på den fysiske maskinen opererer uavhengig av de andre virtuelle maskinene og kjører sitt eget operativsystem og applikasjoner.

Servervirtualiseringsprogramvare fungerer som et lag (vanligvis kalt hypervisor) mellom den fysiske maskinvaren og de virtuelle maskinene, og abstraherer maskinvareressursene og presenterer dem for de virtuelle maskinene som virtualisert maskinvare. Hypervisoren tildeler maskinvareressurser som CPU, minne, lagring og nettverksressurser til hver virtuell maskin. Vanligvis krever hypervisorer 5 til 10 % av den fysiske maskinens ressurser for å kjøre.

Hypervisortyper og brukstilfeller

Det finnes to primære hypervisortyper

Type 1 Hypervisor

Type 1-hypervisorer brukes vanligvis i bedriftsmiljøer og installeres direkte på fysisk maskinvare (dvs. « bare metal »). De gir virtuelle maskiner direkte tilgang til maskinvareressurser, administrerer dynamisk tildeling av maskinvareressurser og lar hver virtuell maskin operere uavhengig av de andre. Type 1-hypervisorer inkluderer VMware ESXi™, Microsoft® Hyper-V® og Citrix Hypervisor™ (tidligere XenServer®).

Bruksområder for type 1-hypervisorer inkluderer:

  • Servervirtualisering, der en fysisk maskin kjører flere virtuelle maskiner som fungerer som servere, noe som forbedrer utnyttelsen av maskinvareressurser og effektiv distribusjon og administrasjon av virtuelle servere;
  • Opprette og administrere storskala infrastruktur i et datasenter, som muliggjør effektiv maskinvareutnyttelse og fleksibel allokering av dataressurser;
  • Cloud Computing/Infrastructure as a Service (IaaS), der hypervisorer gjør det mulig for IaaS-leverandører å opprette og administrere fleksible og lett skalerbare databehandlingsmiljøer;
  • Høy tilgjengelighet og feiltoleranse, der hypervisorer tillater rask oppstart av virtuelle servere når flere brukere er aktive eller når en vert svikter;
  • Programvareutvikling og -testing, der utviklere og/eller programvarekodetestere raskt kan replikere et produksjonsmiljø og teste programvarekompatibilitet på en rekke operativsystemer og konfigurasjoner uten å påvirke vertsmiljøet.

Type 2 Hypervisorer

Type 2-hypervisorer, som vanligvis brukes i skrivebords- eller arbeidsstasjonsmiljøer, kjører oppå vertsoperativsystemet og gir virtualiseringsmuligheter til den virtuelle gjestemaskinen, som kan kjøre på et annet operativsystem enn den fysiske maskinen. I motsetning til type 1-hypervisorer, som dynamisk justerer maskinvareressursene for de virtuelle maskinene de administrerer, tildeler brukeren fysiske ressurser som RAM til den virtuelle maskinen med type 2-hypervisorer. Hvis den virtuelle maskinen opplever ytelsesproblemer, må brukeren justere ressursallokeringen. Type 2-hypervisorer inkluderer VMware® Workstation, Oracle® VirtualBox og Microsoft Virtual PC.

Bruksområder for type 2 hypervisorer inkluderer:

  • Desktop virtualisering , der en bruker kjører en virtuell maskin på sitt lokale system for å bruke eldre applikasjoner, eller som en virtuell maskin på avstand for å isolere databehandlingsmiljøer (for eksempel arbeidsrelatert databehandling fra personlig databehandling);
  • Programvareutvikling, der en utvikler skriver kode på sin lokale enhet ved hjelp av et annet operativsystem enn operativsystemet på sin fysiske maskin, eller når en utvikler ønsker å isolere sin utviklingsmaskin fra sin fysiske maskin;
  • Programvaretesting og feilsøking, der én enkelt maskin er tilstrekkelig for testformål (dvs. ikke et komplett produksjonsmiljø);
  • Utdanning og opplæring, der en student kan øve og eksperimentere med forskjellige operativsystemer, programvarekonfigurasjoner og nettverksinnstillinger uten å trenge dedikert maskinvare for hver enkelt;
  • Demonstrasjon og presentasjon, der en presentatør eller salgsrepresentant kan kjøre programvaredemoer på forespørsel ved hjelp av en enkelt fysisk maskin.

Merk at hypervisorer av type 1 – ikke type 2 – brukes til å muliggjøre servervirtualisering i produksjonsmiljøer på grunn av deres evne til å justere ressursallokering dynamisk.

Alternative tilnærminger til servervirtualiseringsprogramvare

Alternative tilnærminger til virtuell serverprogramvare inkluderer paravirtualisering og virtualisering på OS-nivå (også kjent som containerisering).

Paravirtualisering

I paravirtualisering modifiseres gjesteoperativsystemet (OS) for å kommunisere direkte med den underliggende hypervisoren, slik at gjesteoperativsystemet kan være klar over at det kjører i et virtualisert miljø, slik at det kan foreta rettidige anrop til hypervisoren angående ressursbehov når det kjører visse operasjoner.

Ved å kommunisere direkte med hypervisoren reduserer paravirtualisering overhead knyttet til oppgaver som minnehåndtering, I/O-operasjoner og systemkall, og fungerer dermed bedre enn full virtualisering i visse scenarier.

Fordi paravirtualisering krever at det gjøres endringer i gjesteoperativsystemet, er det ikke sikkert at det er kompatibelt med alle operativsystemer rett ut av esken. To virtualiseringsplattformer som støtter paravirtualisering er VMware vSphere® og Xen (som er gratis og åpen kildekode). Alternativt kan kildekoden til gjesteoperativsystemet endres for å aktivere paravirtualisering.

Når paravirtualisering brukes til servervirtualisering, fungerer det best for disse brukstilfellene:

  • I/O-intensive arbeidsbelastninger, der applikasjonsdata ofte utveksles med en sekundær lagringsenhet;
  • Der det kreves høy nettverksgjennomstrømning (f.eks. båndbreddetunge applikasjoner);
  • Sanntidsapplikasjoner (videokonferanser, VoIP, online spilling, noen e-handelsapplikasjoner, direktemeldinger, teamsamarbeid);
  • Høyytelsesdatabehandling;
  • Eldre applikasjoner.

Virtualisering/containerisering på OS-nivå

OS-nivåvirtualisering, også kjent som containerisering, muliggjør opprettelse og administrasjon av flere isolerte containere innenfor en enkelt operativsysteminstans. Disse containerne er ikke "ekte" virtuelle maskiner fordi de ikke inkluderer et operativsystem. I stedet gir hver container et separat miljø med sin egen applikasjon og isolerte ressurser, som CPU, minne og filsystemer, der alle containere deler verts-OS-kjernen – i motsetning til en "tradisjonell" virtuell maskin, der virtuelle maskiner som kjører på verten ikke trenger å bruke samme operativsystem som verten.

Denne tilnærmingen, som eliminerer behovet for å kjøre flere operativsystemer på én fysisk server, betyr at containere bruker færre ressurser enn fullverdige virtuelle maskiner, men tilbyr ikke samme fleksibilitet knyttet til operativsystemer. Docker®, en av de tidligste containerteknologiene, er Linux-basert, men adresserer denne reduserte fleksibiliteten ved å klargjøre containere på Windows®- og MacOS®-maskiner ved hjelp av en mikro-Linux VM som kjører på den fysiske maskinen.

Containere brukes ofte til å distribuere og kjøre applikasjoner på en bærbar og skalerbar måte. Hver container innkapsler en applikasjon og dens avhengigheter, noe som gjør det enklere å pakke, administrere og distribuere programvare. Containere gir også isolasjon mellom applikasjoner, noe som eliminerer applikasjonskonflikter selv når applikasjonene kjører på samme vertsserver.

Når containerisering brukes til servervirtualisering, fungerer den best for disse brukstilfellene:

  • DevOps-aktiviteter, som testing og distribusjon av applikasjoner;
  • Distribuere applikasjoner i multiskymiljøer, slik at disse appene kan kjøre konsekvent i hvert miljø;
  • Optimalisering av infrastruktur ved å eliminere flere operativsystemer, noe som muliggjør forbedret skalerbarhet og mer effektiv ressursallokering;
  • Testing og feilsøking av applikasjoner;
  • Støtte for eldre applikasjoner, inkludert enklere migrering og integrasjon med moderne systemer.

Hva er det beste valget for sluttbrukerapplikasjoner?

Når man leverer applikasjoner til ansatte, er servervirtualisering ved hjelp av en type 1-hypervisor den vanligste tilnærmingen. Hvorfor? Virtuell skrivebordsteknologi ble spesialbygd for å levere virtuelle skrivebord som inneholder produktivitetsapplikasjoner til ansatte, med mange funksjoner som gjør det mulig for IT-team å administrere serverressurser og optimalisere sluttbrukeropplevelsen.

Virtuell teknologi som bruker en type 2-hypervisor brukes vanligvis av enkeltpersoner til brukstilfellene beskrevet i dette innlegget.

Paravirtualisering brukes oftest i et bedriftsmiljø for spesifikke applikasjoner der respons og ytelse er avgjørende.

Containere brukes primært av programvareutviklings- og DevOps-team for å gjøre jobben enklere. Siden sluttbrukerteam har investert betydelig i virtualiseringsteknologi ved hjelp av Type 1-hypervisorer, er det lite insentiv til å gå over til containerteknologi bortsett fra i uvanlige brukstilfeller som forretningskritiske eldre applikasjoner .

Men – hvis du er en Windows-ISV som ser etter et alternativ til servervirtualiseringsprogramvare for å levere applikasjonene dine til kunder, bør du vurdere GO-Global.

GO-Global® lar uavhengige programvareleverandører publisere Windows-applikasjoner fra enhver offentlig, privat eller hybrid sky, til enhver enhet som støtter en nettleser. Ved å bruke GO-Global kan IT levere Windows-applikasjoner til opptil 70 % lavere priser enn VDI-løsninger fra Citrix® og VMware. Til tross for den lave kostnaden leverer GO-Global skalerbarhet på bedriftsnivå, men er enkel å installere, konfigurere og bruke, med betydelig mindre teknologiske kostnader som kreves for implementering.

For å lære mer, be om en demo eller last ned en gratis 30-dagers prøveversjon.