Hva er en virtuell maskin og hvorfor er det nødvendig? Installere den virtuelle maskinverktøykassen. Interaktivt arbeid i 3D-pakker

Vi fikk vite litt omi, lærte hvordan vi aktiverer denne funksjonen. I dag vil vi fortsette emnet, vi vil installere virtuelle operativsystemer på en datamaskin, konfigurere ressurser og starte.

Denne utgaven gir en kort oversikt over to av de mest populære skallene for å lage og bruke virtuelle maskiner. Disse programmene kalles også hypervisorer.

Virtuelle maskiner kan enkelt og uavhengig installeres på vanlige hjemmedatamaskiner, men de er også mye brukt på servere.

Virtuelle servere med virtuelle eksterne skrivebord er laget for å løse ulike oppgaver på én fysisk datamaskin.

Hva er en virtuell maskin på en PC og dens formål

For personlig bruk er det ganske egnet hvis du bestemmer deg for å mestre det nye operativsystemet på egen hånd. Nå trenger du ikke ha en ekstra datamaskin. Det er ikke nødvendig å fjerne den kjente Windows. Du kan studere mens du ser gjennom e-post og sosiale nettverk og samtidig få ferdigheter i å installere, konfigurere nye, nyttige og interessante programmer. Slik tester utviklere driften av applikasjoner i nye og gamle miljøer, tester driften av både operativsystemer og programvare og maskinvare.

Men hovedhensikten er kanskje ikke dette, men i den åpenbare økonomien. Det er ikke forgjeves at denne teknologien har blitt utviklet i lang tid. For at servere skal fungere, trenger du først og fremst produktivt utstyr, som er dyrt. En typisk server bruker ressursene sine et sted i 40-60%. Og hvis det er to eller flere slike servere, viser det seg at halvparten av kapasiteten er ledig.

For å bli kvitt klynging, ikke implementer en haug med fysiske servere og virtuelle maskiner er ment. For eksempel kan en e-postserver, en DNS-server, en domenekontroller og en proxy-server installeres på én datamaskin. Med riktig beregning og konfigurasjon vil du ha fire servere som spinner på én fysisk server. Den fysiske datamaskinen vil kjøre med optimal kraft.

Hvordan setter jeg opp en Hyper-V virtuell maskin for Windows?

Programmet - hypervisoren er designet for å installere, konfigurere, kjøre og administrere virtuelle maskiner. I Windows 10 laget utviklerne sine egne, innebygd og du trenger ikke kjøpe noe på denne måten. Som standard er denne snapin-modulen ikke synlig i operativsystemet, og vi må installere den som en ekstra komponent. For å gjøre dette, i "Kontrollpanel" finner vi lenken "Programmer", og i den "Installer flere Windows-komponenter"

Vi merker av de nødvendige komponentene med avmerkingsboksene:

Hypervisorinstallasjonen starter og endringene tas i bruk. Systemet vil be om omstart.

Når du starter på nytt, ikke glem å sjekke om prosessorvirtualisering er aktivert i BIOS!

Hva mer trenger vi for å kjøre et virtuelt operativsystem? Vi trenger bare å finne iso-bildet hennes og laste det ned til datamaskinen. Jeg har en Linux Fedora-distribusjon for astronomielskere i form av Iso. Jeg lurer på hva dette operativsystemet er? La oss finne Hypervisoren vår først. For å gjøre dette, klikk på "Start"-menyen, gå ned og finn "Administrasjonsverktøy".

Du kan vise snarveier på skrivebordet for enkelhets skyld. Manageren er designet for å administrere virtuelle maskiner. Og «rask skapelse» taler for seg selv. Vi klikker på denne snarveien. Som standard ber systemet deg om å lage en Windows 10 eller Linux-Ubuntu virtuell maskin. Men i dag skal vi se etter et annet bilde, klikk på "Endre installasjonskilde":

Ikke glem å spesifisere nettverksadapteren og navnet på den virtuelle maskinen i "ekstra parametere".

I "Explorer" ser vi etter vårt nødvendige bilde av operativsystemet:

Så trykker vi på den store blå knappen:

Virtuell maskin Hyper -V opprettet med standardparametere, vanligvis minimum systemkrav for å kjøre. Systemet velger selv antall prosessorkjerner, tildeler den optimale mengden RAM, lager en VIRTUELL harddisk basert på tilgjengelig plass. Plasseringen av den virtuelle maskinen velges også automatisk på disken. Men du kan endre alle innstillingene for deg selv. Før du kobler til, gå til:

Alle parametere kan endres; vi leser nøye hva som er ment og til hvilket formål:

Deretter kan du koble til.

Som ethvert operativsystem krever et virtuelt et også installasjon. Alt er det samme som i virkeligheten :)

Typisk Linux-installasjon:

Etter å ha lastet inn det grafiske KDE-skallet, vil vi fortsette å installere distribusjonssettet på den VIRTUELLE harddisken ved å velge riktig snarvei:

Den virtuelle Hyper-V-maskinen styres ved å klikke på knappene øverst i panelet:

Knappene lar deg starte, pause, slå av, opprette et sjekkpunkt og eksportere den virtuelle maskinen. Alt er som i en ekte datamaskin :). Hyper-V vil fungere godt på serverutgaver av Windows. Sant nok, der må du kunne konfigurere mange ting. Og denne hypervisoren krasjet for meg et par ganger etter store kumulative oppdateringer av "dusinet". Den måtte installeres på nytt.

VM Workstation virtuell maskinoversikt, hvordan du konfigurerer og installerer

En annen populær løsning er VM Ware Workstation. Dette er en veldig fleksibel programvareløsning, jeg hadde ingen problemer med den. Det er ikke gratis. Men den er lett og fungerer feilfritt, den var enkel å konfigurere. Last ned og konfigurer programmet. På de siste utgavene av Windows 10 vil ikke hypervisoren starte, programmet vil generere en feil. Hvis du får en feilmelding når du starter den virtuelle maskinen for første gang vmware-spiller og enhet / legitimasjonsvakt er ikke kompatible, først .

Vi er enig med veiviserens instruksjoner; etter installasjon, start datamaskinen på nytt. Vi finner lanseringsfilen gjennom "Start"-menyen og klikker på den:

Vi åpner programmet, lager en ny virtuell maskin.

Vi velger vanlig type installasjon:

Videre vil veiviseren, som forventet, tilby å installere operativsystemet. Han tilbyr å gjøre dette enten fra en CD/DVD-plate eller fra en ISO-fil. Jeg har en fil på disken, og jeg skal bruke den. I dette eksemplet installerer jeg Windows XP.

Når du bruker "hurtiginstallasjon", vil parametere som datamaskinnavn, tastaturoppsett, produktnøkkel, brukernavn, konto bli installert som standard. Dette er ikke alltid praktisk, og disse dataene blir korrigert etter installasjon, eller på tidspunktet for å lage et bilde av operativsystemet. Men i sistnevnte tilfelle må du gå gjennom alle stadiene manuelt – som på en fysisk datamaskin.

Ikke glem å spesifisere navnet på den virtuelle maskinen og dens plassering i neste vindu.

Så vi kom til nøkkelinnstillingene. Du må spesifisere størrelsen på den VIRTUELLE harddisken:

Nesten klar. For de fleste operativsystemer velger hypervisor de optimale størrelsene på både minne og harddisk, men de kan endres senere:

Vi starter den virtuelle maskinen, hvoretter installasjonen av operativsystemet starter. Vær oppmerksom på at eksterne enheter koblet til en fysisk datamaskin også kan brukes i en virtuell maskin. Noen av dem (flash-stasjoner, eksterne harddisker) må kobles til manuelt via menyen "Virtuell maskin" - "Tilkoblet maskinvare"

Å administrere virtuelle maskiner er enkelt og greit. Det er også et kontrollpanel øverst i vinduet:


Windows XP virtuell maskin på Windows 10, video

La oss se et eksempel på å lage en virtuell maskin i en kort video:

Ikke noe komplisert! Lykke til!

Hyper-V Manager Console lar deg utføre ulike handlinger for å administrere dine virtuelle maskiner. Denne delen beskriver kort tre trinn:

  • Eksport og import av virtuelle maskiner
  • Jobber med øyeblikksbilder
  • Arbeide med direkte migrering (ny funksjon i Hyper-V R2)

Eksport og import av virtuelle maskiner

Hyper-V Manager Console lar deg eksportere en virtuell maskin fra én Hyper-V-server for import til en annen Hyper-V-server. Denne funksjonaliteten lar deg migrere en virtuell maskin fra en vertsdatamaskin til en annen ved å bruke live migreringsteknologi.

Prosessen med å eksportere en virtuell maskin fra en Hyper-V-server og importere den til en annen er en to-trinns prosess:

  1. Eksporter en virtuell maskin fra den første Hyper-V-serveren som en samling av eksporterte filer og mapper
  2. Importer de eksporterte filene og mappene til Hyper-V-målserveren.

Trinnene for å eksportere en virtuell maskin er kort beskrevet nedenfor.

  1. Slå først av den virtuelle maskinen du vil flytte. For å slå av en virtuell maskin, velg den virtuelle maskinen i Hyper-V Manager-konsollen, og klikk deretter på Slå av i handlingsruten.
  2. Bestem stedet der den virtuelle maskinen skal eksporteres. Eksportstedet kan ha følgende verdier:
    • En midlertidig mappe på en ekstern harddisk for å overføre de eksporterte virtuelle maskinfilene fra den første Hyper-V-serveren til målserveren.
    • En delt mappe på en nettverksfilserver for midlertidig lagring av de eksporterte virtuelle maskinfilene før flytting til målserveren.
    • En delt mappe på målserveren som representerer den endelige migreringsplasseringen til den virtuelle maskinen.
  3. Velg den virtuelle maskinen som skal eksporteres, og klikk på Eksporter-kommandoen i handlingspanelet. I vinduet "Eksporter virtuell maskin" som åpnes, skriv inn banen til eksportstedet eller velg det. Hvis målmappen er en nettverksdeling, spesifiser UNC-banen for den.
  4. Klikk på Eksporter-knappen for å starte eksporten.

Når eksporten er fullført, vil følgende filer og mapper være tilstede på stedet:

  • Confix.xml En XML-fil som inneholder informasjon om kildeplasseringene til alle VHD-er som er konfigurert for den eksporterte virtuelle maskinen.
  • Virtuelle maskiner Mappen som inneholder eksportfilen med navnet .exp. Denne filen inneholder informasjon om den eksporterte virtuelle maskinen og konverteres til en XML-konfigurasjonsfil under import.
  • Virtuelle harddisker Mappe som inneholder virtuelle harddisker (VHD-er) for den eksporterte virtuelle maskinen.
  • Øyeblikksbilder Mappe som inneholder informasjon om øyeblikksbilder av virtuell maskin, inkludert differensielle diskfiler for øyeblikksbilder (AVHD-filer) og informasjonsfiler for øyeblikksbildetilstand (VSV- og BIN-filer).

Etter å ha eksportert den virtuelle maskinen og kopiert filene og mappene til målserverplasseringen, kan du importere dem og dermed gjenskape den virtuelle maskinen på målserveren.

Når du utfører en import, må du forstå følgende aspekter. For det første er import bare mulig for virtuelle maskiner eksportert fra en annen Hyper-V-server. Import av virtuelle maskiner fra Virtual Server 2005 eller Virtual PC er ikke mulig. Alle de tre servervirtualiseringsproduktene (Hyper-V, Virtual Server og Virtual PC) bruker samme VHD-filformat, men konfigurasjonsinformasjonen for virtuell maskin lagres annerledes. I tillegg har de også andre inkompatible funksjoner.

For det andre kan prosessen med å importere en eksportert virtuell maskin bare gjøres én gang. Dette er fordi eksporten konverterer EXP-filene til XML-konfigurasjonsfiler under importen. I tillegg, hvis importprosessen mislykkes eller ikke fungerer riktig (for eksempel hvis de eksporterte filene er importert til feil plassering), er den eneste måten å gjenopprette på å slette den virtuelle maskinen, flytte VHD-filene til riktig plassering , og gjenopprett den virtuelle maskinen med de samme innstillingene. ...

