Nesses últimos dias surgiu aqui na empresa a ideia de virtualizar algumas máquinas.
Como não tenho experiência nenhuma em virtualização, é natural o receio de não saber se vale a pena, ou se vai dar certo.
Com base nesse receio, resolvi fazer alguns testes em minha máquina (Um i3 com 4GB de RAM e HD SATA2 de 7200RPM) para descobrir que carga conseguiria comportar. Informações sobre o desempenho da máquina host foram obtidas a partir do comando top.
O software que utilizei para virtualizar foi o KVM e o sistema operacional o Linux Mint 13 (Maya), que é baseado no Ubuntu 12.04. As máquinas virtuais rodam CentOS.
Depois de vários testes, cheguei a seguinte conclusão: é uma boa ideia ter pelo menos 1 núcleo para cada máquina. Na verdade eu já imaginava isso, mas depois do teste, foi confirmado.
Apesar de ser possível rodar mais VMs do que os núcleos que a máquina host possui (Ex.: uma máquina com 4 núcelos rodar 5 VMs), não é recomendável, pois o conjunto como um todo provavelmente vai ficar extremamente lento (e foi isso que aconteceu nos testes).
Também é importantíssimo que você reserve para as máquinas virtuais um pouco menos que o total que a máquina física possui. Ex.: Se você possui 4GB de RAM, é interessante que sobre pelo menos 1GB para a máquina física. Se você não fizer isso, a máquina física irá começar a usar SWAP, e ficar lenta.
Caso a máquina que você pretende virtualizar necessite de muitos recursos, é interessante em alguns casos mantê-la como uma máquina física mesmo. Caso decida virtualizar, pense com carinho nos recursos que pretende destinar a ela, e tenha uma folga para o caso de precisar de mais recursos.
O que foi notado nos testes é que a lentidão se agravou mais ainda porque todas as máquinas faziam uso excessivo de um mesmo recurso: o acesso a disco. Então ter VMs que rodem softwares com características diferentes (Ex.: alguns software requerem mais processamento, outros mais memória, outros mais acesso a disco, rede etc.) pode ser uma boa ideia.
Quer acrescentar alguma coisa? Use os comentários!
Segue abaixo os dados de todos os testes:
### CONFIGURAÇÃO DA MÁQUINA HOST PROCESSADOR: Intel i5 MEMÓRIA: 4GB DE RAM DISCO RIGIDO: SATA2 7200RPM ################################################################################ ### SCRIPT UTILIZADO PARA O TESTE cd / echo $(date +%s) tar -zcf teste.tar var echo $(date +%s) ################################################################################ ### DADOS DOS TESTES TESTE COM 1 VM (1 NÚCLEO - 768MB DE RAM) ANTES LOAD AVERAGE: 0.6, 1.2, 1.2 SWAP UTILIZADO: 15MB PICO LOAD AVERAGE: 2.7, 1.6, 1.82 SWAP UTILIZADO: 15MB TEMPO DE PROCESSAMENTO: 35 segundos -------------------------------------------------------------------------------- TESTE COM 2 VMs (1 NÚCLEO - 768MB DE RAM EM CADA VM) ANTES LOAD AVERAGE: 0.6. 1.2. 1.7 SWAP UTILIZADO: 15MB (DESPREZÍVEL) PICO LOAD AVERAGE: 2.6, 1.6, 1.7 SWAP UTILIZADO: 18MB (DESPREZÍVEL) TEMPO DE PROCESSAMENTO (MÉDIO): 94 segundos -------------------------------------------------------------------------------- TESTE COM 3 VMs (1 NÚCLEO - 768MB DE RAM EM CADA VM) ANTES LOAD AVERAGE: 0.8, 1.2, 1.5 SWAP UTILIZADO: 18MB (DESPREZÍVEL) PICO LOAD AVERAGE: 4.5, 2.8, 2 SWAP UTILIZADO: 18MB (DESPREZÍVEL) TEMPO DE PROCESSAMENTO (MÉDIO): 170 segundos -------------------------------------------------------------------------------- TESTE COM 4 VMs (1 NÚCLEO - 768MB DE RAM EM CADA VM) ANTES LOAD AVERAGE: 0.5, 1.6, 1.8 SWAP UTILIZADO: 18MB (DESPREZÍVEL) PICO LOAD AVERAGE: 7.6, 4.3, 2.8 SWAP UTILIZADO: 30MB (DESPREZÍVEL) TEMPO DE PROCESSAMENTO (MÉDIO): 388 segundos -------------------------------------------------------------------------------- TESTE COM 5 VMs (1 NÚCLEO - 640MB DE RAM EM CADA VM) ANTES LOAD AVERAGE: 0.8, 2.0, 3.1 SWAP UTILIZADO: 30MB (DESPREZÍVEL) PICO LOAD AVERAGE: 11.7, 7.0, 4.8 SWAP UTILIZADO: 300MB TEMPO DE PROCESSAMENTO (MÉDIO): 2041 segundos
dezembro 27th, 2012 on 19:34
Tem um software que roda na camada do hardware chamado ESXI da VMWare e gratuito e muito bom para virtualizacão pois ele nao precisa de um SO instalado eem cima co SO a ferramenta de virtualizacao! Parou de desenvolver foi? Ta com suporte a servidores?