DestaqueGuias

Proxmox + Ceph: Virtualização hiperconvergente

prox_ceph

Introdução

Linux está em todo o lado e um dos mercados em que tem mais sucesso é no mercado de servidores onde é muito usado para todo o tipo de trabalhos. No entanto não é o único sistema operativo nesse mercado nem é o único a ter sucesso.
Um dos sistemas operativos e produtos a ter mais sucesso no mercado de servidores é o VMware ESXi e tudo o que corre por cima dele. VMware ESXi é um “hypervisor”. Um sistema operativo para correr outros sistemas operativos por cima dele, utilizando virtualização. Em empresas médias e grandes tem grande sucesso e é muito utilizado, porque permite utilizar o mesmo servidor para vários sistemas operativos, que podem ser completamente diferentes uns dos outros e com trabalhos em cima deles completamente diferentes.

EVORAIL-300x225

Um dos produtos lançados recentemente pela VMware é o EVO:RAIL que é um sistema hiperconvergente. Isto é, numa simples caixa de dois U é possível ter um mini Datacenter, sem depender de nada exterior. Nessa caixa de 2U tem-se normalmente quatro servidores, com dois processadores cada um, muita memória RAM e vários discos mecânicos ou SSDs. Com software de virtualização e sistema de ficheiros distribuídos é possível ter um Datacenter numa caixa, gerido apenas por software.
O software da VMware foi colocado num bundle e é vendido com o nome de EVO:RAIL. O software é muito bom e a VMware é conhecida pela qualidade dos seus produtos. No entanto é bastante cara, deixando assim de fora empresas mais pequenas.
Mas será possível ter o mesmo Datacenter numa caixa usando Linux e software open source? A resposta é sim e uma das formas de conseguir isso é usando Proxmox VE para a parte de virtualização e Ceph como sistema de ficheiros distribuído. Este artigo incide sobre estes dois produtos, que em conjunto permitem criar um Datacenter numa caixa.

Supermicro1

Falando do hardware que se costuma usar para se ter um Datacenter numa caixa. O normal é comprar-se um sistema de 2U com quatro servidores e cada servidor tem dois processadores Xeon, normalmente os Intel Xeon E5. Cada processador pode ter de quatro a dezoito cores, com muita cache L2 e L3. São processadores virados para este mercado de servidores e consoante o número de cores o seu preço varia.
Cada servidor precisa de muita memória RAM, porque os sistemas operativos de servidor costumam consumir muita RAM. A RAM por servidor pode ir de 64 GB a 1,5 TB de RAM. A RAM utilizada é DDR3 ou DDR4 com ECC para detetar e corrigir erros e Registered.
Na baía frontal estão os discos, normalmente de 2,5 polegadas.
Cada servidor tem à sua disposição 6 discos, sendo o total de 24 discos. Podem-se usar discos mecânicos com SSDs a fazer cache ou journal ou de preferência usar exclusivamente SSDs.
Normalmente, cada servidor destes tem dispositivos próprios só para o sistema operativo, como slots para SATA DOM internos em que se pode fazer RAID 1 para ter redundância.

Supermicro2

Estes servidores têm duas fontes redundantes. Caso uma falhe, a outra fonte entra em ação. O consumo destes servidores, ao todo, é algo elevado, comparado com um computador normal, mas mais baixo que quatro servidores independentes.
A nível de rede o mínimo indispensável são duas lans a Gigabit, mas devido à comunicação entre as máquinas e ao sistema de ficheiros distribuído, convém ter duas lans a 10 Gigabit ou usar Infiniband, que pode ir até 56 Gigabits por placa.
Estes servidores costumam ter gestão remota integrada via IPMI, por rede e onde se pode gerir por completo os servidores por um browser ou por linha de comandos, sem nunca estar fisicamente perto dos servidores.

Super1

A imagem acima demonstra até onde se pode chegar num sistema hiperconvergente a nível de hardware. Em 4U, tem-se oito servidores, dezasseis processadores, quatro fontes redundantes, seis discos por servidor, redes a 10 Gigabits, muita RAM por cada servidor. Para sistemas maiores é também possível combinar vários servidores destes, num ou mais bastidores em que se correm milhares de máquinas virtuais ao mesmo tempo, formando um Datacenter ainda maior.

Sap1

No entanto, eu não tenho servidores destes em casa, nem nada que ande lá perto. Tenho apenas um Sapphire VS8 que tem um AMD A8-4555M, quad core, a 1.6 GHz com turbo a 2.4 GHz. Esta máquina tem 16 GB de RAM DDR3L a 1333 MHz, um disco SSD SATA Intel 520 de 180 GB e uma placa de rede Gigabit.

Sap2

Então como posso criar um Datacenter numa caixa tendo só um computador? Usando Virtualização com o Proxmox VE, aproveitando a possibilidade de usar Nested Virtualization e Thin ProvisioningNested Virtualization é a possibilidade de correr um hypervisor em cima de outro hypervisor. Isto é, correr várias máquinas virtuais com Proxmox VE por cima de um Proxmox VE que é instalado no Sapphire VS8.
Thin Provisioning é a capacidade de um disco virtual só ocupar o espaço que realmente é ocupado e não o espaço total que se dá na sua criação. Assim, um disco acabado de criar ocupa apenas uns KB e vai crescendo apenas com o conteúdo que é posto dentro dele.

Sap3

Vou instalar o Proxmox VE no Sapphire VS8 com o ip “192.168.10.235” e dentro dele vou instalar quatro servidores, em máquinas virtuais, de Proxmox VE com os IPs que vão do “192.168.10.211” ao ip “192.168.10.214“. Dentro destes quatro servidores de Proxmox VE é que vou criar um cluster de Proxmox VE e de Ceph em que fica um sistema hiperconvergente. Um Datacenter controlado apenas por software.
É dentro deste cluster que posso criar máquinas virtuais que podem ser movidas de servidor para servidor sem downtime e em que é disponibilizado alta disponibilidade. Se um servidor tiver um problema e ficar em baixo, as suas máquinas virtuais são arrancadas nos outros servidores.
Cada servidor virtual de Proxmox VE tem dois cores virtuais, 3 GB de RAM, um disco de 80 GB para sistema operativo e quatro discos de 400 GB para Ceph.
Ao lado destes servidores, vou também instalar um servidor de NFS, visto que o Ceph não pode servir para armazenar ficheiros ISO dos sistemas operativos cliente. Este ponto é opcional. Os ficheiros ISO podem ficar no disco local de cada servidor, mas nesse caso o ficheiro ISO só pode ser utilizado nesse servidor, enquanto se estiver numa share NFS, o mesmo ficheiro ISO pode ser utilizado em qualquer servidor de Proxmox VE. O servidor de NFS vai ter o ip “192.168.10.210“.

Sap4

Todo este aparato vai ficar em cima deste mini PC, isto porque ele tem um quad core, 16 GB de RAM, além de um SSD e placa de rede Gigabit. Se quiserem montar um laboratório igual numa só máquina, aconselho estes requisitos como sendo os mínimos.
A performance das máquinas virtuais a correr em cima de máquinas virtuais, não é má de todo. Não é algo que se use em produção, mas é perfeitamente possível de usar num laboratório.

Vou começar por instalar o Proxmox VE 4.1 no Sapphire VS8 e a partir daí mostro como montar este aparato todo.

1 2 3 4 5 6 7 8 9 10Página seguinte

Artigos Relacionados

Botão Voltar ao Topo