Trinnene for å importere eksporterte virtuelle maskinfiler og mapper er kort beskrevet nedenfor.

  1. Sørg for at de eksporterte filene og mappene er på riktig plassering på målserveren.
  2. Koble til målserveren i Hyper-V Manager-konsollen, og klikk deretter Importer virtuell maskin i handlingsruten.
  3. I vinduet "Importer virtuell maskin" som åpnes, skriv inn banen til plasseringen til de eksporterte filene og mappene, eller velg den.
  4. Klikk på Importer-knappen for å starte importen.

Etter å ha importert den virtuelle maskinen, prøv å starte den og kontroller at den fungerer som den skal.

Jobber med øyeblikksbilder

Et øyeblikksbilde er en visning av tilstanden og innstillingene til en virtuell maskin på et bestemt tidspunkt. Hyper-V lar deg ta øyeblikksbilder av virtuelle maskiner og tilbakestille maskiner til en tidligere tilstand. Du kan for eksempel installere et gjeste-OS i en virtuell maskin, ta et øyeblikksbilde, gjøre systemkonfigurasjonsendringer, og deretter tilbakestille systemet til øyeblikksbildet og forkaste alle endringer.

Øyeblikksbilder kan tas mens den virtuelle maskinen kjører, lagres eller slås av. Du kan ikke ta øyeblikksbilder av en suspendert virtuell maskin. En bruker kan ta flere øyeblikksbilder av en virtuell maskin for å lage et øyeblikksbildetre - en sekvens av øyeblikksbilder tatt til forskjellige tider. Dette treet administreres ved å slette individuelle øyeblikksbilder eller hele det underordnede treet. For å gå tilbake til et av trebildene, bruk det på den virtuelle maskinen.

Øyeblikksbilder er spesielt nyttige for produkttesting og utvikling. Du kan for eksempel installere en applikasjon du utvikler på en virtuell maskin, ta et øyeblikksbilde og begynne å bruke applikasjonen. Hvis det krasjer, kan du gå tilbake til øyeblikksbildet og prøve å gjenskape handlingene som førte til krasjet, noe som kan rette opp årsaken til feilen.

MerkØyeblikksbilder brukes vanligvis ikke i produksjonsmodus fordi de ikke erstatter de tilsvarende sikkerhetskopierings- og gjenopprettingsprosessene. For eksempel, mens kjøring av domenekontrollere i virtuelle maskiner støttes av Hyper-V, kan det å ta øyeblikksbilder av kontrollerene og deretter bruke dem forårsake replikeringsproblemer og anbefales derfor ikke i et produksjonsmiljø.

Hyper-V Manager Console lar deg ta øyeblikksbilder av virtuelle maskiner. For å gjøre dette, velg den virtuelle maskinen i Virtual Machines-ruten og klikk på Snapshot-elementet i Actions-ruten. Som vist i figur 2-17, etter at et nytt øyeblikksbilde er tatt, vises ikonet i Snapshots-panelet i midtkonsollen. Navnet på det nye øyeblikksbildet inneholder navnet på den virtuelle maskinen det ble tatt for, samt dato og klokkeslett for øyeblikksbildet.

Figur 2-17... Øyeblikksbilder av den virtuelle maskinen.

Som vist i figur 2-17, når du tar et øyeblikksbilde av den virtuelle maskinen, vises en grønn pil i Snapshots-ruten som sier Nå. Denne pilen indikerer gjeldende konfigurasjon av den virtuelle maskinen.

Du kan også bruke Virtual Machine Attachment-verktøyet til å ta øyeblikksbilder av en virtuell maskin. Dette kan gjøres på to måter:

  • Velg Snapshot-kommandoen fra Handling-menyen.
  • Klikk på Snapshot-ikonet på verktøylinjen.

Når du oppretter et øyeblikksbilde ved hjelp av Virtual Machine Attachment Tool, vises dialogboksen Snapshot Name, som ber deg angi et vennlig navn for det nye øyeblikksbildet.

Alle øyeblikksbildefiler lagres som standard i følgende mappe på Hyper-V-serveren.

% SystemRoot% \ ProgramData \ Microsoft \ Windows \ HyperV \ Snapshots

Denne plasseringen kan endres separat for hver virtuell maskin ved å konfigurere innstillingene.

Når du tar et øyeblikksbilde av en maskin, opprettes følgende filtyper:

  • XML-konfigurasjonsfil for virtuell maskin
  • VM lagrede tilstand VSV-filer
  • BIN-filer med innhold i virtuell maskinminne
  • Snapshot Differensial Disk AVHD-filer

Som vist i figur 2-17, når du velger et øyeblikksbilde i området Snapshots, viser handlingspanelet de forskjellige handlingene du kan utføre på det øyeblikksbildet. Disse trinnene er beskrevet nedenfor.

  • Søke om Denne handlingen kopierer tilstanden til den virtuelle maskinen fra det valgte øyeblikksbildet til den aktive virtuelle maskinen. Dette vil returnere den virtuelle maskinen til tilstanden beskrevet i det valgte øyeblikksbildet. Hvis du velger denne handlingen, vil alle ulagrede data i den aktive virtuelle maskinen gå tapt. Derfor, før du bruker tilstanden i øyeblikksbildet, blir du bedt om å lage et nytt øyeblikksbilde av gjeldende tilstand til den virtuelle maskinen.
  • Gi nytt navn Denne kommandoen lar deg endre det beskrivende navnet på det valgte øyeblikksbildet.
  • Slett øyeblikksbilde Denne kommandoen sletter bare filene som er knyttet til det valgte øyeblikksbildet. Andre bildefiler vil ikke bli slettet. Når bildet er slettet, vil det ikke være mulig å gå tilbake til tilstanden beskrevet i det. Dette endrer ikke gjeldende tilstand til den aktive virtuelle maskinen.
  • Slett øyeblikksbildetre Denne handlingen sletter det valgte øyeblikksbildet og alle øyeblikksbilder som er hierarkisk underordnet det. Dette endrer ikke gjeldende tilstand til den aktive virtuelle maskinen.

MerkØyeblikksbilder er skrivebeskyttet. De eneste parameterne for et øyeblikksbilde er navnet og en vedlagt beskrivelse.

Når du velger en virtuell maskin i Virtuelle maskiner-ruten, viser handlingsruten følgende oppgaver:

  • Øyeblikksbilde Denne handlingen lar deg ta et nytt øyeblikksbilde av den virtuelle maskinen.
  • Komme tilbake Denne handlingen bruker det forrige øyeblikksbildet som ligger rett under den grønne Nå-pilen i Snapshots-panelet.

Råd Når du sletter hele øyeblikksbildetreet, vil det siste øyeblikksbildet bli brukt på den virtuelle maskinen som kjører. For å få den første konfigurasjonen av en virtuell maskin, må du ta det første øyeblikksbildet etter å ha konfigurert det, men før du gjør noen endringer for å teste konfigurasjonen. Dette lar deg bruke det første (originale) øyeblikksbildet før du sletter øyeblikksbildetreet for å tilbakestille den virtuelle maskinkonfigurasjonen til dens opprinnelige tilstand.

Ytelsen til virtuelle maskiner påvirkes ikke bare av konfigurasjonen av den fysiske serveren, men også av innstillingsparametrene til selve den virtuelle maskinen. Følgende avsnitt gir retningslinjer du bør vurdere når du konfigurerer virtuelle maskiner i Hyper-V.

Endre filplasseringene for den virtuelle harddisken og standard datamaskinkonfigurasjoner

Endre standardplasseringene der de virtuelle harddiskfilene og konfigurasjonene for virtuelle maskiner er lagret. Disse filene er som standard lagret på disken med det installerte operativsystemet. For best ytelse, flytt dem til en annen stasjon på SAN hvis mulig. Hvis SAN-lagring ikke er konfigurert, bruk en annen intern failover-disk eller ikke-OS-kompatible disker som kan dedikeres helt til lagring av virtuell maskindata.

Installer integrasjonstjenester

Den første (og sannsynligvis viktigste) anbefalingen for virtuelle maskiner er å umiddelbart installere Hyper-V Integration Services hvis operativsystemet for den virtuelle maskinen støttes. Etter det bør du oppdatere integrasjonstjenestene om nødvendig.

Fjern tilleggsprogrammer for virtuelle maskiner og komprimer virtuelle harddisker

Når du migrerer virtuelle maskiner fra Virtual PC eller Virtual Server 2005 R2, bør du fjerne tilleggene for den virtuelle maskinen og krympe den virtuelle harddisken før du flytter disken til Hyper-V-serveren.

Optimaliser skjermytelsen

For optimal visning i en virtuell maskin, sørg for at skjermgrensesnittet er satt til "Maksimal ytelse" slik at maskinvareakselerasjon er satt til "Full".

Konfigurer faste VHD-er

Konfigurer faste VHD-er i stedet for dynamisk ekspanderende disker. Dette forbedrer ytelsen, minimerer fragmentering og gjør det enklere å administrere fysisk diskplass. Før du oppretter en ny virtuell harddisk, bør du defragmentere den.

Bruk virtuelle SCSI-adaptere for datastasjoner

Den virtuelle Hyper-V-maskinen må starte opp fra den virtuelle IDE-kontrolleren, men da kan virtuelle SCSI-adaptere brukes til å koble til ekstra virtuelle harddisker Selv om forskjellene mellom den virtuelle IDE-kontrolleren og den virtuelle SCSI-kontrolleren i Hyper-V er minimale (med integrasjonstjenester installert ), kan flere VHD-er av større størrelse kobles til den virtuelle SCSI-kontrolleren (4 kontrollere med 64 virtuelle disker, som er 256 disker per maskin). Derfor, for å bruke mer enn fire virtuelle disker per maskin, bruk en SCSI-kontroller.

Tildel CPU-ressurser basert på tiltenkt bruk

For å sikre tilstrekkelige CPU-ressurser på den fysiske serveren, bør du bestemme ytelsen til den virtuelle maskinen når du håndterer de riktige arbeidsbelastningene. Som standard behandler Hyper-V-serveren alle virtuelle maskiner på samme måte. I praksis kan denne tilnærmingen være en irrasjonell løsning. Når du tildeler CPU-ressurser på en fysisk maskin, er det viktig å ikke overskride grensen ved å allokere flere ressurser på den fysiske maskinen enn det som er tilgjengelig. Den neste versjonen av System Center Virtual Machine Manager (SCVMM 2008) vil spille en nøkkelrolle i overvåking av virtuell maskinytelse.

Følgende figur viser prosfor en virtuell maskin:


Pri den forrige figuren er beskrevet nedenfor:

  • Reserver for virtuelle maskiner Brøkdelen av logisk CPU som er dedikert til å kjøre en virtuell maskin. Når virtuelle maskiner starter, reduseres den tilgjengelige kapasiteten på Hyper-V-serveren
  • Begrensning for virtuelle maskiner Brøkdelen av logisk CPU-utnyttelse som den kjørende virtuelle maskinen ikke kan overstige.
  • Relativ vekt Bestemmer CPU-allokeringen når du kjører konflikt med virtuelle maskiner. Jo høyere tall, desto mer kraft tildeles den virtuelle maskinen. Relativ vekt kan variere fra 1 til 10 000.
  • Overfør til en fysisk datamaskin med en annen prosessorversjon Denne parameteren ble introdusert i Hyper-V R2 og lar deg aktivere eller deaktivere prosessorkompatibilitetsmodus. For mer informasjon, se sidefeltet "Slik fungerer det: Prosessorkompatibilitetsmodus" nedenfor.
  • Start et eldre operativsystem som Windows NT Reduserer sårbarheten til enkelte operativsystemer til høye CPUID-verdier. Uventet høye CPUID-verdier kan forårsake krasj. I den originale versjonen av Hyper-V ble denne innstillingen kalt "Begrens prosessorfunksjonalitet."

