Langbein Skrevet 30. juni 2007 Del Skrevet 30. juni 2007 Noen som har erfaring med "OS-level virtualisering" i GNU/Linux? Tenker da på Linux-VServer, OpenVZ/Virtuozzo™ o.l ? Jeg føler at andre virtualiseringsteknologier som Xen, VMWare, kvm, qemu osv. får det meste av oppmerksomheten. Alle disse er hardware-emulatorer, i motsetning til virtualisering på OS-nivå. Selv om teknologiene er totalt forskjellig, er det jo en del overlapping i bruksområdene mellom disse måtene å virtualisere på. Skal man kjøre fremmede OS (*BSD, Solaris, Windows osv.) må man såklart bruke en maskinemulator, men hvis man isteden ønsker å "partisjonere" OSet for å lage flere virtuelle maskiner kan det være interessant å bruke f.eks. OpenVZ. Spesielt nyttig er det til hosting-tjenster fordi hver av de virtuelle maskinene har én eller flere egne IP-adresser, og kjører fullstendig adskilt fra host-OSet med egen root-konto og hele sulamitten. Det er selvsagt mye mindre overhead ved å bruke denne teknologien, fordi man slipper å emulere hardware, og i tillegg blir kernelen delt mellom host og gjester. Har lekt meg litt med OpenVZ og må si det er ganske sexy, men er såklart nysgjerring på andres erfaringer, og hvilke løsninger som er best osv. En ulempe med OpenVZ er at de er veldig orientert mot RHEL/CentOS, så det kan være mer stress å installere hvis man bruker andre distroer. Dvs. mer manuelt arbeid, pluss at ikke alle kernelversjoner er støttet. Jeg har riktignok god erfaring med å bruke det på Debian stable. Teknologien er uansett mest aktuell på servere, og da kjører jo folk ofte Debian, CentOS osv. Et bitelite kodeeksempel til slutt, som viser hvordan man starter en VE (gjest), og entrer denne: (Host-maskinen heter etch, og gjesten heter etch101 - dvs. har flere guests da men viser bare én i eksempelet) Klikk for å se/fjerne innholdet nedenfor etch:~# vzctl start 101 Starting VPS ... VPS is mounted Adding IP address(es): 192.168.1.6 Setting CPU units: 1000 Set hostname: etch101.upc.no File resolv.conf was modified VPS start in progress... etch:~# vzlist VPSID NPROC STATUS IP_ADDR HOSTNAME 100 6 running 192.168.1.5 etch100.upc.no 101 4 running 192.168.1.6 etch101.upc.no etch:~# vzctl enter 101 entered into VPS 101 root@etch101:/# root@etch101:/# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 1952 644 ? Ss 20:48 0:00 init [2] root 18385 0.0 0.1 1628 568 ? Ss 20:48 0:00 /sbin/syslogd root 18401 0.0 0.2 4932 1064 ? Ss 20:48 0:00 /usr/sbin/sshd root 18413 0.0 0.1 2196 748 ? Ss 20:48 0:00 /usr/sbin/cron root 19461 0.0 0.0 1972 448 ? Ss 20:49 0:00 vzctl: pts/0 root 19462 0.0 0.2 2728 1524 pts/0 Ss 20:49 0:00 -bash root 19465 0.0 0.1 2224 892 pts/0 R+ 20:49 0:00 ps aux root@etch101:/# uname -a Linux etch101.upc.no 2.6.18-openvz-686 #1 SMP Tue Apr 10 20:28:40 CEST 2007 i686 GNU/Linux root@etch101:/# exit logout exited from VPS 101 etch:~# vzctl stop 101 Stopping VPS ... VPS was stopped VPS is unmounted Inni gjesten kan man gjøre praktisk talt alt man kan i et "virkelig" OS. Man kan konfigurere og installere software som vil, og kjøre webservere, databaser eller hva man måtte drømme om Lenke til kommentar
Sokkalf™ Skrevet 1. juli 2007 Del Skrevet 1. juli 2007 Interessant. Har ikke prøvd, men det hadde vært moro å prøve. Kjører pr. idag en server som er filserver, mailserver, webserver, databaseserver og router. Det blir jo litt "rotete", og hadde kanskje vært en fordel å skille ut de forskjellige tjenestene i virtuelle maskiner. Hvordan er det med hardware-krav o.l? Spiser en virtuell maskin mye minne etc? Lenke til kommentar
Langbein Skrevet 2. juli 2007 Forfatter Del Skrevet 2. juli 2007 (endret) Interessant. Har ikke prøvd, men det hadde vært moro å prøve. Kjører pr. idag en server som er filserver, mailserver, webserver, databaseserver og router. Det blir jo litt "rotete", og hadde kanskje vært en fordel å skille ut de forskjellige tjenestene i virtuelle maskiner. Det er særlig spennende hvis du vil tilby noen slags form for hosting for tredjepart, nettopp fordi VE'ene fungerer som selvstendige maskiner med egne IP-adresser og kontoer. Hver VE har altså sin egen root-konto, og du kan dermed gi ut slike "virtuelle" root-kontoer til andre folk - noe du såklart aldri ville gjort med den ordinære root-kontoen din Dette åpner for muligheter man ikke har uten virtualisering, fordi webserver, SQL og alt kan installeres og konfigureres fritt av brukerne. Men anvendelsesområdene er såklart ikke begrenset bare til hosting-tjenester, og du kan bl.a. bruke det for å øke sikkerheten vha. isolering av tjenester, eller du kan bruke det til testing av software fordi du dermed slipper å "tukle" med host-maskinen din. Kort og godt - bare fantasien setter grenser Hvordan er det med hardware-krav o.l? Spiser en virtuell maskin mye minne etc? 8981007[/snapback] Veldig lite overhead Den ekstra CPU-bruken skal være minimal, og hver VE krever heller ikke mye RAM. I mitt eksempel, som riktignok er en minimal Debian-installasjon (Etch) uten så mye annet enn openssh-server gående, så øker RAM-bruken med under 2MB etter jeg starter en ny VE: (RAM-bruk øker fra 11,5 MB til 13,3 MB - ser bort fra buffers/cache) Endret 2. juli 2007 av Langbein Lenke til kommentar
panzerwolf Skrevet 3. juli 2007 Del Skrevet 3. juli 2007 Interessant. Kanskje jeg skal snuse mer på noe sånt noe ettersom jeg allered har planer om å måke flere tjenester inn på én boks. Kanskje det er bedre å kjøre flere virtuelle Linux-distroer i stede? Skal følge med litt på denne tråden jeg Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå