Ganeti é uma solução para gerenciamento de Cluster de Virtualização muito robusta, viável, moderna e escalável, largamente utilizada pela Google e pela comunidade, com Ganeti o gerenciamento do ambiente virtual é centralizado lhe dando total controle do ambiente, facilitando, agilizando e controlando o ambiente virtual e consequentemente maximizando os recursos de hardware dos servidores.
O artigo surgiu após varias pesquisas na internet, muitas fontes serão citadas no final do artigo e os devidos créditos atribuídos, o artigo tem a finalidade de ajudar aqueles que estão entrando no mundo da virtualização e precisam de um ponta pé inicial.
Esse Artigo não aborda a instalação do Debian Squeeze 64 bits, partiremos do principio que você já tenha o mesmo instalado.
Nesse Artigo teremos 2 Nós no Cluster com a seguinte configuração:
Nó 1 - node1.google.com.br - Master
Memória 1GB;
Disco 0 - 10GB;
Disco 1 - 30GB;
NIC 1.
Nó 2 - node2.google.com.br - Master Candidato
Memória 1GB;
Disco 0 - 10GB;
Disco 1 - 30GB;
NIC 1.
Todo o Artigo foi testado em ambiente virtualizado com KVM 0.14 e Virt-Manager 0.8.5 no openSUSE 11.4 64 bits.
Utilizei somente o disco 0 de cada nó durante a instalação do Debian Squeeze, o disco 1 de cada nó não foi alterado durante a instalação, ele será utilizado posteriormente exclusivamente para o LVM.
Obs.: Os passos descritos no artigo devem ser aplicados em ambos os nós do Cluster "node 1 e node 2". Os passos que devem ser aplicados somente no Nó Master "node 1" eu avisarei.
Ganeti Terminologia
Cluster - Um conjunto de Nós, trabalhando em conjunto, ordenados por um Nó master;
Nó - Uma máquina Física, um host físico ou Dom0;
Instância - Uma máquina Virtual, Guest ou DomU;
Migration - Ato de transferir uma instancia de um Nó para o outro, pode ser Live ou não;
Failover - Ato de efetuar a recuperação de falha de uma instância ou de um Nó inteiro;
Nó Primário e Secundário - Quando uma instância é criado com recursos de alta disponibilidade, deve-se definir quem será seu Nó Primário e quem será seu Nó Secundário em caso de falha do Nó Primário;
Master - Nó responsável pelo gerenciamento do Cluster;
Master Candidato - Nó que possui todo o conhecimento da situação atual do cluster, possui a habilidade de se tornar o Master do Cluster em caso de falha do master - MasterFailover;
Regular Nó - Um Nó comum em operação em Cluster Grande de 6 até 40 Nós;
Drained Nó - Um Nó que não pode receber instâncias, provavelmente está sendo evacuado para manutenção;
Offline Nó - Um Nó do Cluster com problema ou desligado para manutenção.
Ganeti Qualidades
Opensource - GPLv3;
Desenvolvido e utilizado pela Google e comunidade;
Desenvolvimento constante;
Não é necessário Storage compartilhado. Ex SAN, NAS;
Restauração fácil e rápida do ambiente;
Robusto e escalável;
Alta Disponibilidade;
Suporte a Failover de instâncias;
Suporte a Failover entre Nós do Clusters;
Backup online de instâncias do cluster;
Live Migration de instâncias;
Suporte a Migração de instâncias entre Clusters distintos;
Suporte a Múltiplos Hypervisors - Xen e KVM em breve OpenVZ;
Cluster hibrido com Xen PVM e Xen HVM;
Suporte a Deploy de diferentes instâncias em lote;
Utiliza Ferramentas nativas do mundo Unix - DRBD, LVM2 e Python;
API de fácil entendimento possibilitando integração e construção de plugins;
Suporta até 40 Nós por Cluster;
Suporta Rebalancer automático de instâncias entre Nós;
Suporta alocação automática de instâncias;
Mensuração de Escalabilidade do Cluster;
Interface gráfica é opcional para o gerenciamento do Cluster com Ganeti Web Manager.
Ganeti Limitações
Ainda não Suporta Failover automático de instâncias e nós;
Ainda não suporta hot-plug de recursos nas instâncias;
[8] Comentário enviado por bigjoevt em 03/05/2012 - 21:25h
A ferramenta realmente é sensacional galera, porém estou tendo alguns problemas, se puderem ajudar.
1- Live migration gerando split-brain dos resources;
2- Live migration quando a máquina passa para o nó secundário ela inicia do boot e não de onde estava no nó primário;