Prøv å bruke pass-through-stasjoner

Det anbefales å bruke virtuelle harddisker når du oppretter en virtuell maskin, men i noen tilfeller vil det være bedre å bruke pass-through-disker. Ytelsen med pass-through-disker er litt raskere enn VHD. Pass-through-stasjoner beholder stasjonsbokstaver og tillater konfigurasjon av stasjoner større enn 2 TB (hvis støttet av ekstern lagring). For å bruke pass-through-disker må du imidlertid flytte konfigurasjonsfilene for den virtuelle maskinen til en annen harddisk eller nettverksressurs. I tillegg støtter ikke pass-through-stasjoner øyeblikksbilder og er ikke bærbare som VHD-filer.

Sørg for høy tilgjengelighet for en fildeling

Hvis du bruker en fildeling for å lagre konfigurasjonsdata for virtuelle maskiner, anbefaler vi at den er svært tilgjengelig (for eksempel legg den på en failover-klynge). I tillegg må du endre sikkerhetsinnstillingene for fildelingen og gi Hyper-V-serveren (alle nodene, hvis de er i en failover-klynge) skrivetilgang.

Optimaliser ytelsen til domenekontrollere

Hyper-V støtter domenekontrollere. Når du bruker dem, bør anbefalingene nedenfor følges.

  • Lagre aldri tilstanden til en domenekontroller, da dette kan føre til at den synkroniserer feil.
  • Aldri suspender en virtuell maskin for domenekontroller over lengre tid, da dette kan påvirke replikering negativt.
  • Slå alltid av domenekontrolleren.
  • Ikke ta øyeblikksbilder av domenekontrolleren.
  • Bestem deg for tidssynkronisering. Essensen ligger i behovet for å bruke Hyper-V-integrasjonstjenester for synkronisering. Hvis virtualiserte domenekontrollere behandles som maskinvarekontrollere, deaktiver tidssynkronisering i innstillingene for hver virtuell maskin og spesifiser en ekstern tidskilde for PDC-emulatoren. La deretter alle andre domenekontrollere synkronisere med PDC-emulatoren. Hvis du bestemmer deg for å synkronisere med den overordnede partisjonen, aktiver kun tidssynkronisering for kontrolleren med FSMO-rollen til PDC-emulatoren.

- CSS Global Technical Readiness (GTR)-avdeling

Hvis du planlegger å bruke lagringssystemer med et iSCSI-grensesnitt, anbefales det sterkt å tildele et separat nettverksgrensesnitt for iSCSI-drift, eller til og med to for MPIO-drift. Hvis LUN-er skal monteres i verts-operativsystemet, trenger du bare å la ett eller to grensesnitt ikke være knyttet til virtuelle nettverk. Hvis iSCSI-initiatorer vil fungere inne i virtuelle maskiner, må det opprettes ett eller to separate virtuelle nettverk for dem, som utelukkende vil bli brukt for iSCSI-trafikk.
VLAN-merking
VLAN-merking (IEEE 802.1q) betyr å "merke" nettverkspakker med en spesiell kode som lar en pakke assosieres med et spesifikt virtuelt nettverk (VLAN). I dette tilfellet vil verter som tilhører forskjellige VLAN-er være i forskjellige kringkastingsdomener, selv om de vil være fysisk koblet til det samme utstyret. Hyper-V virtuelle nettverkskort støtter også VLAN-merking. For å gjøre dette, gå til egenskapene til den virtuelle adapteren i innstillingene til den virtuelle maskinen og registrer den tilsvarende VLAN-IDen der.
Aktivt utstyr
Så langt har vi snakket om nettverksgrensesnitt og virtuelle nettverkskort i en vert. Men det er også nødvendig å ta hensyn til båndbredden til aktivt utstyr - for eksempel brytere som vertene våre vil koble til. Et enkelt eksempel: hvis du har en 8-porters 1Gbps-svitsj, og hver av portene utnytter hele 1Gbps-båndbredden, så vil 1Gbps-uplinken fysisk ikke kunne passere slike trafikkvolumer, noe som vil føre til en nedgang i ytelsen. Dette bør tas i betraktning spesielt når du bruker iSCSI - belastningen kan være høy, og pakkeforsinkelser kan være ganske kritiske for ytelsen. Derfor, når du bruker iSCSI, anbefales det sterkt å kjøre iSCSI-trafikken gjennom separate svitsjer. La oss nå gå videre til verts-OS-anbefalingene. Som du vet, kan Windows Server 2008 R2 installeres i to forskjellige moduser: Full og Server Core. Fra synspunktet om driften av hypervisoren er disse modusene ikke annerledes. Selv om Server Core-modus virker vanskeligere ved første øyekast (spesielt for uerfarne administratorer), anbefales det å bruke denne modusen. Å installere et OS i Server Core-modus har følgende fordeler i forhold til en full installasjon:
  • Færre oppdateringer
  • Mindre angrepsflate for potensielle angripere
  • Mindre belastning på prosessoren og minnet i den overordnede partisjonen
Kjører andre applikasjoner på verts-OS
Å kjøre tredjeparts (ikke relatert til Hyper-V) applikasjoner i et gjeste-OS, samt å installere andre serverroller i tillegg til Hyper-V, kan føre til et betydelig fall i ytelse, samt en reduksjon i stabilitet. Faktum er at på grunn av særegenhetene til Hyper-V-arkitekturen, går all interaksjon av virtuelle maskiner med enheter gjennom foreldrepartisjonen. Derfor vil høye belastninger eller "falle inn i en blå skjerm" i den overordnede partisjonen nødvendigvis føre til et fall i ytelse eller rett og slett til et "krasj" av alle kjørende virtuelle maskiner. Dette kan (og bør) inkludere antivirusprogramvare. Hvorvidt det i det hele tatt er nødvendig på en vert som ikke vil gjøre noe annet enn virtualisering, er selvfølgelig et annet spørsmål. Likevel, hvis antiviruset er installert, er det første du må gjøre å ekskludere fra skannelisten alle mapper der virtuelle maskinfiler kan være plassert. Ellers, under skanning, kan ytelsen avta, og hvis noe som ligner på et virus blir funnet i en VHD-fil, kan antiviruspakken ødelegge selve VHD-en når du prøver å desinfisere. Lignende tilfeller ble observert med MS Exchange-databaser, og derfor er den første anbefalingen ikke å installere filantivirus på Exchange-servere i det hele tatt, og hvis de gjør det, legg til mapper med databaser til unntakene. Fremgangsmåten for å forbedre ytelsen til de virtuelle maskinene i seg selv avhenger av applikasjonene som kjører på dem. Microsoft har beste praksis for hver av applikasjonene - Exchange, SQL Server, IIS og andre. Lignende anbefalinger finnes for programvare fra andre leverandører. Her vil jeg kun gi generelle anbefalinger som ikke er avhengig av spesifikk programvare.
Den vil forklare hvorfor du trenger å installere integreringstjenester i gjeste-operativsystemet, hvordan du gjør det enklere å distribuere nye virtuelle maskiner ved hjelp av VHD-biblioteket, og hvordan du holder disse VHD-ene oppdatert med nye oppdateringer.
Integrasjonstjenester
Integreringstjenester er en samling drivere som kjører inne i gjeste-OS. De bør installeres umiddelbart etter installasjon av OS. For øyeblikket er listen over støttede operativsystemer som følger:
  • Windows 2000 Server SP4
  • Windows Server 2003 SP2
  • Windows Server 2008
  • Windows XP SP2, SP3
  • Windows Vista SP1
  • SUSE Linux Enterprise Server 10 SP3 / 11
  • Red Hat Enterprise Linux 5.2 - 5.5
Windows 7 og Windows Server 2008 R2 OS inneholder integreringstjenester i installasjonspakken, så de trenger ikke å installeres i tillegg på disse OS.
Installasjon av integrasjonstjenester tillater bruk av syntetiske enheter som har høyere ytelse sammenlignet med de emulerte. For mer informasjon om forskjellen mellom emulerte og syntetiske enheter, se artikkelen min om Hyper-V-arkitektur.
Her er en liste over drivere inkludert i integrasjonstjenester:
  • IDE-kontroller- erstatter den emulerte IDE-kontrolleren, som øker hastigheten på tilgang til disker
  • SCSI-kontroller- er en helt syntetisk enhet og krever obligatorisk installasjon av integrasjonstjenester for drift. Opptil 64 disker kan kobles til hver SCSI-kontroller; det kan være opptil 4 kontrollere per virtuell maskin.
  • Nettverksadapter- har bedre ytelse enn den emulerte (Legacy Network Adapter) og støtter spesialfunksjoner som VMQ.
  • Video og mus- Øk brukervennligheten ved å administrere en virtuell maskin gjennom konsollen.
I tillegg til de oppførte driverne, støttes følgende funksjoner når du installerer integrasjonstjenester:
  • Avslutning av operativsystem- Muligheten til å slå av gjeste-OS uten å logge på det. Ligner på å trykke på strømknappen på et ATX-deksel.
  • Tidssynkronisering- Fjern fra navnet - synkronisering av systemtiden mellom verts- og gjeste-OS.
  • Datautveksling- utveksling av registernøkler mellom gjeste- og verts-OS. Dermed kan for eksempel gjeste-OS bestemme navnet på verten den kjører på. Denne funksjonen er kun tilgjengelig for gjesteoperativsystemer i MS Windows-familien.
  • Hjerteslag- en spesialtjeneste som med jevne mellomrom sender spesielle signaler som indikerer at alt er i orden med den virtuelle maskinen. Hvis gjeste-OSet av en eller annen grunn for eksempel fryser, vil det slutte å sende Heartbeat, og dette kan tjene som et signal for eksempel for en automatisk omstart.
  • Online sikkerhetskopiering- er en VSS Writer som lar deg få en konsistent sikkerhetskopi av virtuell maskindata når som helst. Når du starter en sikkerhetskopi via VSS, tømmer applikasjoner som kjører på en virtuell maskin automatisk data til disken, og derfor er sikkerhetskopieringen konsistent.
For å installere integreringstjenester i Windows OS, må du velge Handling - Oppsett av integrasjonstjenester... Dette vil automatisk montere et ISO-bilde med installasjonsfilene til den virtuelle maskinen, og installasjonsprosessen starter. Hvis Autorun er deaktivert i gjestesystemet, må installasjonsprosessen startes manuelt.
Integrasjonskomponenter for Linux er ikke inkludert i Windows Server-distribusjonen - de må lastes ned fra Microsofts nettside.
Sysprep: lage et masterbilde
Hvis du har en stor nok infrastruktur og du ofte må lage nye virtuelle maskiner og installere operativsystemet på dem, kan et sett med ferdige "masterbilder" av virtuelle harddisker spare mye tid. Dette "masterbildet" lagret som en VHD-fil kan kopieres, og deretter kan en ny virtuell maskin opprettes ved å bruke VHD-en som en harddisk. Samtidig vil operativsystemet og noe nødvendig sett med programvare (spesielt integreringstjenester) allerede være installert på det.
For å lage et slikt mesterbilde trenger du:
  1. Lag en ny virtuell maskin
  2. Installer OS, integrasjonstjenester, alle tilgjengelige systemoppdateringer og tilleggsprogramvare, om nødvendig
  3. Klargjør det installerte operativsystemet ved å bruke Sysprep, som vil fjerne informasjon om bruker, produktnøkkel og unik identifikator (SID).
