5 Minutos de Férias

Volta e não volta tiro 5 minutos de férias do mundo real e refugiu-me na escrita. Cromices, interesses mundanos e milhentas coisas que me interessam.

Subscribe

Pimp my vwmare

Publicada por Bruno on quarta-feira, 6 de outubro de 2010


Já sou um fiel utilizador do vmware há alguns anos.

Começou por algumas experiências simples que evoluíram rapidamente para o meu primeiro portátil:


Sim.. É um disco externo :)

Uma caixinha revoltec, num azul lindíssimo que ainda hoje brilha como novo.
Under the hood um disco de 40gb IDE, com uma máquina virtual, com o ambiente de desenvolvimento montado.
Tinha em casa e no trabalho cabos e transformador. Só precisava de carregar a caixa e liga-la ao pc.
Era o portátil dos pobres, mas, com um par de milagres e compromissos, desenrascava muito bem!

Entretanto arranjei um portátil. Também se aprenderam truques novos. Crescemos ambos, eu e o vmware. E cresceram as necessidades. E, num mundo cada vez mais preocupado com a sustentabilidade, tenho um sustentável servidor com 4 VMs.
O CPU é uma besta de carga, um sempron le-1250! Sim.. oiço risos ao longe, mas a ideia é minimizar o consumo da máquina.

Então hoje deixo aqui uma pequena dica. Pode parecer óbvia, mas às vezes, o óbvio passa ao lado.

Dependendo da versão que se utiliza, o vmware server (edição gratuita) tem um bottleneck chato nos acessos ao disco. Já o ESX Server tem o VMware VMFS (Virtual Machine File System) especialmente tunado para estas situações.

Existem espalhadas pela net N dicas sobre optimização do VMWare. Aqui fica mais uma que valeu a pena.

A ideia aqui é optimizar um pouco os acessos ao disco no host de duas formas:

1) Criação de uma partição própria só para as VMs
2) Formatação com FAT32
3) Conversão dos discos virtuais das VMs para fullsize
4) Desfragmentação da partição das VMs


Comecemos

1) Criação de uma partição própria só para as VMs

A velocidade do disco é importante. Não há milagres em discos lentos. O meu até se porta bastante bem. Mas se houver opção, um disco rápido é uma boa base de trabalho.
De seguida, recomendo que a partição a criar esteja no inicio do disco. Os acessos no inicio do HD costumam ser mais rápidos que no resto da superfície.

2) Formatação com FAT32

Pretendo um filesystem para poucos ficheiros e de dimensão até 2gb.

Os puristas poderãm dizer que o NTFS porta-se melhor devido à forma como a informação é guardada. A experiência que tenho é que para cada tarefa a sua ferramenta. Mas ainda assim deixo aqui um link para ler sobre o assunto.

Contas feitas, optei por FAT32, com clusters de 64kb.

3) Conversão dos discos virtuais das VMs para fullsize

Os discos virtuais do vmware podem ser criados de forma a alocar todo o espaço necessário inicialmente. Enquanto isto permite uma utilização racional do espaço de disco, também se torna um veiculo extra de fragmentação.
Assim, pode-se obter um ganho extra ao reservar inicialmente todo o espaço necessário.

Com o utilitário vmware-diskmanager pode-se converter um disco existente noutro pré-alocado.
É uma ferramenta de linha de comandos, com várias opções. Com a opção -t n pode-se converter um disco existente noutro, sendo n um dos tipos abaixo:

Disk types:
0 : single growable virtual disk
1 : growable virtual disk split in 2Gb files
2 : preallocated virtual disk
3 : preallocated virtual disk split in 2Gb files

Destas, a 3a opção é a mais indicada. Assim, por cada disco virtual de cada máquina é preciso executar o comando abaixo:

vmware-vdiskmanager -r sourceDisk.vmdk -t 3 targetDisk.vmdk

4) Desfragmentação da partição das VMs

Por ultimo, uma boa desfragmentação, just-in-case, da partição onde estão as vms e está pronto!


Resultado

Mesmo sem ter que pedir com uma régua, notei uma melhoria significativa no tempo de carregamento dos SOs das VMs. Numa delas tenho o visual studio e o projecto compila em 75% do tempo que demorava anteriormente.
E também se nota mais fluidez na coisa. Enquanto os SSDs não baixam de preço, estes pequenos tweaks ajudam sempre uns pozinhos na performance!

0 comentários: