Time xen virtualize Linux pentru a testa aplicațiile

Datorită fluxului constant al actualizărilor și eliminării erorilor în software-ul existent, lumea open source este în flux constant. Încercările de a rămâne la curent cu toate actualizările de software pot dura tot timpul. Unul dintre aspectele subtile când actualizați software-ul dvs. este că nu știți niciodată dacă aplicațiile vor rula după finalizarea upgrade-ului. Cele mai multe sisteme de gestionare a pachetelor oferă abilitatea de a reveni la starea anterioară, dar acest lucru este adesea insuficient; În mod ideal, doriți să jucați cu noile actualizări în modul de testare și să le încercați într-un mediu în care nu pot face nimic rău.







Ca un copil pe terenul de joacă, vrei să ai propriul tău nisip pentru jocuri, unde poți să te încurci și să nu-ți faci griji pentru curățenie.

Virtualizarea este adesea folosită pentru a izola aplicațiile și sistemele de toate celelalte pe același hardware (asemănător cu redarea în sandbox). Linux suportă multe forme diferite de virtualizare, de la emulatori hardware la virtualizare completă a hardware-ului. Una dintre cele mai recente progrese în lista tehnologiilor de virtualizare este Xen, dezvoltată la Universitatea din Cambridge. Xen merită atenție datorită performanței și securității fără precedent.

Ce este Xen

Dezvoltat la Universitatea Cambridge ca un proiect de cercetare, Xen a găsit un răspuns mare în comunitatea open source. Xen este un monitor paravirtualizant al mașinii virtuale (paravirtualizing VMM), adică sistemul de operare se modifică în anumite zone pentru a îndeplini cerințele către hypervisor, în timp ce aplicațiile care rulează în acest sistem de operare rămân neschimbate. Pentru comparație, alte sisteme de virtualizare, cum ar fi VMWare, oferă virtualizare completă (ceea ce înseamnă că ele nu necesită modificarea rulează sistemul de operare), dar au nevoie pentru a converti codul mașină în timp real, care nu poate afecta, dar performanța.

Deoarece Xen necesită o conversie a sistemului de operare, nu puteți lua nucleul Linux și rulați-l sub hypervisor Xen până când kernel-ul este portat în arhitectura Xen. Cu toate acestea, dacă sistemul poate utiliza un nou kernel Linux care este portat pentru arhitectura Xen, atunci puteți rula sistemul existent neschimbat.

Figura 1. O ilustrare simplă a arhitecturii Xen

În căutarea lui Xen

Codul sursă pentru Xen este disponibil pe pagina proiectului (căutați linkul din secțiunea Resurse) și dacă aveți deja o distribuție Linux, este posibil să instalați Xen instalând / actualizând pachetele. Iată principalele distribuții care includ Xen:

Verificați distribuția - dacă nu se află în această listă, este posibil să fie necesar să utilizați codul sursă. Cu excepția diferențelor specifice de distribuție în procedurile de instalare, Xen lucrează la fel, indiferent de distribuția utilizată.

Folosind Fedora Core

Am o instalare de lucru a Fedora Core 3. pentru a nu umfla articolul, vă spun cum să rulați sistemul pe Fedora Core.

Fedora a atras deja atenția unei mari comunități de utilizatori Xen, deși pachetele au fost postate recent pe canalele de dezvoltare. Deoarece mulți oameni experimentează Xen pe Fedora, este posibil să reușești să găsești suport online.

Xen Instalare

Pentru a vă ajuta să începeți rapid și cu succes începerea lucrului cu Xen, accentul în această secțiune se referă la punctele importante ale Ghidului de pornire rapidă din secțiunea Resurse. Deoarece actualizările Xen sunt integrate în Fedora, Ghidul de pornire rapidă se va schimba în timp și sperăm că aceste modificări vor fi reflectate în Wikipedia.

Începeți prin setarea setului minim de funcții server pentru sistemul de bază. Sistemul de bază este hypervisor dvs. și nu va rula aplicații server. Puteți instala pachetele de care aveți nevoie pe serverele Xen care rulează în partea superioară a acestui sistem, adică nu este nevoie să instalați imediat aplicațiile pe care doriți să le executați.







După ce porniți sistemul, va trebui să faceți upgrade la cea mai recentă versiune a Fedora, numită rawhide. Puteți face acest lucru setând pentru /etc/yum.repos.d/ enabled = 0. cu excepția fedora-devel.repo, pentru care a fost activată = 1.

Acum, după configurarea depozitului de yum, trebuie să actualizați sistemul la hardhide, după care puteți rula ultima versiune Xen.

Listarea 1. Actualizarea FC3 pentru hrana crudă și instalarea pachetelor Xen

Apoi creați un sistem de fișiere cu care să lucrați.

2. Formatarea și configurarea sistemelor de fișiere ale serverului Xen

După formatarea și montarea sistemelor de fișiere ale serverului Xen, următorul pas este să instalați pachetele necesare pentru a rula ceva pe ele. Pentru a rula un server Web pe serverele dvs. Xen, trebuie să instalați un set de pachete de servere Web. (Atenție: acest lucru poate dura ceva timp.) Începeți-vă să faceți o plimbare.)