Første gang en virtuell maskin startes opp fra et slikt bilde, vil en prosedyre kalt "mini-oppsett" startes. Dette vil be deg om å skrive inn datamaskinnavnet, administratorpassordet og noen andre data på nytt.
Offline installasjon av oppdateringer
Vi har laget et mesterbilde, og vi vil beholde det lenge. Og alt ville være bra, men det er ett lite problem: systemoppdateringer utgis med jevne mellomrom, og når du distribuerer en virtuell maskin fra hovedbildet, må du installere alle oppdateringer som har blitt utgitt siden opprettelsen av hovedbildet. Hvis bildet ble opprettet for for eksempel et år eller to siden, kan volumet av oppdateringer være ganske stort. I tillegg, umiddelbart etter tilkobling til nettverket, blir operativsystemet uten de siste oppdateringene utsatt for alle slags sikkerhetstrusler, inkludert virus. Det er et flott verktøy som lar deg installere oppdateringer direkte til masterbildene til virtuelle maskiner - det kalles "Offline Virtual Machine Servicing Tool". For å bruke den må du distribuere System Center Virtual Machine Manager (SCVMM), samt ha en distribuert WSUS- eller SCCM-server, hvorfra faktisk oppdateringer vil bli hentet. Dens operasjonsprinsipp er som følger:
  1. Den virtuelle maskinen er distribuert på en spesiell vert valgt ved hjelp av SCVMM - den såkalte vedlikeholdsverten.
  2. Den virtuelle maskinen starter opp og alle nødvendige oppdateringer er installert på den.
  3. Den virtuelle maskinen stopper og VHD-en returneres til biblioteket med oppdateringene installert.
Offline Virtual Machine Servicing Tool er gratis. For å lære mer om dette verktøyet og laste det ned, kan du gå til den offisielle nettsiden:

I denne artikkelen skal vi se på flere måter å forbedre ytelsen til en virtuell maskin VMware Workstation, Oracle VirtualBox, Microsoft Hyper-V på eller noe annet. Virtuelle maskiner er ganske krevende på egenskapene til en datamaskin, for mens de kjører, kjører flere operativsystemer på en PC samtidig. Som et resultat kan den virtuelle maskinen være betydelig tregere enn hovedoperativsystemet, eller til og med tregere.

I denne artikkelen skal vi se på flere måter å forbedre ytelsen til en virtuell maskin, Oracle VirtualBox, Microsoft Hyper-V eller andre.

Innhold:


Dynamisk eller fast VHD?

Når du oppretter en virtuell maskin, kan du lage to forskjellige typer virtuelle harddisker. Som standard bruker en virtuell maskin en dynamisk disk, som tar opp nødvendig plass på det fysiske lagringsmediet og vokser bare når det blir fullt.

Hvis du for eksempel oppretter en virtuell maskin med en 30 GB dynamisk disk, vil den ikke umiddelbart ta opp 30 GB av datamaskinens harddisk. Etter å ha installert operativsystemet og de nødvendige programmene, vil størrelsen være omtrent 10-15 GB. Bare etter hvert som data legges til, kan den vokse til 30 GB.

Dette er praktisk fra det synspunkt at den virtuelle maskinen vil ta opp plass på harddisken, som er proporsjonal med mengden data som er lagret på den. Men arbeidet til en dynamisk harddisk er tregere enn en fast (noen ganger også kalt en distribuert).

Ved å opprette en fast disk vil alle 30 GB av datamaskinens harddisk umiddelbart bli allokert til den virtuelle maskindisken, uavhengig av mengden data som er lagret på den. Det vil si at en fast harddisk på en virtuell maskin tar mer plass på datamaskinens harddisk, men det går raskere å lagre eller kopiere filer og data på den. Det er ikke så utsatt for fragmentering, siden plassen til den er tildelt i størst mulig blokk, i stedet for å bli lagt til i små deler.


Installere den virtuelle maskinverktøykassen

Etter å ha installert gjesteoperativsystemet på den virtuelle maskinen, er det første du må gjøre å installere pakken med verktøy eller drivere for din virtuelle maskin, for eksempel: VirtualBox Guest Additions eller VMware Tools. Disse pakkene inneholder drivere for å hjelpe gjesteoperativsystemet til å kjøre raskere.

Det er enkelt å installere dem. I VirtualBox laster du gjesteoperativsystemet og velger Enheter / Monter diskbilde av ekstra gjeste-OS ... "Denne datamaskinen"



I VMware Workstation velger du menyen Virtuell maskin / Installer VMware Tools ... Kjør deretter installasjonsprogrammet, som vises som en egen disk i mappen "Denne datamaskinen" gjesteoperativsystem.



Legg til mappen med den virtuelle maskinen til unntakene til antivirusprogrammet ditt

Antivirusprogrammet, blant annet, skanner også filene til den virtuelle maskinen, noe som bremser ytelsen. Men poenget er at antivirusprogrammet ikke har tilgang til filer inne i gjesteoperativsystemet til den virtuelle maskinen. Derfor er en slik skanning meningsløs.

For å bli kvitt den forringede ytelsen til den virtuelle maskinen, kan du legge til mappen som inneholder den til unntakene til antivirusprogrammet. Antiviruset vil ignorere alle filene i en slik mappe.


Intel VT-x eller AMD-V aktivering

Intel VT-x og AMD-V er dedikerte virtualiseringsteknologier som er utviklet for å gi bedre ytelse for virtuelle maskiner. Moderne Intel- og AMD-prosessorer har vanligvis denne funksjonen. Men på noen datamaskiner aktiveres den ikke automatisk. For å aktivere det, må du gå til datamaskinens BIOS og aktivere det manuelt.

AMD-V er ofte allerede aktivert på PC-en hvis det støttes. Og Intel VT-x er oftest deaktivert. Sørg derfor for at de angitte virtualiseringsfunksjonene allerede er aktivert i BIOS, og aktiver dem deretter i den virtuelle maskinen.


Mer RAM

Virtuelle maskiner krever mengden tilgjengelig RAM. Hver virtuell maskin inkluderer et komplett operativsystem. Derfor er det nødvendig å dele PC-ens operativsystem i to separate systemer.

Microsoft anbefaler minimum 2 GB RAM for deres operativsystemer. Følgelig er slike krav også relevante for gjesteoperativsystemet til en virtuell Windows-maskin. Og hvis du planlegger å bruke tredjeparts krevende programvare på en virtuell maskin, vil enda mer RAM kreves for normal drift.

Hvis det, etter å ha opprettet en virtuell maskin, viste seg at det ikke er nok RAM for normal drift, kan det legges til i innstillingene til den virtuelle maskinen.

Sørg for at den virtuelle maskinen er slått av før du gjør dette. Det anbefales heller ikke å gi en virtuell maskin mer enn 50 % av det virtuelle minnet fysisk tilstede på datamaskinen.


Hvis det, etter å ha allokert 50% av datamaskinens minne til en virtuell maskin, viste seg at den ikke fungerte komfortabelt nok, er det mulig at datamaskinen din ikke har nok RAM for normal drift med virtuelle maskiner. For normal drift av enhver virtuell maskin vil 8 GB RAM installert på hoved-PCen være tilstrekkelig.

Tildel mer CPU

Hovedbelastningen under driften av en virtuell maskin faller på den sentrale prosessoren. Jo mer CPU-kraft en virtuell maskin kan bruke, jo bedre (raskere) vil den yte.

Hvis en virtuell maskin er installert på en datamaskin med en flerkjerneprosessor, kan det i innstillingene til den virtuelle maskinen tildeles flere kjerner for dens drift. En virtuell maskin med to eller flere CPU-kjerner vil kjøre betydelig raskere enn én.


Det er ikke ønskelig å installere en virtuell maskin på en datamaskin med én kjerneprosessor. En slik virtuell maskin vil fungere sakte og den vil ikke være effektiv i å utføre noen oppgaver.

Riktig videoinnstillinger

Videoinnstillingene kan også påvirke hastigheten til den virtuelle maskinen. Hvis du for eksempel aktiverer 2D- eller 3D-videoakselerasjon i VirtualBox, kan noen applikasjoner kjøre betydelig raskere. Det samme gjelder muligheten for å øke videominnet.

Men, som tilfellet er med RAM, avhenger mye av skjermkortet som er installert på hoveddatamaskinen.


Virtuell maskin og SSD-disk

Den første og beste forbedringen av datamaskinen i dag er installasjonen av en SSD-disk på den. Dette vil merkbart fremskynde arbeidet til datamaskinen, og følgelig den virtuelle maskinen installert på den.

Noen brukere installerer virtuelle maskiner på en annen (HDD) disk på datamaskinen, og lar bare hovedoperativsystemet være på SSD-disken. Dette gjør den virtuelle maskinen tregere. Frigjør plass på SSD-en og overfør den virtuelle maskinen til den. Forskjellen i arbeidshastigheten vil merkes fra de første minuttene.

Når det er mulig, ikke plasser virtuelle maskindisker på eksterne lagringsmedier. De fungerer enda tregere enn den innebygde harddisken. Det finnes alternativer med å koble til en virtuell maskin via USB 3.0, men USB 2.0 er uaktuelt – den virtuelle maskinen vil fungere veldig sakte.

Suspendere i stedet for å lukke

Når du er ferdig med å jobbe med den virtuelle maskinen, kan du sette den på pause i stedet for å slå den helt av.


Når du starter applikasjonen for å jobbe med virtuelle maskiner neste gang, kan du slå på den virtuelle maskinen på samme måte som vanlig. Men den vil laste mye raskere og i samme tilstand og fra stedet der du avsluttet arbeidet forrige gang.

Å suspendere et gjesteoperativsystem er veldig likt å bruke dvalemodus i stedet for å slå av PC-en.

Forbedre ytelsen inne i en virtuell maskin

Det bør alltid huskes at operativsystemet installert på en virtuell maskin ikke er mye forskjellig fra det som kjører på hoveddatamaskinen. Det kan akselereres ved å følge de samme prinsippene og bruke de samme teknikkene som er relevante for alle andre operativsystemer.

Systemytelsen vil for eksempel øke hvis du lukker bakgrunnsprogrammer eller de som starter automatisk ved systemstart. Systemytelsen påvirkes av behovet for å defragmentere disken (hvis den virtuelle maskinen er plassert på en HDD), og så videre.

Programmer for å jobbe med virtuelle maskiner

Noen brukere hevder at Oracle VirtualBox er det raskeste verktøyet for å jobbe med en virtuell maskin, for andre - VMware Workstation eller

I dag er virtualisering mye brukt i nesten alle deler av IT-bransjen – fra personlige mobile enheter til kraftige datasentre, som lar deg løse en lang rekke oppgaver. Virtualisering kan ha mange former, alt fra virtualisering og plattformemulering til ressursvirtualisering. Men i dag skal vi snakke om innebygd maskinvarevirtualisering - moderne prosessorer støtter det ved å bruke instruksjonssett som Intel VT-x eller AMD-V.

Native virtualisering er en teknologi som gir dataressurser som er abstrahert fra maskinvarelaget. Hvis vi for eksempel tar et segment av servere, lar slik abstraksjon flere virtuelle systemer fungere på én maskinvareplattform, og gjør det også mulig å enkelt overføre virtuelle systemer fra en maskinvareserver til en annen - for eksempel når den svikter eller er oppgradert.

Før bruken av maskinvarestøtte for virtualisering, overlappet alle fordelene med teknologien de store ytelsestapene og den lave hastigheten til den virtuelle maskinen som helhet. Populariteten til virtuelle maskiner begynte å vokse etter hvert som produsenter av maskinvareplattformer begynte å ta aktive skritt for å redusere kostnadene ved virtualisering (innføring av maskinvarestøtte, introduksjon av nye instruksjoner, reduserte tidspunkter for utførelse av instruksjoner), og prosessorytelsen ble tilstrekkelig å "trekke" virtuelle maskiner med en akseptabel hastighet.

Som nevnt ovenfor, er en av nøkkelfaktorene for normal drift av innebygd maskinvarevirtualisering prosessorens støtte for spesifikke instruksjonssett. Intel introduserte sitt VT-x-instruksjonssett i 2005, tilbake i Netburst-arkitekturen som brukes i Pentium 4-prosessorer. AMD utviklet sitt instruksjonssett, AMD-V, og de første prosessorene med dens støtte kom på markedet i 2006. En tid senere tilbød begge selskapene nye instruksjonssett: henholdsvis Intel EPT (Extended Page Tables) og AMD RVI (Rapid Virtualization Indexing). Essensen av begge settene er at gjeste-OS får kontroll over de virtualiserte minnesidene direkte, og omgår hypervisoren - dette reduserer belastningen på den og øker hastigheten til det virtuelle systemet noe. Intel har utviklet Intel VT-d instruksjonssettet for å videresende enheter direkte til gjeste-OS. Intel har også andre instruksjonssett for virtualisering i sitt arsenal: Intel VT FlexMigration, Intel VT FlexPriority, VPID, VT Real Mode, VMFUNC.

