Cluster de Virtualização com Ganeti

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.

[ Hits: 62.885 ]

Por: Diego em 01/09/2011


Overview, Terminologia, Qualidades e Limitações



Overview

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;
  • - 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;
  • Não suporta CLVM.
    Próxima página

Páginas do artigo
   1. Overview, Terminologia, Qualidades e Limitações
   2. Arquitetura do Cluster e Pre Requisitos
   3. Instalação e configuração do Xen, DRBD e LVM2
   4. Configurando a Rede e Instalando o Ganeti
   5. Preparando, Configurando e Inicializando o Cluster
   6. Criando instâncias no Cluster
   7. Gerenciando as instâncias e Nós do Cluster
   8. Problemas comuns e Referencias Bibliograficas
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Balanceamento e alta disponibilidade com Bonding

Instalação do modem Netodragon no Conectiva 10

Configurando DNS (bind9) no Debian Sarge

VPN Site-to-Site Openswan x ASA (Cisco)

Traceroute com ICMP e TCP

  
Comentários
[1] Comentário enviado por dolivervl em 01/09/2011 - 23:17h

Cara so tenho uma palavra para descrever esa ferrramenta e seu artigo: SEMSACIONAL!!!!!
Parabens !!!!!

[2] Comentário enviado por dfsantos em 02/09/2011 - 09:19h

vlw dolivervl

Abaixo segue algumas informações adicionais para os interessados.

site do ganeti web manager para quem tem interesse em administrar um cluster de grande porte, uma interface grafica é essencial.

http://code.osuosl.org/projects/ganeti-webmgr

Pra quem tem interesse em obter o script de instalação automatizada de instancias como centos entre outras distros.

http://code.osuosl.org/projects/ganeti-image

Tambem possui informações para deploy de instancias windows.

[3] Comentário enviado por madtrek em 02/09/2011 - 09:34h

Bom dia ...

Artigo interessante ...

Porém eu encontrei uma discrepância muito esquisita no texto !

Na introdução o Sr. menciona que usará o KVM, e diz até mesmo qual versão do KVM ( 0.14 ) e no entanto, na sequência do texto o Sr. usa XEN ?!?!?

Fábio Rabelo

[4] Comentário enviado por dfsantos em 02/09/2011 - 09:39h

KVM foi onde eu instalei os dois nos amigo, para fins de teste. Usei um ambiente virtualizado para virtualizar =D

[5] Comentário enviado por dfsantos em 02/09/2011 - 09:40h

correção - Saindo do console da instância, pressione CTRL+]. colchete

[6] Comentário enviado por dfsantos em 02/09/2011 - 12:03h

Dica de configuração.

Crie um bond (nic teaming) exclusivo para o trafego das replicações de disco do DRBD.

[7] Comentário enviado por removido em 02/09/2011 - 14:18h

Muito bom o artigo. Irei testar a ferramenta.

Abraço.

[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;

Setup:
2x
AMD Dual-Core
2Gb
2NIC
1x80
LVM VolGroup0 10G
/ 9Gb
swap 1Gb
LVM xenvg 67G

Debian 6.0.4 x64 Kernel
Xen 4
DRBD 8.3
Ganeti 2.1.6

Ou seja os sources padrões dos repositórios, alguma dica please?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts