Sou administrador do sistema em uma pequena casa de software. Vou virtualizar nossos servidores. O principal motivo para fazer isso é fornecer o tempo de atividade mais alto possível, mas provavelmente também aumentará a utilização de recursos.
Nós temos dois servidores. Em uma, temos poucas VMs de desenvolvimento e também são usadas como servidor de construção (Jenkins Master, mas também Build Executor). No segundo, temos alguns serviços críticos (repositórios de código, rastreador de problemas).
Eu gostaria de usar essas máquinas para criar dois clusters de nó e criar VMs para cada serviço. Eu gostaria de usar DRBD para que as máquinas móveis fossem possíveis entre nós.
Após algumas pesquisas, meus candidatos são Proxmox e Ganeti. Qual seria o melhor na minha situação? Eu amo a simplicidade do Proxmox (principalmente a simplicidade da instalação), mas talvez haja uma razão válida para usar o Ganeti?
fonte
Respostas:
Não conheço o ProxMox, mas conheço o Ganeti, pois o uso em meu trabalho e trabalho com os principais desenvolvedores.
Se você tiver um pequeno número de máquinas físicas e VMs, é bom fazer as coisas manualmente. Você pode memorizar qual VM está em qual máquina física e executar o comando Xen correto no nó direito. Se você tiver apenas uma máquina física, sempre saberá em qual máquina suas VMs estão.
Para um novo usuário, o benefício mais óbvio do Ganeti é que ele sabe onde estão todas as VMs. De um mestre, você pode emitir comandos como "stop instance foo" e ele aparece com foo em execução e o interrompe. Você pode emitir um comando como 'criar uma VM do tamanho X sempre que houver espaço livre' e ele encontrará esse espaço livre e criará a VM. Se você tiver muita rotatividade (criação e exclusão de VMs), o Ganeti economizará muito tempo. Também ajuda em um desastre: se o cluster inteiro perder energia, o Ganeti reiniciará todas as VMs quando o cluster receber energia e inicializar. (Um exemplo está aqui: Queda de energia: um verdadeiro teste para Ganeti )
Você pode definir "modelos" para configurações de VM (qual sistema operacional, configuração de armazenamento em disco etc.) Portanto, talvez você seja a única pessoa especialista o suficiente para criar um modelo, mas eles existem outros administradores de sistema mais jovens da sua equipe, criando facilmente novos instâncias.
O problema de fazer as coisas manualmente quando você tem um pequeno número de VMs é que, se for bem-sucedido, crescerá a tal ponto que o Ganeti faria sentido. Nesse ponto, você pode ter uma queda de trabalho e não terá tempo para instalar o Ganeti. Esse é um problema geral ao passar de fazer as coisas manualmente para instalar a automação: você não tem tempo para consertar a pia com vazamento porque está muito ocupado limpando o chão. Para evitar isso, recomendo instalar o Ganeti (ou qualquer automação que você selecionar) mais cedo ou mais tarde.
Ganeti é 100% open source, não requer licenças. No entanto, não há suporte comercial disponível, se você precisar. Não estou familiarizado com o ProxMox, mas sua página da web diz que exige uma licença; existem partes que são de código aberto, mas não estão disponíveis sem uma licença (pelo que li no site deles). Eles têm planos de suporte listados em seu site.
O Ganeti está disponível fora do Google desde 2007. Ele tem mais de 5 anos de engenharia. Tem sido estável por algum tempo. Você pode encontrar o código-fonte Ganeti e a comunidade de suporte em code.google.com/p/ganeti . Não sei como o ProxMox foi lançado recentemente.
fonte
Uso o Xen desde 2003. Estou usando o Ganeti há cerca de um ano e recomendo. Eu nunca ouvi falar do ProxMox.
Durante anos, gerenciei manualmente os arquivos de configuração LVM, DRBD e Xen em vários clusters com tamanhos de 2 a 5 nós - isso foi um pesadelo. O DRBD tornou as coisas maravilhosamente confiáveis e o Xen facilitou a migração das VMs entre os nós, mas sempre que um nó falhava, eu passava por um longo e tedioso processo de criação de novos volumes LVM, configuração do DRBD e reconstrução dos espelhos, garantindo que o Xen e as outras configurações foram replicadas ... para um cluster de 5 nós, manter as coisas na minha cabeça às vezes pode ser doloroso. Eu continuava querendo escrever tudo, mas a vida continuava atrapalhando.
Então Ganeti apareceu. Foi escrito exatamente para o meu caso de uso - clusters n-way usando Xen e DRBD. Essas horas de operações dolorosas e cheias de risco agora são compactadas em alguns casos em um único subcomando ganeti. Eu amo isso. Eu migrei a maioria das minhas VMs para um grande cluster ganeti de 10 nós agora.
Também migrei nossas áreas de trabalho do Windows para um cluster Ganeti / KVM - Linux agora apenas nas áreas de trabalho, e eles usam o VNC para acessar as VMs do Windows. A grande vantagem aqui são os instantâneos e backups mais fáceis e a capacidade de colocar em sandbox cada aplicativo do Windows em sua própria VM.
A propósito, embora você esteja falando apenas de um cluster de 2 nós no momento, tenho certeza de que, depois de ver o utilitário, você estará adicionando nós e migrando tudo o que puder para máquinas virtuais. Se sua plataforma de cluster pode suportar mais de 2 nós, como Ganeti, você poderá fazer isso.
fonte
Não uso ganeti, mas uso proxmox e sei muito bem disso. O Proxmox VE é um projeto TOTALMENTE ABERTO e todo o código está disponível nos binários. O sistema base é uma distribuição mínima do Debian 64 com um instalador personalizado, mas você também pode instalar o sistema Debian e adicionar os repositórios proxmox. Um dos principais patrocinadores do projeto é o governo da Autrian e isso garante que o desenvolvimento do produto seja financiado por um longo tempo. Desde a versão 2.0, até o processo de desenvolvimento está aberto (antes era uma lista fechada e você precisava solicitar o acesso à empresa por trás do proxmox).
Ele possui uma interface amigável, com quase todos os recursos encontrados no vSphere, suporte de cluster (baseado em corosync), alta disponibilidade de HA para VM, suporte automatizado de backup e restauração da interface. Ele também suporta virtualização de contêineres com openvz, perfeitamente integrado na mesma infraestrutura e interface do KVM, para que você possa escolher a melhor estratégia de virtualização com base em suas necessidades. Eu tenho cerca de 20 instalações do Proxmox em torno, de host único, para um cluster de 2 nós com o drbd chegando a um cluster de 5 nós no FC SAN (> 80VM).
Pelo que vejo sobre ganeti, posso afirmar que não há concorrência. Proxmox vence com certeza.
fonte
Minha reclamação (possivelmente baseada na ignorância) sobre ganeti: fico feliz em fazer as coisas na CLI, se necessário, mas não acredito que querer uma GUI me torne um covarde. Não parece ser uma ferramenta de gestão Ganeti baseado na web, mas última vez que olhei, ele estava muito longe de ser plug & and play (por exemplo, um par de páginas de comandos para digitar no host), e em um par de tentativas em um mock servidor, nunca consegui criar e instalar corretamente.
fonte