I nye generasjoner av prosessorer tilbyr produsenter ikke bare nye muligheter for virtualiseringsinstruksjonssett, men reduserer også utførelsen av spesifikke instruksjoner, noe som kan forbedre ytelsen til det virtuelle systemet som helhet. For eksempel, i Pentium 4-prosessorer, nærmet ventetiden for å utføre VMCALL- og VMRESUME-instruksjoner 1500 nanosekunder, mens den i Core 2 Duo (Penryn) allerede var mindre enn 500 nanosekunder.

Å bygge bro over ytelsesgapet mellom ekte og virtuelle systemer har gjort virtuelle maskiner (VM-er) mye mer lønnsomme å bruke, inkludert for å løse oppgaver på bedriftsnivå. De mest åpenbare fordelene er en økning i gjennomsnittlig belastning av utstyr (flere VM-er bruker jevnt ressursene til maskinvareplattformen, reduserer nedetid), samt lanseringen av et utdatert OS som ikke oppfyller moderne krav (for eksempel for sikkerhet ), men er samtidig nødvendig for lansering og drift av unik programvare (eller av andre grunner). Forresten, skytjenester som er så populære i dag, er også basert på virtualiseringsteknologier. La oss oppsummere de viktigste fordelene som en bedrift får ved å bruke virtualisering. Den:

  • en økning i den gjennomsnittlige belastningen på en fysisk server, og følgelig en økning i utnyttelsesgraden av utstyr, som igjen reduserer den totale kostnaden for maskinvaren;
  • enkel migrering av virtuelle servere fra en fysisk til en annen ved oppgradering av maskinvare;
  • enkelhet med å gjenopprette ytelsen til en virtuell server i tilfelle maskinvarefeil i maskinvare: det er mye lettere å overføre en virtuell maskin til en annen fysisk server enn å overføre konfigurasjon og programvare fra en fysisk maskin til en annen;
  • betydelig forenkling av overføringen av brukere eller forretningsprosesser til nye operativsystemer og ny programvare: ved å bruke en VM kan du gjøre dette i deler og uten å berøre maskinvareressurser; i tillegg kan du i prosessen enkelt analysere og fikse feil, samt vurdere gjennomførbarheten for implementering "i farten";
  • støtte i forretningsprosesser til et utdatert OS, som av en eller annen grunn ikke kan forlates på et gitt tidspunkt;
  • muligheten til å teste visse applikasjoner på en VM uten å kreve en ekstra fysisk server, etc.
  • andre bruksområder.

Derfor er det ikke lenger tvilsomt om det er hensiktsmessig å bruke virtualisering i dag. Teknologien gir for mange fordeler fra ett, noe som får oss til å lukke øynene selv for det uunngåelige tapet av systemytelse.

Imidlertid er det alltid nyttig å forstå nøyaktig hvilket nivå av ytelsestap mellom et ekte og et virtuelt system som diskuteres. Dessuten er de ofte sterkt avhengige av type oppgaver og programvarekrav for maskinvareressurser. Et eller annet sted er dette viktig fra et ressursregnskapssynspunkt, et eller annet sted - det vil bidra til å bestemme hvilket ytelsesnivå til et reelt system som er nødvendig for å oppnå ønsket ytelsesnivå fra et virtuelt system. Til slutt er det grenseoverskridende typer problemer som kan løses ved hjelp av både virtuelle og reelle systemer – og der kan tapsproblematikken være en avgjørende faktor.

Testteknikk

For testing brukte vi et sett med testapplikasjoner fra den vanlige metodikken for å undersøke ytelsen til plattformplattformer fra 2011, med noen forbehold. For det første ble alle spillene fjernet fra settet, siden den virtuelle grafikkadapteren med Oracle-driveren har for svak ytelse: i de fleste tilfeller startet ikke spillene engang. For det andre er applikasjoner som ikke konsekvent kunne fullføre testskriptet på en av konfigurasjonene - Maya, Paintshop Pro, CorelDraw - blitt fjernet. Av denne grunn er det umulig å sammenligne de endelige vurderingene og den totale ytelsespoengene til testbenken vår med basen til de testede prosessorene. Men å sammenligne resultatene fra individuelle tester er ganske riktig.

Det bør også tas i betraktning at metodikken bruker versjoner av applikasjoner fra 2011. De støtter kanskje ikke nye teknologier, optimaliseringer og instruksjonssett introdusert etter dette tidspunktet. Tilstedeværelsen av slik støtte i nyere versjoner av applikasjoner kan imidlertid påvirke ytelsen til disse applikasjonene betydelig - i både virkelige og virtuelle systemer.

Teststativ

For testing tok vi et system med en konfigurasjon som passer for rollen som både en server og en høyytelses arbeidsstasjon. I fremtidige materialer vil vi teste virtualiseringsmulighetene på den med forskjellige vertssystemer. I dag brukes Windows 7 som vert.

  • Prosessor: Intel Xeon E3-1245 v3
  • Hovedkort: SuperMicro X10SAE
  • RAM: 4 × Kingston DDR3 ECC PC3-12800 CL11 8 GB (KVR16LE11 / 8)
  • Harddisk: Seagate Constellation ES.3 1TB (ST1000NM0033)
  • Operativsystem: Windows 7 x64

Virtualiseringsprogramvare

I denne artikkelen utføres testing med Oracle VM VirtualBox.

Oracle VM VirtualBox er en gratis virtuell maskin (VM) lisensiert under GNU GPL 2. Den støtter en omfattende liste over operativsystemer: Windows, OS X, Solaris og et bredt utvalg av Linux-distribusjoner (Ubuntu, Debian, openSUSE, SUSE Linux Enterprise Server, Fedora, Mandriva, Oracle Linux, Red Hat Enterprise Linux, CentOS). VM ble opprinnelig utviklet av Innotek, som senere ble kjøpt opp av Sun Microsystems, og i 2010 av Oracle. VM støtter videresending av USB-enheter til gjeste-OS, gir Internett-tilgang og en ekstern skrivebordstilkobling. Guest OS kan være 32-bit eller 64-bit. Systemet støtter 2D og 3D maskinvareakselerasjon, samt PAE/NX, VT-x, AMD-V, Nested Paging. Emulerer et bredt spekter av vanlige enheter: PIIX3- eller ICH9-brikkesett, IDE PIIX3, PIIX4, ICH6-kontrollere, Sound Blaster 16, AC97 eller Intel HD-lydkort, samt PCnet PCI II (Am 79 C 970 A) nettverkskort, PCnet - Fast III (Am 79 C 973), Intel PRO / 1000 MT Desktop (82540 EM), Intel PRO / 1000 T Server (82543 GC), Intel PRO / 1000 MT Server (82545 EM). Støtter bilder av harddisker VDI, VMDK, VHD, lar deg lage delte mapper for gjeste- og verts-OS, samt lagre VM-tilstander.

Oracle har en mer seriøs analog av VM VirtualBox, Oracle VM Server for x86- og SPARC-prosessorer, basert på Xen-hypervisoren. Det vil si at det er et helt annet produkt for et annet markedssegment. Oracle VM Server støtter opptil 160 tråder på den fysiske serveren og opptil 128 vCPUer i gjeste-OS, med en maksimal RAM på 4 TB, mens VM VirtualBox kun støtter 32 vCPUer for gjeste-OS og 1 TB RAM.

For å oppsummere kan vi karakterisere VM VirtualBox som en VM for hjemmebruk og for bruk i små bedrifter, og det enkle oppsettet (faktisk installert og alt fungerer) krever ikke høye kvalifikasjoner fra en systemadministrator (eller krever ikke en dedikert systemadministrator i det hele tatt på grunn av brukervennlighet) ... Oracle VM Server er på sin side designet for større virksomheter – det gir både mer funksjonalitet og støtte for kraftigere servere, men krever også høyere kvalifikasjoner fra systemadministratoren.

Programvareinnstillinger

For denne testingen ble en Oracle VM VirtualBox VM installert på en testbenk med Windows 7 x64 OS, som et Windows 7 x64-bilde med en testpakke med applikasjoner ble distribuert til. I de følgende artiklene vil vi prøve hvordan andre verts-OS og virtualiseringsprogramvare fungerer.

Selve den virtuelle maskinen er konfigurert som følger: støtte for Nested Paging, VT-x, PAE / NX, 3D og 2D-akselerasjon er aktivert. For behovene til VM er 24 GB RAM og 256 MB til videominne tildelt.

Sammenligning med Intel Core 7-4770k

For en sammenlignende vurdering av den generelle ytelsen til testplattformen basert på Intel Xeon E3-1245 v3, viser tabellene også resultatene til Intel Core i7-4770K-prosessoren fra. Dette gir en grov tilnærming av ytelsesnivået til en av de beste forbruker-PC-prosessorene og Xeon-serverprosessoren, pluss mange andre interessante sammenligningsalternativer basert på konfigurasjonsforskjeller. Det er sant, her må du ta hensyn til at parametrene til de to systemene er litt forskjellige, og dette påvirker resultatene. La oss oppsummere egenskapene til tribunene i tabellen.

Intel Xeon E3-1245 v3Intel Core i7-4770K
Antall kjerner / gjenger, stk.4/8 4/8
Base / Boost frekvens, MHz3,4/3,8 3,5/3,9
L3-bufferstørrelse, MB8 8
Brukte RAM i testbenken4 × Kingston KVR16LE11 / 84 × Corsair Dominator Platinum CMD16GX3M4A2666C10
Antall kanaler, stk.2 2
Driftsfrekvens, MHz1600 1333
Tidspunkter11-11-11-28 9-9-9-24
ECCJaNei
Modulvolum, GB8 4
Totalt volum, GB32 16
GrafikkortIntel P4600Palit GeForce GTX 570 1280 MB

Core i7-4770k har 100 MHz høyere driftsfrekvenser, noe som kan gi den litt fordel. Situasjonen med RAM er komplisert: på den ene siden har Core i7-4770k halvparten av volumet og jo lavere driftsfrekvens, 1333 MHz mot 1600; på den annen side har Xeon-plattformen høyere minnetiming og ECC feilretting.

Til slutt har Core i7-4770k-systemet et eksternt Palit GeForce GTX 570 1280 MB grafikkort. I vår benchmark for 2011 kan bare noen få applikasjoner bruke grafikkortets ressurser, og i disse applikasjonene bør vi forvente en betydelig overlegenhet fra et system med Core i7-4770k. I tillegg konkurrerer ikke det eksterne kortet med prosessoren om tilgang til RAM, slik den integrerte Intel P4600 gjør, noe som også burde gi Core i7-4770k en viss fordel. På den annen side bør P4600-driverne inneholde visse optimaliseringer for å forbedre ytelsen til profesjonelle applikasjoner. Imidlertid krever de sannsynligvis også optimalisering av selve programvaren, så i vår testing (husk at vi bruker versjoner av applikasjoner fra 2011), vil disse optimaliseringene mest sannsynlig ikke fungere. Og i livet må du sjekke hver sak separat, fordi programvareoptimalisering er en veldig delikat prosess.

Konfigurasjoner involvert i testing