Listing 3. Instalarea pachetelor server Xen

(În acest moment merită o plimbare.)

Ați instalat toate pachetele necesare și acum trebuie să adăugați un simplu fișier fstab care îi spune serverelor Xen că vor folosi sda1 ca root. Acest dispozitiv root este de fapt un dispozitiv virtual (furnizat de hypervisor), dar este puțin probabil ca serverele dvs. să știe despre el.

Listing 4. Xen fișier fstab

Salvați acest fișier ca / ​​xen / base / etc / fstab. Fără instalarea normală a Fedora, fișierul fstab nu va fi creat. Cel mai probabil, versiunile viitoare ale Fedora vor include un instrument pentru a rezolva această problemă.

În cele din urmă, trebuie să efectuați acțiuni de rutină pentru a porni sistemul corect. În acest moment, Xen are unele dezacord cu initrd. astfel încât dacă doriți ca sistemul să pornească, trebuie să creați mai multe dispozitive. Apoi, pentru ca totul să funcționeze fără probleme, va fi util să mutați bibliotecile TLS; în acest moment, nu interacționează bine cu Xen. După ce ați terminat acest lucru, puteți dezabona sistemul de fișiere.

Lista 5. Ultima revizie înainte de lansare

Începând cu Xen

Acum că ați configurat cu greu sistemele dvs. de oaspeți, puteți supraîncărca aparatul și puteți începe să utilizați kernelul Xen. Probabil veți vedea mai multe informații decât se afișează de obicei pe ecran și veți primi, de asemenea, un mesaj oribil despre biblioteca TLS (pe care ați mutat-o ​​în locul inaccesibil, conform secțiunii anterioare).

Xen necesită fișiere de configurare pentru fiecare server care este pornit. Deși puteți crea un fișier de configurare dinamic pentru toate serverele dvs., vă recomandăm să creați două fișiere de configurare statice, câte unul pentru fiecare server. După cum puteți vedea, eticheta de disc spune serverelor că imaginea dvs. este un dispozitiv sda1.

Listing 6. Fișiere de configurare a serverului Xen

Pentru a porni serverele utilizând comanda start xend, porniți serviciul Xen și apoi utilizați comanda xm create base pentru a crea BaseServer din fișierul de configurare de bază. După acești pași, veți fi dusi la consola de oaspeți Xen și veți putea urmări procesul de încărcare. Dacă într-un anumit moment doriți să părăsiți consola de oaspeți și să reveniți la consola hypervisor, apăsați Ctrl-].

Folosind Xen

Ați petrecut ceva timp schimbând configurațiile și configurarea sistemului pentru a lansa o pereche de servere Xen. Și ce aveți după această muncă grea?

Acum aveți două copii ale sistemului cu kerneluri identice, virtualizate pe o singură mașină. Dacă BaseServer este un mediu stabil în care veți rula serviciul Web în modul implicit, TestSever poate furniza cele mai recente actualizări furnizate de Fedora rawhide. Puteți actualiza opțional sistemul dvs. TestSever, încercând toate versiunile noi de actualizări de software - și atunci când simțiți că totul este suficient de stabil, puteți rula TestSever ca BaseServer.

Configurarea BaseServer

Activitatea BaseServer este momentul potrivit pentru a modifica configurația serviciului apache httpd pe care îl veți executa. S-ar putea să doriți să dezactivați ssl ștergând fișierul ssl.conf din directorul /etc/httpd/conf.d/; în caz contrar, va trebui să generați certificate pentru servere. Este posibil să fie necesar să adăugați și apache la sistem.

Configurarea TestServer

După ce ați configurat BaseServer, opriți-l executați oprirea de la consola BaseServer. Dacă ați ieșit deja din consola BaseServer, restabiliți accesul la aceasta utilizând consola xm BaseServer.

Copiați acum fișierul imagine de bază folosind cp /root/base.img /root/test.img. astfel veți obține o copie duplicată a sistemului de fișiere. Comanda xm create -c test va porni același server ca BaseServer, dar sub numele TestServer. Conectați-vă la TestServer și activați suportul de hărți crud așa cum ați făcut în secțiunea Instalarea Xen. apoi rulați update-ul yum.

TestServer dvs. este configurat în același mod ca BaseServer, dar l-ați actualizat cu cele mai noi pachete oferite de Fedora rawhide. Este timpul să te distrezi cu ce să vezi dacă site-ul tău Web funcționează încă.

Alte caracteristici Xen

Sper că aceste instrucțiuni scurte și un exemplu simplu vă vor ajuta să rulați Xen și să experimentați cu el. Pentru a deveni prieten cu Xen cât mai repede posibil, nu am vorbit despre cum să folosesc lucruri precum LVM și instantanee sau cum să migrăm un server Xen pe o rețea de la o mașină la alta. Și acum că ați aflat despre unele dintre beneficiile pe care le oferă Xen, explorați secțiunea Resurse. pentru a învăța alte trucuri minunate pe care le puteți rula cu ea.

Descărcați resurse

Subiecte conexe







Trimiteți-le prietenilor: