Maskiner/Vrimmel: Difference between revisions
No edit summary |
(benkemerking av VM, litt mer info) |
||
Line 2: | Line 2: | ||
Vrimmel kjører hypervisoren Xen. Denne lar deg kjøre Linux (og andre portede OS) virtualisert med tilnærmet full hastighet, selv uten noe spesiell hardware-støtte. | Vrimmel kjører hypervisoren Xen. Denne lar deg kjøre Linux (og andre portede OS) virtualisert med tilnærmet full hastighet, selv uten noe spesiell hardware-støtte. | ||
== Ytelse == | |||
Her er en (dårlig) benchmark som viser ytelsesforskjellen på vrimmel og i en vm. | |||
Først kjører jeg en dum test av CPU-ytelse (SuperPi, regner ut desimaler i π). | |||
Så laster jeg ned en stor fil fra flode over sftp. | |||
Deretter laster jeg ned emacs fra ftp.gnu.org, pakker ut og kompilerer både rett på jernet og i VMen (ikke samtidig). | |||
Jeg bruker standard konfigurasjon og ingen opsjoner på noe som helst. | |||
Vrimmel kjører her 4x 10k rpm disker i RAID-5, har 2GB minne (hvorav 1GB er brukt av VMen) og full tilgang til alle CPUene. | |||
VMen har tilgang til 2 VCPUer, 1GB minne og en 10k rpm disk. Nettverkstilgangen til VMen er bridget igjennom Vrimmel. | |||
{| | |||
! Test | |||
! På jernet | |||
! I vm | |||
! relativ ytelse | |||
|- | |||
| SuperPi 20 | |||
|49s | |||
|51s | |||
|96% | |||
|- | |||
| scp 363MB | |||
|28.0 MB/s | |||
|20.2 MB/s | |||
|72% | |||
|- | |||
|tar jxf emacs | |||
|30.6s | |||
|30.2s | |||
|99% | |||
|- | |||
| make emacs | |||
|233s | |||
|343s | |||
|69% | |||
|} | |||
Vi ser at ytelsen i VMen varierer fra ca. 70% til opp mot 100%. Noe skyldes kanskje forskjeller i IO-subsystemet på VMen og Vrimmel selv (som har batteri-backet RAID). Jeg kommer sikkert til å kjøre nye tester når VMene også kjører fra et RAID-5 array. | |||
== Hvordan bruke vrimmel == | == Hvordan bruke vrimmel == | ||
Line 7: | Line 46: | ||
Logg inn som root. | Logg inn som root. | ||
Se på konfigurasjonseksemplet skynet-01 som ligger i /root/. Ta en kopi av denne, kall den <vmnavn>.cfg og juster etter behov. Legg spesielt merke til konfigurasjonen av disken for den virtuelle maskinen, her må du (ihvertfall for øyeblikket) finne en _ledig_ disk å bruke. | Se på konfigurasjonseksemplet skynet-01 som ligger i /root/. Ta en kopi av denne, kall den <vmnavn>.cfg og juster etter behov. Legg spesielt merke til konfigurasjonen av disken for den virtuelle maskinen, her må du (ihvertfall for øyeblikket) finne en _ledig_ disk å bruke. Dersom du vil ha samme MAC på nettverksinterfacet hver gang VMen starter, må du spesifisere den selv. | ||
Kjør følgende kommando. Dersom alt er i orden, skal installasjonen av debian starte: | Kjør følgende kommando. Dersom alt er i orden, skal installasjonen av debian starte: | ||
Line 15: | Line 54: | ||
Installer som normalt. | Installer som normalt. | ||
For å starte VMen etter installasjon (og ellers), bruk xm create | For å starte VMen etter installasjon (og ellers), bruk xm create <vmnavn>.cfg | ||
Hvis alt fungerer bør du dytte configen din inn i /etc/ | |||
Disse instruksene er for det meste stjålet fra http://wiki.debian.org/Xen , som er et flott sted å begynne å lete dersom du har flere spørsmål. | Disse instruksene er for det meste stjålet fra http://wiki.debian.org/Xen , som er et flott sted å begynne å lete dersom du har flere spørsmål. | ||
Line 21: | Line 62: | ||
== Andre nyttige kommandoer == | == Andre nyttige kommandoer == | ||
xm list | "xm list" - liste over kjørende VMs, hvorav Dom0 er vrimmel selv. | ||
"xentop" - top, for virtuelle maskiner | |||
"xm console <vmnavn>" - Koble til konsollet. Denne stjeler terminalen din. Jeg klarte å komme ut igjen en gang ved hjelp av kontroll, option, shift, escape og noen taster oppe i høyre hjørne av det alfanumeriske tastaturet. (Ikke så lett med C-] når man har mac. | |||
"xm shutdown <vmnavn>" - sender et shutdown-signal til VMen, eller | |||
"xm destroy <vmnavn>" - tilsvarer å nappe ut strømkabelen. | |||
"xm migrate <vmnavn> <vert> --live" - overfører vmen til en annen maskin mens den kjører, uten avbrudd. Veldig fancy. | |||
== TODO == | |||
- Sett opp diskene på en fornuftig måte (RAID-5 med LVM?) | |||
- Lag et helt ferdigrullet oppsett for debian (ferdig installert, satt opp) | |||
- Lag et script for å opprette en maskin ut ifra dette "ny-vm hagbart" | |||
- Test stabilitet under last med flere VMer | |||
- Kjør ytelsestesting for å kvantifisere ytelsestapet av å kjøre i en vm |
Revision as of 09:21, 1 May 2010
Hva gjør vrimmel
Vrimmel kjører hypervisoren Xen. Denne lar deg kjøre Linux (og andre portede OS) virtualisert med tilnærmet full hastighet, selv uten noe spesiell hardware-støtte.
Ytelse
Her er en (dårlig) benchmark som viser ytelsesforskjellen på vrimmel og i en vm. Først kjører jeg en dum test av CPU-ytelse (SuperPi, regner ut desimaler i π). Så laster jeg ned en stor fil fra flode over sftp. Deretter laster jeg ned emacs fra ftp.gnu.org, pakker ut og kompilerer både rett på jernet og i VMen (ikke samtidig). Jeg bruker standard konfigurasjon og ingen opsjoner på noe som helst. Vrimmel kjører her 4x 10k rpm disker i RAID-5, har 2GB minne (hvorav 1GB er brukt av VMen) og full tilgang til alle CPUene. VMen har tilgang til 2 VCPUer, 1GB minne og en 10k rpm disk. Nettverkstilgangen til VMen er bridget igjennom Vrimmel.
Test | På jernet | I vm | relativ ytelse |
---|---|---|---|
SuperPi 20 | 49s | 51s | 96% |
scp 363MB | 28.0 MB/s | 20.2 MB/s | 72% |
tar jxf emacs | 30.6s | 30.2s | 99% |
make emacs | 233s | 343s | 69% |
Vi ser at ytelsen i VMen varierer fra ca. 70% til opp mot 100%. Noe skyldes kanskje forskjeller i IO-subsystemet på VMen og Vrimmel selv (som har batteri-backet RAID). Jeg kommer sikkert til å kjøre nye tester når VMene også kjører fra et RAID-5 array.
Hvordan bruke vrimmel
Logg inn som root.
Se på konfigurasjonseksemplet skynet-01 som ligger i /root/. Ta en kopi av denne, kall den <vmnavn>.cfg og juster etter behov. Legg spesielt merke til konfigurasjonen av disken for den virtuelle maskinen, her må du (ihvertfall for øyeblikket) finne en _ledig_ disk å bruke. Dersom du vil ha samme MAC på nettverksinterfacet hver gang VMen starter, må du spesifisere den selv.
Kjør følgende kommando. Dersom alt er i orden, skal installasjonen av debian starte:
xm create -c xm-debian.cfg install=true install-mirror=ftp://ftp.no.debian.org/debian
Installer som normalt.
For å starte VMen etter installasjon (og ellers), bruk xm create <vmnavn>.cfg
Hvis alt fungerer bør du dytte configen din inn i /etc/
Disse instruksene er for det meste stjålet fra http://wiki.debian.org/Xen , som er et flott sted å begynne å lete dersom du har flere spørsmål.
Andre nyttige kommandoer
"xm list" - liste over kjørende VMs, hvorav Dom0 er vrimmel selv.
"xentop" - top, for virtuelle maskiner
"xm console <vmnavn>" - Koble til konsollet. Denne stjeler terminalen din. Jeg klarte å komme ut igjen en gang ved hjelp av kontroll, option, shift, escape og noen taster oppe i høyre hjørne av det alfanumeriske tastaturet. (Ikke så lett med C-] når man har mac.
"xm shutdown <vmnavn>" - sender et shutdown-signal til VMen, eller
"xm destroy <vmnavn>" - tilsvarer å nappe ut strømkabelen.
"xm migrate <vmnavn> <vert> --live" - overfører vmen til en annen maskin mens den kjører, uten avbrudd. Veldig fancy.
TODO
- Sett opp diskene på en fornuftig måte (RAID-5 med LVM?) - Lag et helt ferdigrullet oppsett for debian (ferdig installert, satt opp) - Lag et script for å opprette en maskin ut ifra dette "ny-vm hagbart" - Test stabilitet under last med flere VMer - Kjør ytelsestesting for å kvantifisere ytelsestapet av å kjøre i en vm