På et ekte system ble testpakken lansert i to konfigurasjoner: med deaktivert og aktivert Intel Hyperthreading-teknologi (heretter kalt HT). Dette lar deg vurdere dens innvirkning på ytelsen til både ekte og virtuelle systemer – og samtidig forstå hvor du kan bruke den yngre Intel Xeon-modellen av denne generasjonen, som ikke har NT. Den virtuelle maskinen ble lansert i to konfigurasjoner: for 4 datakjerner og for 8. Som et resultat får vi følgende konfigurasjoner:

  1. Ekte system uten HT (betegnet med hw wo / HT)
  2. Ekte system med HT (betegnet med hw w / HT)
  3. Virtuell maskin med 4 kjerner på en 4-kjerners prosessor uten HT (betegnet som vm 4 core wo / HT)
  4. 4-kjerners virtuell maskin på 4-kjerners prosessor med HT (betegnet som vm 4 core w / HT)
  5. Virtuell maskin med 8 kjerner på en 4-kjerners prosessor med HT (betegnet som VM 8 kjerne)

For enkelhets skyld, la oss sette alt i en tabell.

Beregning av virtualiseringskostnader

Det er viktig å merke seg at virtualiseringskostnadene ikke måles i forhold til det generelle nivået, men snarere sammenlignet med lignende maskinvare og virtuelle konfigurasjoner.

Verdien av virtualiseringsoverhead for en 8-kjerners VM vil bli beregnet i forhold til Intel Xeon E3-1245 v3 med HT (Real w/HT)-teknologi aktivert, og en 4-kjerners VM - i forhold til Intel Xeon E3-1245 v3 uten HT (Ekte wo / HT). Kostnaden for en eksperimentell konfigurasjon av en 4-kjerners VM på en 8-tråds prosessor vil bli beregnet i forhold til Intel Xeon E3-1245 v3 uten HT.

Innenfor rammen av testing vil det også bli introdusert en ytelsesvurdering, der ytelsen til Intel Xeon E3-1245 v3 tas som 100 poeng. uten HT.

Akseptabelt tapsnivå

Det mest interessante spørsmålet er hvilket nivå av ytelsestap bør anses som akseptabelt? I teorien virker et nivå på 10-15 prosent for oss ganske akseptabelt, gitt fordelene som virtualisering gir bedriften. Spesielt med høyere gjennomsnittlig utstyrsutnyttelse og redusert nedetid.

På det første stadiet bestemte vi oss for å se hvordan ytelsen synker når vi bytter til et virtuelt system i en syntetisk test. For å gjøre dette tok vi en relativt enkel benchmark Cinebench R15, som imidlertid gjør en god jobb med å bestemme nivået på CPU-ytelse i beregninger knyttet til 3D-modellering.

Ekte m/HTVM 8 kjerneEkte wo / HTVM 4 kjerne
Enkjernet151 132 (−13%) 151 137 (−9%)
Mange kjerne736 668 (−9%) 557 525 (−6%)

En 4-tråds konfigurasjon har lavere ytelse, men dens prosentvise tap er også lavere - både i en enkelt-trådet belastning og i en flertrådet. Når det gjelder VM-ytelsen, til tross for de store tapene, er 8-kjerners konfigurasjon fortsatt raskere enn 4-kjernen. Det kan også antas at siden grafikkadapteren emuleres av Oracle-driveren, bør tilstedeværelsen av enhver belastning på grafikkundersystemet øke overheaden for virtuelle systemer betydelig, siden det skaper en ekstra belastning på prosessoren.

Vel, generelt, for nå, vil vi fokusere på disse tallene - omtrent 10 % tap av ytelse for en 8-tråds konfigurasjon og omtrent 6 % for en 4-tråds konfigurasjon.

Ytelsesforskning

Interaktivt arbeid i 3D-pakker

Når du jobber interaktivt i enkelte CAD-applikasjoner, brukes grafikkortet aktivt, noe som vil påvirke både resultatene og ytelsesforskjellen mellom det virkelige og virtuelle systemet alvorlig.

CAD CreoElements

I interaktiv modus i CAD CreoElements er virtualiseringstap på imponerende 64 % for alle konfigurasjoner. Mest sannsynlig, på grunn av det faktum at ressursene til et skjermkort brukes i et ekte system, og i et virtuelt system faller belastningen på sentralprosessoren gjennom Oracle-driverne.

Det er interessant å merke seg at i7-4770K viser mindre ytelse enn Xeon, selv om den bruker et ganske kraftig diskret grafikkort. ( SI - lovet av Intel-driveroptimaliseringer i serien med profesjonelle akseleratorer P4600 / P4700?)

CAD CreoelementsEkte m/HThw 4/8 vm 8
Vekst fra NT−4% −5%

HT-teknologi påvirker ytelsen til både det virkelige systemet og VM negativt - henholdsvis 4 % og 5 % tap.

CAD SolidWorks

I SolidWorks endres ikke bildet generelt - kostnadene går utover alle rimelige grenser, og viser mer enn 80% tap av produktivitet. Imidlertid, i en asymmetrisk konfigurasjon (CPU: 4 kjerner, 8 tråder; VM: 4 kjerner), er kostnadene merkbart mindre enn i de to andre konfigurasjonene. Kanskje dette skyldes arbeidet med bakgrunnsprosesser i verts-OS: det vil si at aktiveringen av NT dobler antall mulige tråder til 8, hvor 4 er allokert til VM-er, og 4 forblir til disposisjon for verts-OS.

Den stasjonære 4770K er betydelig raskere enn Xeon (mest sannsynlig på grunn av det faktum at Solidworks er i stand til å bruke ressursene til grafikkortet i dette scenariet - S.K.). Generelt skyldes de enorme kostnadene at SolidWorks er kresne på grafikkundersystemet, og som nevnt ovenfor legger det virtuelle grafikkortet bare mer stress på prosessoren.

CAD SolidWorksEkte m/HThw 4/8 vm 8
Vekst fra NT−1% −9%

Aktivering av NT fører til en reduksjon i ytelse - for en fysisk server er det 1%, og for en VM - 9%. Dette bekrefter generelt hypotesen om bakgrunnsprosesser - siden en 8-kjerne VM "fanger" alle 8 CPU-tråder, begynner verts-OS og VM å konkurrere om ressurser.

Gruppe totalt

Virtualiseringskostnader i denne gruppen av applikasjoner er ganske betydelige (over 60%), og i begge pakkene som er studert. Samtidig har CAD CreoElements lavere kostnader enn SolidWorks, men sistnevnte vet også hvordan man bruker ressursene til et grafikkort, det vil si at det kan motta ekstra bonuser på et ekte system. HT-teknologi er ikke nyttig på den fysiske serveren, og på VM forringer den ytelsen fullstendig i begge pakkene. Generelt tillater svært høye ytelsestap ikke å anbefale virtuelle systemer for arbeid med 3D-modelleringspakker. Det er imidlertid verdt å se på den endelige gjengivelsen også.

Endelig gjengivelse av 3D-scener

Hastigheten på den endelige gjengivelsen av 3D-scener avhenger av ytelsen til sentralprosessoren, så her bør bildet være mer objektivt.

Det første du bør være oppmerksom på: i den endelige gjengivelsen viser 3Ds Max betydelig lavere virtualiseringskostnader enn i interaktivt arbeid i CAD – 14 % for en 4-kjerners VM og 26 % for en 8-kjerners. Kostnadsnivået ligger likevel godt over de etablerte nivåene på 6 og 10 prosent.

Generelt, til tross for de relativt høye kostnadene, har 8-kjerners VM et sammenlignbart ytelsesnivå med 4-kjerners 4-tråds Intel-prosessorer, noe som er ganske bra.

3Ds MaksEkte m/HThw 4/8 vm 8
Vekst fra NT26% 9%

Å aktivere HT på ekte maskinvare kan redusere gjengivelsestiden med 26 % - et anstendig resultat! Når det gjelder NT på VM er alt mer beskjedent her - kun 9% økning. Likevel er det en økning, og en merkbar en.

Lysbølge

Lightwave viser i det hele tatt et utmerket resultat: virtualiseringskostnadene er på nivået 3 % for en 4-kjerners VM og 6 % for en 8-kjerners VM. Som du kan se, selv i samme gruppe, oppfører applikasjoner designet i prinsippet for samme oppgave annerledes: for eksempel viser 3Ds Max betydelig høyere kostnader enn Lightwave.

Den stasjonære 4770K viser bedre ytelse enn Xeon E3-1245v3. Det er verdt å merke seg at en 8-kjerners VM praktisk talt ikke er dårligere enn en 4-kjerners 4-tråds fysisk server. (Det ser ut til at Lightwave er dårlig optimalisert, så det reagerer mindre på eventuelle konfigurasjonsendringer. At reduksjonen i ytelse under virtualisering, at utseendet på ekstra ressurser når du aktiverer NT ... den reagerer på alt svakere enn 3DsMax - S. K.).

LysbølgeEkte m/HThw 4/8 vm 8
Vekst fra NT5% 9%

På den annen side gir aktivering av HT kun 5 % hastighetsøkning for ekte maskinvare og merkelig nok 9 % for en VM.

Utfall

Med den endelige gjengivelsen av 3D-scener som kun bruker CPU-ressursene, er virtualiseringskostnadene ganske akseptable, spesielt i Lightwave, hvor ytelsestapene kan beskrives som ubetydelige. HT-aktivering i både 3Ds Max og Lightwave har forbedret ytelse på både fysiske og virtuelle systemer.

Pakking og utpakking

Nøkkelrollen i ytelsen til arkivere spilles av kombinasjonen av prosessor og minne. Det er også verdt å merke seg at forskjellige arkivere er optimalisert på forskjellige måter, det vil si at de kan bruke prosessorressurser på forskjellige måter.

7 zip-pakke

Kompresjonskostnader er 12 % for ethvert system.

Xeon E3-1245v3 og i7-4770K viser identiske resultater – med litt forskjellige frekvenser og forskjellig minne. På grunn av den høye gevinsten fra HT-aktivering, overgår det virtuelle systemet med 8 kjerner det virkelige med fire.

7 zip-pakkeEkte m/HThw 4/8 vm 8
Vekst fra NT25% 25%

Forsterkningen i kompresjonshastighet fra HT-aktivering ble imidlertid satt til 25 % for både ekte maskinvare og VM.

7zip pakke ut

På grunn av den lille størrelsen på testarkivet er resultatene av VM og den virkelige serveren på samme nivå innenfor feilmarginen, så det er ikke mulig å virkelig estimere kostnadene

Jeg lurer på om 22% kan betraktes som en slags "rent" VM-tap?

7zip pakke utEkte m/HThw 4/8 vm 8
Vekst fra NT0% 0%

Dette gjelder også for å vurdere effekten av å aktivere NT – volumet på testoppgaven til 2011-prøven er tross alt for lite for en moderne 4-kjerneprosessor.

RAR-pakke

For RAR er kostnadene merkbart høyere, og de vokser også for en 8-kjerners VM. Generelt er 25 % fortsatt litt for mye. Men RAR har ganske dårlig optimalisering, inkludert for multithreading.

Aktivering av HT fører til en nedgang, men gitt den middelmådige multithreading-implementeringen i WinRAR 4.0, er dette ikke overraskende.

RAR-pakkeEkte m/HThw 4/8 vm 8
Vekst fra NT−2% −11%

På grunn av betydelige tap fra aktiveringen av NT, viser den 8-kjerners VM seg å være enda tregere enn den 4-kjerners.

RAR pakke ut

Siden testarkivet til metodikken for en moderne prosessor er lite, er oppgavegjennomføringstiden for kort til å si noe om nøyaktighet. Det kan imidlertid sies med sikkerhet at kostnadene er relativt høye.

Som du kan se, er forskjellen i prosent imponerende, men i virkeligheten - bare noen få sekunder.

RAR pakke utEkte m/HThw 4/8 vm 8
Vekst fra NT0% −5%

Du kan også si sikkert at WinRAR ikke fordøyer HT godt.

Utfall

Ytelse og kostnader i denne gruppen er svært avhengig av arkiveren, dens optimalisering og evnen til å effektivt bruke de tilgjengelige prosessorressursene. Derfor er det vanskelig å gi anbefalinger om bruken i en VM – det avhenger mer av applikasjonen, og ikke av typen oppgaver. Imidlertid demonstrerer 7zip at emballasjekostnader kan være relativt små og kan brukes i virtuelle maskiner.

Lydkoding

Denne gruppen kombinerer flere lydkodeker som fungerer gjennom dBpoweramp-omslaget. Lydkodingshastigheten avhenger av prosessorytelse og antall kjerner. Denne testen skalerer også veldig godt til flere kjerner, ettersom applikasjonen er multithreading ved å kjøre koding av flere filer parallelt. Siden koding med forskjellige kodeker skaper nesten samme belastning på systemet og følgelig viser lignende resultater, bestemte vi oss for å samle alle resultatene i en felles tabell.

Så, den generelle overheaden til virtualisering.

Lydkoding er ideell når det gjelder virtualiseringskostnader. For en 4-kjerners VM var gjennomsnittskostnaden bare 4 %, og for en 8-kjerners en - 6 %.

Ekte wo / HTVM 4 kjerne wo / HTVM 4 kjerne m/HTEkte m/HTVM 8 kjerne4770K
epleresultater295 283 281 386 362 386
epleYtelsesvurdering100 96 95 131 123 131
FLACresultater404 387 383 543 508 551
FLACYtelsesvurdering100 96 95 134 126 136
Monkey lydresultater299 288 282 369 348 373
Monkey lydYtelsesvurdering100 96 94 123 116 125
MP3resultater185 178 175 243 230 249
MP3Ytelsesvurdering100 96 95 131 124 135
Nero AACresultater170 163 161 229 212 234
Nero AACYtelsesvurdering100 96 95 135 125 138
OGG Vorbisresultater128 124 123 167 159 171
Nero AACYtelsesvurdering100 97 96 130 124 134

Som du kan se, selv om de faktiske resultatene for forskjellige kodeker er forskjellige, er de overraskende like hvis du tar prosentene. Core i7-4770k er ofte litt raskere (tilsynelatende spiller jo høyere frekvens en rolle). Det er også interessant å merke seg at testresultatene for en 4-kjerners VM på et system med aktivert HT alltid er litt lavere enn uten. Sannsynligvis er dette en konsekvens av arbeidet til NT. Men generelt sett er forskjellen i ytelse på 3-5 % mellom et ekte og et virtuelt system en veldig god indikator.

La oss ta en titt på hva HT-aktivering legger til.

LydkodingEkte m/HThw 4/8 vm 8
eple31% 28%
FLAC34% 31%
Monkey lyd23% 21%
MP331% 29%
Nero AAC35% 30%
OGG Vorbis30% 28%

Aktivering av HT-teknologi gjør det mulig å øke hastigheten med 31 % på en ekte server og med 28 % på en virtuell. Også et av de beste resultatene. Til slutt en pivottabell med resultater.

Samling

Kompileringshastigheten avhenger også ikke bare av frekvensen og ytelsen til kjernen, men også av antallet.

Server Xeon-ytelsen kan sammenlignes med desktop i7. En 8-kjerners VM mangler et fysisk system med NT deaktivert.

GccEkte m/HThw 4/8 vm 8
Vekst fra NT24% 7%

En merkbar økning i ytelsen oppstår når NT aktiveres på en fysisk server - 24%, men på en VM lar en økning i antall kjerner deg øke ytelsen med bare 7%. Selv om dette heller ikke er dårlig.

Intel-kompilatoren viser et litt større ytelsesfall under virtualisering enn GCC - 19 % og 33 % for henholdsvis en 4-kjerners og 8-kjerners VM.

Ytelsen til Xeon er sammenlignbar med i7, og ytelsen til en 8-kjerners VM er sammenlignbar med Xeon wo/HT. Og samtidig kan du se hvilken imponerende økning som gis av aktiveringen av NT. Det er et Intel-produkt, så det er ikke noe rart med det faktum at de prøvde å forene det for NT. I tall ser det slik ut:

Du kan også anslå forskjellen i tid det tok å fullføre oppgaven. Dette er også ganske åpenbart.

MSVCEkte m/HThw 4/8 vm 8
Vekst fra NT29% −26%

Når det gjelder NT, lar aktiveringen på et ekte system deg øke hastigheten med så mye som 29%, mens i et virtuelt system observeres omtrent samme reduksjon i ytelse. Det er også verdt å merke seg at en asymmetrisk VM-konfigurasjon med 4 kjerner på en 8-tråds prosessor viser lavere kostnader enn en symmetrisk, men en imponerende økning i kostnadene sees på en 8-kjerners VM.

Generelt fungerer denne kompilatoren på VM med for store ytelsestap.

Total

GCC-kostnader er akseptable, ICC er mer, men du kan fortsatt tåle dem. Microsoft-kompilatoren er veldig treg på virtuelle systemer. På den annen side viser alle medlemmer av denne gruppen gode ytelsesgevinster når de aktiverer NT - bortsett fra MSVC i et virtuelt system.

Matematiske og tekniske beregninger

Med unntak av MATLAB, har denne gruppen av tester ingen flertrådede optimaliseringer i seg selv.

Matematiske og tekniske beregninger i Maple viser et ganske akseptabelt kostnadsnivå - 11%.

En 8-kjerners VM er litt tregere enn en quad-core. Men totalt sett er resultatene av virtuelle systemer ikke dårlige.

I motsetning til det forrige scenariet, ligger 8-kjerners VM langt bak 4-kjerners varianter. 4770k er forresten også tregere her enn Xeon. Vel, det er klart at med aktiveringen av NT er ikke alt veldig bra.

Dessuten viser alle versjoner av VM lignende ytelse, selv om 8-kjerneversjonen er litt bak.

Den solide ytelsen til Core i7-4770k skyldes tilstedeværelsen av et eksternt grafikkort.

SolidWorks (CPU)Ekte m/HThw 4/8 vm 8
Vekst fra NT0% −5%

På den fysiske serveren reagerer ikke SolidWorks på noen måte på aktiveringen av NT, men på VM er det en reaksjon, men negativ - en 5% reduksjon i ytelse.

Total

Kostnadsnivået i denne gruppen avhenger av applikasjonen som brukes: minimum for Maple, maksimum for CreoElements. Generelt kan matematiske beregninger anbefales for virtualisering med forbehold.

Raster-grafikk

På grunn av dårlig optimalisering eller andre årsaker, er ytelsestapene i virtuelle systemer fra ACDSee enorme.

Med en slik forskjell i utførelsestiden for testskript, vil det ikke løfte en arm for å anbefale denne applikasjonen for bruk i en virtuell maskin.

Et blikk på ikke-ekte runtime-tall er også trist.

Vel, resultatene av å aktivere Hyperthreading:

Resultatene av virtuelle systemer er ikke dårlige, bare ikke bruk en 8-kjerners konfigurasjon. Interessant nok ligger 4770K og systemet med NT litt etter referansesystemet, det vil si at aktivering av NT forverrer situasjonen.

Det er mer eller mindre mulig å jobbe i et virtuelt system hvis det er 4-kjerne.

PhotoshopEkte m/HThw 4/8 vm 8
Vekst fra NT1% −16%

HT-aktivering gir praktisk talt ikke utbytte på et ekte system, og VM-ytelsen reduseres med så mye som 16%.

Total

Det er verdt å nevne at vi i de fleste applikasjoner snakker om batchbehandling av filer. Siden behandlingstiden for én fil er relativt kort, brukes en betydelig del av tiden på lese-/skriveoperasjoner, som i tilfellet med et virtuelt system skaper en ekstra belastning på prosessoren og fører til ytterligere tidstap (A virtuell harddisk er et bilde som er lagret på en fysisk harddisk – og dette er et annet mellomledd direkte mellom applikasjonen og maskinvaren).

Når det gjelder konklusjonene, reagerer nesten alle applikasjoner for å jobbe med rastergrafikk dårlig på aktiveringen av NT i virtuelle maskiner, og aktiveringen på et ekte system går ubemerket hen. Ytelsen på en 4-kjerners VM avhenger av applikasjonen: To av fire applikasjoner har relativt lave aktiveringskostnader og kan brukes i en VM. Men å sette 8 kjerner i innstillingene er ikke verdt det - i stedet for en økning i ytelsen, vil du få en betydelig forverring i den. Generelt vil programmer for bildebehandling måtte prøves for å individuelt vurdere ytelsen og dens nedgang i VM. Kostnadsnivået knyttet til overgangen til en virtuell plattform for de testede applikasjonene virker høyt for oss.

Vektorgrafikk

Denne gruppen er entrådet, så ytelsen vil kun avhenge av ytelsen til en enkelt kjerne.

Illustratør

Omtrent samme situasjon som i forrige gruppe - mer eller mindre akseptable kostnader for 4-kjerners VM-er og store ytelsestap for 8-kjerners VM-er,

Ytelsen til E3-1245v3 er sammenlignbar med 4770K – selv om sistnevnte er litt raskere på bekostning av de ekstra 100 megahertzene. Når det gjelder det store bildet ... Prosentfallet ser ikke spesielt skummelt ut, men i virkeligheten kan det føre til merkbart ekstra tidstap.

IllustratørEkte m/HThw 4/8 vm 8
Vekst fra NT0% −12%

Og samme situasjon med NT - ingen gevinst ved aktivering på et ekte system, et merkbart fall i ytelse på et virtuelt. Imidlertid har vi allerede beskrevet årsaken ovenfor.

Videokoding

Det bør huskes at de tre første deltakerne er fullverdige grafiske pakker, det vil si at vi snakker om interaktivt arbeid og den påfølgende opprettelsen av en video. Mens resten av deltakerne bare er kodere.

Uttrykk

Med videokoding i Expression er ikke situasjonen særlig god – selv på 4-kjerners systemer er ytelsestapet under 20 %, og på 8-kjerners systemer – med nesten en tredjedel.

Som du kan se, ligger kraftige prosessorer med HT aktivert etter versjonen uten.

Vel, la oss se hva NT gir.

Interessant nok presterer Core i7-4770k merkbart bedre i denne pakken enn på vårt testsystem.

Vegas ProEkte m/HThw 4/8 vm 8
Vekst fra NT0% −16%

HT-aktivering gir ingen utbytte på det virkelige systemet, og på det virtuelle viser en 16% reduksjon i ytelse.

Generelt ser Vegas Pro ut til å være betydelig mindre optimalisert for arbeid med moderne prosessorer og kaster bort ressursene deres på ineffektivt vis. Derfor ser Premiere mye penere ut fra synspunktet om å jobbe i et virtuelt miljø.

La oss nå ta en titt på hvordan rene videokodere oppfører seg.

Så x264 viser generelt utholdelige kostnader, og for en gangs skyld er en 8-kjerners VM mer effektiv enn en 4-kjerners.

Ytelsen til 8-kjerners VM er bare 9 % lavere enn Xeon wo/HT.

Tallene, som de sier, taler for seg selv.

xvidEkte m/HThw 4/8 vm 8
Vekst fra NT−4% −34%

Akk, aktiveringen av NT bringer bare skade. Og hvis tapene er ubetydelige på en fysisk server - 4%, når de på en VM 34%. Det vil si at både Xvid og VM opererer ineffektivt på logiske kjerner.

Total

Så for videoredigerere avhenger nivået av ytelsestap først og fremst av redaktøren selv, så egnetheten for å jobbe i en VM bør vurderes individuelt. Premiere presterte betydelig bedre i våre tester (og for produktversjonene vi bruker).

Når det gjelder koderne, selv om det er en forskjell mellom dem, viser de alle ganske gode resultater i 4-kjerne VM-er. Når det gjelder bruk av virtuelle maskiner med 8 kjerner, kan du få både en økning og et alvorlig fall i ytelse. Et annet spørsmål er at når man bestemmer seg for å starte videoomkoding på en virtuell maskin, må man alltid huske at moderne prosessorer og grafikk har et bredt spekter av optimaliseringer for denne klassen av oppgaver (så vel som programvare), og i Oracle Virtual Box VM, arbeidet vil bli utført i programvaremodus, det vil si både langsommere og med høyere prosessorbelastning.

Office-programvare

Krom i testen oppførte seg ikke helt tilstrekkelig, så det er verdt å behandle resultatene med stor skepsis.

