Din moment ce vorbim despre virtualizare - cineva cu siguranță există o întrebare rezonabilă: de ce este necesar, la toate? Voi nota că următoarea discuție se axează pe virtualizarea serverelor. Despre virtualizarea de prezentare si aplicare - poate scrie mai târziu.
Sunt sincer, eu sunt un tehnician „la os“ și prescurtările la modă, cum ar fi TCO, ROI etc. care sunt foarte mândru de marketing funcționează domnilor - pentru mine sunt „puzzle chinezesc“. Respectiv - voi scrie despre ceea ce vad ca un tehnician.
În consecință, mulți administratori de sistem a pus un controler de domeniu pe un singur server fizic, și poarta de acces la Internet - pe de altă parte. Și asta, practic - bine, dacă hackerii ipotetice atac poarta de acces la Internet, iar atacul va avea succes - probabilitatea ca ei proberutsya poarta de acces în continuare și pentru a obține acces la alte servere - mult mai puțin.
Dar aceasta ridică o nouă problemă: fiecare singur server - bine în valoare de bani, și nu mici (în cazul serverelor de marcă). Fiecare server de individ consumă energie și ocupă spațiu pe birou sau într-un rack. Poate nu pare a fi deosebit de relevant pe cineva, cu toate acestea - este un avantaj important. Mai ales în cazul în care serverul situat într-un al treilea centru de date de partid, care percepe o taxă pentru unitățile deținute în rafturi, iar consumul de energie este strict limitată. Mai mult decât atât, în Europa există o taxă care depinde în mod direct de cantitatea de energie electrică consumată de către companie. Nu-mi amintesc cum acest impozit se numește - ceva de-a face cu mediul și eliberarea de CO2.
În plus, fiecare dintre aplicațiile rareori consumă multe resurse de sistem: controlere de domeniu și gateway-uri de internet la fel - au rareori utilizarea procesorului depășește 10%. Utilizarea unei astfel de sarcină la fiecare server în parte arată irațional. Combinând toate pe un singur server - așa cum am văzut, nu este corect din punct de vedere al siguranței. În cazul în care se înțelege de aur? Cum faci asta și lupii au fost hrăniți și oile sunt sigure (și păstor - memoria eternă) oferă tehnologia de virtualizare drept răspuns.
Ce este virtualizarea? Virtualizare (și anume - virtualizarea serverelor) - este o tehnologie de emulare software de hardware. Mai mult decât atât, mai multe dintre aceste „calculatoare“ virtuale pot fi rulate pe o singură mașină fizică. Astfel de mașini virtuale pot fi plasate sistemul de operare și aplicații, și să lucreze cu ei, ca mașini fizice separate. Fiecare mașină virtuală utilizează pentru activitatea sa unele dintre resursele hardware ale unei mașini fizice. Și, de regulă, cantitatea de resurse hardware acordate mașini virtuale individuale pot fi ajustate - atât rigid (statică) și dinamică. Astfel, resursele hardware sunt utilizate mult mai eficient.
Un exemplu simplu: dacă avem două aplicații care locul de muncă este necesară pentru a 128MB de RAM, și care nu poate fi instalat pe un singur server fizic, puteți:
- 1) Cumpără două server cu 128M RAM;
- 2) Cumpara un singur server cu 256M RAM (plus un anumit număr de „rezervă“ și pentru a porni gazdă OS) și rula aplicații în ambele mașini virtuale separate.
După cum se poate observa, în al doilea caz, resursele de server (de exemplu, CPU) este utilizat mai eficient, iar costul soluției este mult mai mic, deoarece un server cu o cantitate puțin mai mare de memorie RAM este întotdeauna mai ieftin decât două servere.
Poate părea că desfășurarea mai multor servere virtuale pe un singur fizic - aceasta este „pune toate ouăle într-un singur coș“, dar eu rețineți că acest lucru este doar parțial adevărat. Da, cu această desfășurare, vom obține încă un singur punct de eșec într-un singur server fizic, dar cu toate acestea, toate mașinile virtuale de pe stratul fizic sunt izolate unele de altele și de sistemul de operare. Acest lucru rezultă din virtualizarea ideologiei foarte. În consecință, atunci când, lovit, de exemplu, un virus, una dintre mașinile virtuale - toate celelalte mașini nu vor fi afectate de acțiunile sale distructive, ceea ce face dificil să se evite atunci când combinarea diferitelor sarcini pe un singur server, fără virtualizare.
Dacă doriți să evitați singur punct de eșec - puteți cumpăra, de exemplu, două servere și să implementați un cluster. În acest caz, două servere fizice va acționa ca o platformă pentru virtualizare. În cazul în care mașina virtuală, de exemplu, 5 - este încă servere individuale 5i profitabile. Și dacă unul dintre serverele din cluster - mașinile virtuale continuă să lucreze pe de altă parte - asta e tot. Utilizatorii acestui, probabil, nu va observa. Ei bine, poate că ei se vor opri de lucru pentru câteva secunde, nu este la fel de critic ca eșec timp de mai multe ore.
Administratorii de sistem, de altfel, se va aprecia comoditatea și alte virtualizare: desfășurarea mașină virtuală viteza și ușurința de rezervă.
După cum știți, desfășurarea de server nou nevoie de ceva timp. Acesta - instalarea sistemului de operare, instala drivere, instalați aplicații, etc. Da, desigur, toți parametrii instalației sistemului de operare poate fi setat într-un fișier de răspuns nesupravegheat, conducătorul auto poate fi integrat în distribuție, cerere de a stabili, de exemplu, printr-un RunOnce, dar este încă nevoie de timp pentru a instala. Chiar dacă creați o imagine completă a sistemului - în primul rând, implementarea acestuia va dura încă aproximativ 10-15 minute doar din cauza volumului său și viteza de citire a rețelei sau DVD-ROM, și în al doilea rând - pentru a crea o astfel de imagine, de regulă, necesar să se recurgă la ajutorul software-ului terță parte. Cu mașinile virtuale este mult mai simplu: puteți crea un sistem complet identice „clone“ ale mașinii virtuale pentru câteva clicuri de mouse, iar procesul durează aproximativ câteva minute - după viteza subsistemului disc server este mult mai mare decât lățimea de bandă de rețea, sau viteza de citire DVD-ROM.
Iată un exemplu din propria mea experiență. Biroul unde am lucrat o dată, a lucrat, printre altele, și dezvoltarea de software. Desigur, dezvoltatorii nevoie undeva pentru a testa și depana programele lor. Nu ar putea fi mai potrivite pentru această mașină virtuală. Datorită Clonarea - au reușit să creeze o imagine de maestru, care a dus la desfășurarea unei noi mașini virtuale durează aproximativ 3 minute. Și am avut două servere, dintre care fiecare angajat aproximativ 20 de mașini virtuale. Prin modul în care - de a utiliza VMWare ESX Server, a fost pur și simplu două servere separate - fără VMotion și clustere. Cu toate acestea, pentru a gestiona Centrul Virtual utilizat.
Chiar dacă copia de rezervă se face, nu este întotdeauna posibil, pentru a da 100% garanție că de va fi posibil pentru a restabili sistemul de operare la „metalice goale“, și va rula fără erori. Mai ales - în cazul în care configurația hardware-ul este ușor diferită de cea anterioară. Aproape de un sistem de backup dat 100% garanție având funcția de «Bare Metal Restore» - de exemplu, Symantec BackupExec, CA ARCserve, IBM Tivoli Storage Manager, HP Data Protector. Dar acest lucru foarte costurile de software de bani destul de decente, și funcția de «Restore Metal neizolat» va trebui să plătească separat: pentru utilizarea sa, de regulă, necesită o licență separată.
Cu mașinile virtuale mult mai ușor: toate „de fier“ există un standard, deoarece emulat, și o copie de siguranță completă trebuie doar să copiați unul sau mai multe fișiere. Totul. Pentru a restaura doar copia fișierul (e) la un server nou, care este deja instalat pe sistemul de operare gazdă cu mediul de virtualizare, și „captura“ ei - și mașina virtuală va funcționa ca și cum nimic nu sa întâmplat.
Un alt trebuie să menționeze așa-numitele instantanee (instantanee): este - aproximativ - o copie de rezervă a mașinii virtuale, care este stocată în sine. Dacă este necesar, puteți pur și simplu „roll back“ Dev la momentul de a scoate instantaneu - și va funcționa ca și în cazul în care din momentul nimic nu sa schimbat. Mai mult decât atât, într-o singură mașină virtuală poate fi o mulțime de instantanee și pot forma o structură arborescentă. Acest lucru vă permite să „rostogolească înapoi“ sistem exact la cuplul necesar. O astfel de funcție poate folosi, de exemplu, administratorii de sistem, ceea ce face un instantaneu înainte și după orice schimbări majore, și, dacă este necesar, de exemplu, - să se rostogolească până la momentul schimbării. Sau chiar mai devreme. Și apoi, dacă este nevoie - mai târziu. Și nu este nevoie pentru a implementa un sistem de la zero și apoi repetați toate acțiunile. Dezvoltatorii noștri, de altfel, au apreciat această oportunitate: în trecut, atunci când au folosit VirtualPC pe stațiile de lucru - pentru a face aceste „mita“ a fost dificil, de multe ori a trebuit să re-creeze o masina cu o imagine de referință.
Deci, pentru a rezuma pe scurt - de ce a făcut virtualizarea de server - este Gud:
- Utilizarea eficientă a resurselor hardware ale serverului;
- Salvarea bani pe cumpararea de noi servere, economisind energie și spațiu fizic;
- licențe de economii pentru sistemul de operare virtuale (în cazul Microsoft);
- Administrare Ușor: ușurința în mișcare mașini virtuale de pe un server fizic la altul, viteza de desfășurare a mașinilor noi dintr-o imagine de referință, ușurința de backup și recuperare de la ea, utilizarea de „instantanee“.
De fapt, pe acest aș dori să termin acest articol.
Alexander Kosivchenko, MVP