Este sistema operacional é conhecido por sua Estabilidade, Robustez, Velocidade e Segurança, se comparado com outros sistemas operacionais (em ambiente não virtualizado). Mas, hoje é raro ambiente que não seja virtualizado.
Quando virtualizado, o FreeBSD perde muita performance, se comparado com o Linux. Então, os desenvolvedores resolveram criar uma imagem personalizada para virtualização, ela é chamada de "FreeBSD Virtual Machine Image".
O objetivo deste post é comparar o desempenho do FreeBSD padrão com o preparado para virtualização em um ambiente Virtualizado. Será que tem vantagens ou é apenas frescura?
1. Host (máquina física) utilizado no teste
A máquina utilizada para realizar os testes possui as seguintes características:Memória RAM: 8 GB
Processador: Intel i5
Disco: 1TB SATA2
É um desktop convencional. Nada de mais!
2. Imagens
O FreeBSD pode ser baixado AQUI. As máquinas virtuais dos testes possuem as seguintes características:
Memória RAM: 1 GB
Processador: 4 CPUs
São dois tipos de imagem:
Memória RAM: 1 GB
Processador: 4 CPUs
São dois tipos de imagem:
2.1. Virtual Machine Image
A versão preparada para virtualização só está disponível para as arquiteturas: i386 e AMD64.Está disponível para vários tipos de hypervisors e formatos de arquivos:
vhd: VirtualPC, Hyper-V, Xen, VirtualBox
vmdk: VMWare
qcow2: Qemu, KVM, VirtualBox
raw: bhyve, ou outro hypervisors com suporte ao formato "raw disk image".
VirtualBox: FreeBSD Virtual Machine image |
Ativar IP na máquina:
# dhclint em0
Baixar os pacotes para instalação de outros softwares:
# portsnap fetch
# portsnap extract
Instalar as ferramentas de teste:
# cd /usr/ports/security/john
# make install
# cd /usr/ports/benchmark/iperf
# make install
2.2. Imagem padrão do FreeBSD
Este é o tipo mais comum de se instalar o FreeBSD. É tão simples que não entrarei em detalhes. Também é necessário instalar as ferramentas de teste, conforme mostrado no item anterior.3. Teste de performance
O Teste consiste em testar a velocidade de Gravação em disco, Processamento com openssl (criptografia) e rede com Iperf.3.1. Teste de Gravação em disco
O comando "dd" foi utilizado para testar a performance de gravação do disco. O comando utilizado para gerar um arquivo de 5GB:# dd if=/dev/zero of=dados.dat bs=10000000 count=512
FreeBSD preparado para Virtualização. Teste gravação em disco. |
FreeBSD padrão. Teste de gravação em disco. |
Resultado final de gravação:
Gravação em Disco com o DD | FreeBSD Preparado para Virtualização | FreeBSD Padrão |
Tentativa 01 | 47,3 MB/s | 51,3 MB/s |
Tentativa 02 | 48,5 MB/s | 51,2 MB/s |
Tentativa 03 | 49,8 MB/s | 50,8 MB/s |
Média Final | 48,5 MB/s | 51,1 MB/s |
Diferente do resultado esperado, a VM com FreeBSD padrão teve performance de gravação 5% superior a VM com FreeBSD preparada para virtualização.
Obs.: No host, máquina utilizada para virtualizar as MV acima, o mesmo comando fez a gravação em 110MB/s.
3.2. Teste Processamento com openssl - rsa 4096
Para testar o processamento das máquinas virtuais foi utilizado a ferramenta "openssl". O teste consiste em identificar a quantidade de verificação RSA de 4096 bits as MVs fazem por segundo. Isto é criptografia pura e usa muito CPU. Comando executado:# openssl speed rsa4096
FreeBSD preparada para Virtualização. Teste de processamento com openssl. |
FreeBSD padrão. Teste de processamento com openssl. |
Resultado final do teste de processamento:
Processamento com o openssl – RSA 4096 | FreeBSD Preparado para Virtualização | FreeBSD Padrão |
Tentativa 01 | 1771,8 | 1855,2 |
Tentativa 02 | 1844,6 | 1783,0 |
Tentativa 03 | 1774,1 | 1770,3 |
Média Final | 1796,8 | 1802,8 |
No teste de processamento, também teve resultado inesperado: A VM com FreeBSD padrão teve desempenho de CPU levemente superior a VM preparada para virtualização.
Obs.: No host, a medida foi de: 1820,3.
3.3. Teste de velocidade de Rede
O "iperf" é uma ferramenta simples para testar a velocidade de rede entre duas máquinas, para saber mais leia aqui. A versão é a 2.0.5.O ambiente de teste foi montado em cima de rede gigabit Ethernet.
Neste caso, o teste também foi repetido três vezes e o resultado final é a média dos testes.
A máquina virtual assumiu o lado client do iperf, comando:
# iperf -c IP_SERVIDOR_IPERF
Outra máquina, identificado por IP_SERVIDOR_IPERF acima, não é virtualizada. Ela está na rede e fez papel de servidor, nos dois casos.
FreeBSD preparado para Virtualização. Teste de rede com IPERF. |
FreeBSD padrão. Teste de rede com IPERF. |
Resultado final do teste de rede:
Velocidade de rede com o iperf | FreeBSD Preparado para Virtualização | FreeBSD Padrão |
Tentativa 01 | 407 Mbits/s | 403 Mbits/s |
Tentativa 02 | 409 Mbits/s | 409 Mbits/s |
Tentativa 03 | 413 Mbtis/s | 421 Mbits/s |
Média Final | 409,66 Mbits/s | 411 Mbtis/s |
Mais uma vez, a VM padrão do FreeBSD se mostrou mais performática que a VM preparada para Virtualização.
Obs.: No host, o teste chegou a 821 Mbits/s.
4.0 Resultado final dos testes
A tabela abaixo apresenta o resumo dos testes nos dois FreeBSD:Teste \ VM | FreeBSD Preparado para Virtualização | FreeBSD Padrão | Diferença |
Gravação em Disco | 48,5 MB/s | 51,1 MB/s | 5,09% |
Performance de Rede | 409,66 Mbits/s | 411 Mbtis/s | 0,33% |
Velocidade de Processamento | 1796,8 | 1802,8 | 0,22% |
Os três testes mostraram que o desempenho da Máquina Virtual de FreeBSD padrão é mais performático com a VM preparada para virtualização.
5.0 Conclusão
O FreeBSD é um Sistema Operacional muito apreciado pelos usuários tradicionais, ele não aparece muito na mídia, igual o Linux.Ambientes não virtualizados é praticamente impossível nos dias de hoje. E, geralmente, o Linux é superior ao FreeBSD em ambientes Virtualizados. Isto fez com que o uso do FreeBSD caísse ainda mais.
Os testes mostraram que o FreeBSD preparado para virtualização NÃO aumenta o desempenho, pelo contrário: nos três testes (gravação de disco, Rede e Processamento) ele possui performance inferior.
Infelizmente o FreeBSD irá continuar a perder espaço para o Linux.
Nenhum comentário:
Postar um comentário