Og resultatene fra aktiveringen av NT.

ChromeEkte m/HThw 4/8 vm 8
Vekst fra NT68% −8%

Denne deltesten bør ikke tas på alvor i gruppen på grunn av disse omstendighetene.

MS Excel viser kostnader på 15 % og 21 % for en 4-kjerners og 8-kjerners VM. I prinsippet kan kostnadsnivået kalles høyt. Selv om brukeren i praksis knapt vil merke en nedgang, bortsett fra i noen svært komplekse beregninger. 8-kjernesystemet har tradisjonelt høyere kostnader.

En testoppgave for Excel tar lang tid, noe som lar deg tydelig demonstrere forskjellen i tid for utførelse. Som du kan se, vil det virtuelle systemet kjøre det 2 minutter lenger.

Og separat kostnadene fra NT:

På grunn av den høye effektiviteten til HT, klarer den 8-kjerners VM å utkonkurrere den fysiske serveren basert på Xeon wo / HT. Interessant nok viser 4770K et merkbart bedre resultat.

VM 4 kjerne m/HTEkte m/HTVM 8 kjerne4770K resultater0:44 0:49 0:49 0:44 0:51 0:43 Ytelsesvurdering100 90 90 100 86 102

På grunn av den korte utførelsestiden til testpakken, og følgelig den høye feilen, er det vanskelig å bedømme effektiviteten til NT.

HT-aktivering fører til en 14 % reduksjon i ytelse på VM.

Total

Det viktigste å huske på er at i de fleste tilfeller vil ytelsen til moderne systemer være nok for alle kontoroppgaver, mest sannsynlig selv med en margin. Og siden ytelsesnivået er tilstrekkelig, vil brukeren ikke være interessert i hva kostnadene er.

Java

Denne testpakken er interessant ved at Java i hovedsak er en virtuell maskin, og derfor betyr å kjøre Java på Oracle VM VirtualBox å kjøre en virtuell maskin på en virtuell maskin, noe som innebærer en dobbel abstraksjon fra maskinvaren. Det er derfor man bør forvente tilstrekkelige kostnader - alle de viktigste ytelsestapene skjedde på nivået med å portere programkoden til Java.

Kostnadene for en 8-kjerners VM ble satt til 8 %, og en 4-kjerners en - 5 %.

På grunn av den høye effektiviteten til HT og lave kostnader, viser 8-kjerners VM 6 % høyere ytelse enn Xeon wo / HT. Gevinsten fra NT på ekte maskinvare var 16 %, og på VM - 12 %.

JavaEkte m/HThw 4/8 vm 8
Vekst fra NT15% 12%

Når vi ser på Java-resultatene, kan vi anta at virtualisering av ulike rammer og programmer skrevet på programmeringsspråk med oversettelse til deres egen bytekode ikke vil ha høye kostnader, siden alle hovedkostnadene er "innebygd" i dem. Det vil si at den utbredte bruken av programmeringsspråk med pseudokode ikke er så ille, spesielt for virtuelle maskiner.

Videoavspilling

Denne delen bør kun betraktes som en illustrasjon - siden på ekte systemer brukes DXVA, det vil si maskinvareakselerasjon - følgelig er belastningen på prosessoren minimal. I motsetning til situasjonen med en VM, hvor alle beregninger gjøres i programvare. Det er heller ikke inkludert i sluttresultatet.

La meg minne deg på at verdien av tabellene her er prosessorbelastningsnivået. Hvorfor det er mer enn 100% - kan du lese i metodikken.

MPCHC (DXVA)

Dette er en god illustrasjon på effektiviteten til maskinvareakselerasjon, og det er tydelig når du spiller av video. Men det er verdt å huske at på moderne systemer kan omtrent de samme resultatene oppnås ved hjelp av andre optimaliseringer - samme Qsync for å jobbe med video, CUDA for grafiske beregninger, etc.

MPCHC (programvare)

Men i programvaremodus er forskjellen mellom en fysisk server og en virtuell liten - 4%. De facto er ytelsesoverhead ubetydelig.

VLC (DXVA)

Interessant nok er prosessorbelastningen for VM-er betydelig lavere i VLC enn i MPC HC.

VLC (programvare)

I myk modus er det praktisk talt ingen forskjell mellom ekte maskinvare og VM igjen. Aktivering av DXVA i et virtuelt system gir bare ekstra arbeid til prosessoren.

Fleroppgavemiljø

Overheaden i et multitasking-miljø var 32 % og 25 % for henholdsvis en 8-kjerners og 4-kjerners VM. 4-kjerners VM har sviktet veldig dårlig, kostnadene der er så mye som 67%. Hvorfor dette skjer er vanskelig å si (husk, vi snakker om et stabilt resultat med flere løp).

Og hva skjer når NT aktiveres

MultitaskingEkte m/HThw 4/8 vm 8
Vekst fra NT14% 3%

NT-teknologi i et multitasking-miljø bærer frukter for et ekte system - 14% økning, men VM er mye dårligere - 3%.

Å teste multitasking er en ganske subtil prosess som påvirkes av mange faktorer. Derfor er det vanskelig å trekke entydige konklusjoner med én prosent sikkerhet. Hvordan kan du for eksempel forklare det enorme fallet i ytelsen til en firekjerners VM når NT er aktivert? Noen spesifikke funksjoner ved interaksjonen mellom verts-OS og VM? Eller taper applikasjonene som brukes i testen mye i ytelse (og vi så eksemplene ovenfor) og gir sammen et slikt resultat? Forresten, hvis det siste utsagnet er sant, så viser det godt at den totale kostnaden ved å bruke en VM kan være veldig høy.

Til slutt, vær oppmerksom på ytelsen til Core i7-4770k, som i denne testen ligger langt bak testbenken vår, selv om den ikke tillot noen feil i visse oppgaver. Hva er i veien her? Sannsynligvis er årsaken til nedgangen i ytelsen swap på grunn av mangel på RAM, som manifesterer seg bare når flere "tunge" applikasjoner lanseres samtidig. Vi vil imidlertid ikke utelukke andre årsaker.

Gjennomsnittlig poengsum

Dette er selvfølgelig gjennomsnittstemperaturen på sykehuset, men likevel ...

De aritmetiske gjennomsnittlige virtualiseringskostnadene for alle testene var 17 % og 24 % for henholdsvis en 4-kjerners og 8-kjerners VM.

Veksten fra NT var 12 % for en fysisk server og 0 % for en VM.

Og på dette positive notatet, la oss gå videre til konklusjoner.

konklusjoner

Etter min mening (S.K.) er det ikke verdt å analysere ytelse og ytelsestap for individuelle grupper eller applikasjoner: i programvareverdenen er alt for flyktig. Men visse tendenser kan noteres.

Første konklusjon: Hyperthreading hjelper ikke alltid, selv på et ekte system - noen ganger fører aktiveringen til en viss nedgang i ytelsen. Med virtuelle systemer er situasjonen enda mer komplisert: en 8-kjerners VM taper ofte i ytelse til en 4-kjerners. Det vil si at det er mulig å bruke kombinasjonen "4 kjerner + NT på en ekte prosessor" og en 8-kjerners VM kun for de oppgavene der du vet sikkert at resultatet av en slik løsning vil være et pluss, ikke et minus . Men her må du huske at oppgaven til NT nettopp var å forbedre ytelsen i et multitasking-miljø og (som i en VM), å stabilisere belastningen på prosessoren. Derfor bør systemet som helhet alltid ha nytte av aktiveringen av NT - spesielt serveren.

Andre konklusjon: kostnadene ved å bytte til en virtuell maskin avhenger heller ikke av typen oppgaver, men av den spesifikke applikasjonen. Dessuten bestemmes effektiviteten av å bruke denne eller den applikasjonen i en virtuell maskin (VM), tilsynelatende av hvor mye dens algoritmer "passer" med funksjonene til VM. For eksempel kan vi ikke fastslå med sikkerhet om et stort fall i ytelse ved arbeid med bilder i en VM er en konsekvens av at denne klassen av oppgaver generelt er dårlig "virtualisert", eller en konsekvens av at eksisterende applikasjoner rett og slett bruker utdaterte algoritmer som ikke er optimalisert, fordi alt fungerer bra på moderne raske prosessorer.

Dessuten har jeg alvorlige mistanker om at denne oppgaven kan brukes på alle applikasjoner hvor kostnadene er høye - disse applikasjonene er rett og slett dårlig optimalisert. Det vil si at de bruker ressursene til ekte systemer ineffektivt, bare det høye ytelsesnivået til moderne prosessorer lar deg ikke bry deg med dette. Denne oppgaven kan tilskrives profesjonelle applikasjoner for arbeid med 3D-grafikk, vitenskapelige beregninger og noen andre frittstående applikasjoner.

I noen grupper har virtualisering en relativt liten overhead - lyd- og videokoding er de mest slående. Som regel snakker vi om en enkel og stabil arbeidsbelastning knyttet spesifikt til beregninger. Dette bringer oss til neste konklusjon.

Konklusjon tre: Nå begynner hovedproblemene for en virtuell maskin når det virkelige systemet kan bruke maskinvareoptimaliseringer. Det er mange forskjellige optimaliseringsteknologier til disposisjon for et ekte system: DXVA, OpenCL, QSync og andre - som lar deg fjerne belastningen fra sentralprosessoren og øke hastigheten på oppgaven. Det er ingen slik funksjon i Virtual Box virtuelle system. VT-d-instruksjonssettet tillater imidlertid videresending av PCI-enheter til det virtuelle miljøet. For eksempel så jeg (S.K.) en profesjonell løsning fra HP med Nvidia Grid 2 videoadaptere, hvis dataressurser kan virtualiseres. Generelt avhenger situasjonen av selve den virtuelle maskinen, enheter, drivere, systemer osv. Derfor kommer vi definitivt tilbake til dette problemet.

Til slutt bør det sies noen ord om følgende ting (selv om vi vil lagre hovedkonklusjonene til slutten av alle tester). Er det verdt å beregne prosentandelen av ytelsesfall, og basert på det bestemme hvilke oppgaver som skal virtualiseres og hvilke som ikke bør? Er for eksempel et 20 % fall i arbeidshastighet mye eller lite?

SK Etter min mening er det ikke verdt å stille spørsmålet på denne måten, og her er hvorfor. Å bestemme om du skal bruke virtuelle systemer eller ikke er en forretningsorganisasjon, ikke en teknisk. Og forretningsfordelene kan oppveie til og med et 50 % fall i produktivitet. Men selv om man ser på individuelle og tilsynelatende ressurskrevende oppgaver, er ikke alt så opplagt. For eksempel tar transkoding av en video eller beregning av en tredimensjonal modell 30 minutter, og en virtuell tar 50 minutter. Det ser ut til at konklusjonen er åpenbar - å bruke et ekte system er mer optimalt! Men hvis scenen vurderes på brukerens arbeidsstasjon, kan den ikke fungere denne gangen. Og hvis du kan slippe den på serveren og gjøre den neste (og forberedelsen vil garantert ta mer enn 50 minutter), vil den totale arbeidseffektiviteten øke. Og hvis flere scener også behandles på serveren - selv om de er trege på rad - så er gevinsten åpenbar fra forretningsmessig synspunkt (og med riktig parallellisering av oppgaver).

SI På den annen side velges serveren veldig ofte for et visst ytelsesnivå generelt eller i visse applikasjoner, og samtidig i et svært begrenset budsjett. Det vil si at det ikke vil fungere å ta et kraftigere og dyrere alternativ "i reserve". Under disse forholdene kan overgangen til et virtuelt system (og valg av programvare med høye kostnader) føre til at serveren som et resultat rett og slett ikke vil takle høye belastninger og oppgavene som er tildelt den.

Dette avslutter denne utforskningen av virtuell systemytelse med Windows og Oracle VM VirtualBox. I den neste artikkelen vil vi vurdere hvordan ytelsen til Windows 7 i en VM vil endres hvis verts-OSet er Linux.