Artigo

    

Nuvem privada com Eucalyptus

Agora ficou mais fácil criar e gerenciar um ambiente próprio de nuvem privada! Conheça a plataforma Eucalyptus e aprenda a instalar esta incrível ferramenta.


Por Flávia Jobstraibizer



O Eucalyptus é uma plataforma de nuvem open source que permite às organizações criar um ambiente de nuvem privada dentro de seu próprio datacenter, utilizando uma infraestrutura virtualizada existente (ou previamente criada). Lançado em 2008, “Eucalyptus” é, na verdade, um acrônimo que significa "Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems”. Foi iniciado como um projeto de pesquisa do Departamento de Ciência da Computação de Universidade da California e comercializado recentemente pela Eucalyptus Systems Inc em versões livres e com pacote de suporte pago. A plataforma ainda é mantida e desenvolvida como um projeto de software livre (e esperamos que continue assim!).


O Eucalyptus permite que empresas e organizações privadas construam um sistema compatível com o sistema de nuvens privadas da Amazon, o Amazon Web Services, e que utiliza-se de recursos virtualizados existentes proporcionando a seus clientes uma infraestrutura flexível, com base em demanda, no modelo pay-as-you-go (pague o que usar).


A plataforma de nuvem Eucalyptus compreende basicamente cinco componentes principais (uma ilsutração também pode ser conferida na figura 1):


 


eucalyptus_figura1.jpg
Figura 1: Diagrama de componentes do Eucalyptus.


 


Cloud Controller --- CLC: o controlador de nuvem é essencialmente uma interface web entre o Eucalyptus e o mundo exterior. Oferece aos administradores de ambientes de nuvem uma interface com a qual possam configurar e gerenciar recursos de computação, armazenamento e rede da infraestrutura de nuvem. Ele também lida com a autenticação de usuário de alto nível, gerenciamento de cotas de espaço, juntamente com alguns mecanismos de contabilidade e relatórios básicos. Os usuários também podem consultar o CLC usando as ferramentas de linha de comando do Eucalyptus, chamados Euca2ools.


Walrus: o Walrus fornece capacidades de armazenamento persistente para todas as máquinas virtuais presentes no ambiente de nuvem Eucalyptus. É basicamente um grande sistema de  armazenamento onde os usuários podem fazer upload de dados e qualquer tipo de arquivo usando o protocolo HTTP simples.


Cluster Controller --- CC: uma instalação típica do Eucalyptus pode incluir vários nós, que na verdade são hypervisores nos quais as máquinas virtuais são provisionadas. Esses nós podem ser agrupados e gerenciados usando o controlador de cluster, que olha principalmente para as comunicações ientre os nós  e também  para o SLA (Acordos de Nível de Serviço) de cada cluster coletivamente.


Storage Controller --- SC: o controlador de armazenamento fornece armazenamento em nível de bloco persistente para cada uma das máquinas virtuais que são criadas dentro de uma infraestrutura de nuvem Eucalyptus. As interfaces SC, possuem uma ampla variedade de sistemas de armazenamento, incluindo sistemas de arquivos locais, NFS, iSCSI, SAN entre outras.


Node Controller --- NC: controladores de nó são servidores virtualizados baseados em hypervisor que hospedam as máquinas virtuais que são provisionadas pela nuvem Eucalyptus. O Eucalyptus, adicionalmente, fornece um componente opcional que suporta o hypervisor VMware ESXi como um nó, chamado de VMware broker. Uma instalação do Eucalyptus pode agregar e gerenciar recursos de um único cluster ou vários clusters. Um cluster é um grupo de máquinas conectadas à mesma rede local (LAN). É possível ter uma ou várias instâncias de um NC em um cluster, e cada uma delas gerencia a inicialização e o término das instâncias virtuais.


Características


A última versão do Eucalyptus apresenta vários recursos novos, conheça alguns deles a seguir.


Auto-scaling: baseado no conceito de auto-escalonamento criado pela Amazon, o  Eucalyptus também fornece APIs semelhantes que ajudam os administradores de nuvem a  definir regras e políticas que permitem que aplicativos sejam executados em máquinas virtuais com escalonamento de forma dinâmica, com base em flutuações de cargas de trabalho.


Elastic Load Balancing: este é basicamente um serviço que proporciona melhor disponibilidade e escalonabilidade para aplicativos que são executados sobre uma infraestrutura de nuvem Eucalyptus. Ele detecta automaticamente a carga e distribui o tráfego e os serviços necessários em várias instâncias em execução, melhorando assim o desempenho e o tempo de funcionamento dos aplicativos.


CloudWatch: fornece monitoramento de máquinas virtuais e aplicativos hospedados na nuvem Eucalyptus. Usando CloudWatch, os usuários podem controlar as máquinas virtuais através de tarefas programadas, recolher e analisar métricas, definir alarmes para solucionar problemas de desempenho e agir de forma automatizado, com base no estado do ambiente em nuvem, quando necessário.


Resource tagging: este recurso permite que os usuários e administradores dos ambientes de nuvem atribuam metadados significativos para determinados recursos da nuvem. Isso ajuda no rastreamento, bem como facilita o gerenciamento e monitoramento de coleções de recursos específicos utilizados em toda a nuvem.


Modo de manutenção: permite que os administradores de nuvem executem atividades de manutenção na nuvem Eucalyptus, sem qualquer tempo de inatividade significativo.Isso ajuda a garantir que os aplicativos hospedados na nuvem estarão sempre disponíveis e que cumpram os níveis de SLA exigidos em um possível contrato.


Plataforma Eucalyptus em seu próprio ambiente


A seguir, vamos criar uma infraestrutura simples de nuvem privada com Eucalyptus contendo um conjunto de duas máquinas. Uma delas terá sua atuação como servidor de gerenciamento, contendo o controlador de nuvem Walrus, o controlador de cluster e o controlador de armazenamento. A outra máquina atuará como controlador de nó sobre  um hypervisor KVM.


Neste cenário, estamos usando duas máquinas desktop simples, cada uma equipado com 4GB de memória RAM, um disco rígido de 500GB e um processador compatível com virtualização nativa on-board. Estes são os requisitos mínimos para a criação de uma nuvem Eucalyptus. No entanto, você pode seguir os mesmos passos, mesmo que tenha mais máquinas e melhores capacidades de computação em cada uma delas.


Importante: o projeto descrito neste artigo pode variar de acordo com suas necessidades. O único fato é que precisaremos de pelo menos duas máquinas inicialmente para configurar o ambiente de nuvem.


Instalar o controlador de nó


É recomendado que sejam instalados os controladores de nó primeiramente, para que seja mais fácil adicioná-los ao controlador de nuvem posteriormente, uma vez que são tudo o que é necessário.


Instalar o controlador de nó é um processo muito simples. Faça o boot da máquina a partir do DVD do Eucalyptus DVD e selecione a opção 'Install CentOS 6 with Eucalyptus Node Controller' a partir da tela de inicialização (figura 2).


Há duas principais maneiras de realizar a instalação do Eucalyptus. A primeira é fazer o download dos pacotes RPM necessários para a sua máquina, instalar cada um deles e, em seguida, configurar manualmente a nuvem de acordo com suas necessidades. A segunda maneira é muito mais rápida e será possível ter seu ambiente de nuvem Eucalyptus instalado e funcionando em questão de minutos. Para este tutorial, vamos usar o segundo método, que essencialmente é realizado através de uma imagem ISO Red Hat Enterprise Linux com todos os componentes necessários incorporado. Tudo que será necessário fazer é gravar a imagem ISO em um DVD ou executá-la através de um drive USB em sua máquina. Um assistente auto-explicativo irá orientá-lo durante todo o processo de instalação e configuração do Eucalyptus.


encalyptus_figura2.png
Figura 2: Tela de instalação do Eucalyptus.


Em seguida, selecione o idioma apropriado e defina as configurações do teclado de acordo com sua localidade. Forneça também um "IP estático" e um "Nome do Host" adequados ao seu controlador nó na tela do assistente da configuração de rede.


Forneça uma senha root que seja segura o bastante para o seu controlador de nó. Uma vez feito isso, o controlador de nó e o sistema operacional de base serão instalados. Será necessário reiniciar o sistema depois que a instalação for concluída.


Em seguida entre no controlador de nó usando o nome e senha do usuário root. Alguns scripts serão executados automaticamente neste momento para definir as configurações de rede do controlador de nó. Depois de concluído, o controlador de nó está pronto para ser adicionado a um controlador de nuvem.


Caso queira adicionar outros controladores de nó, siga os passos mencionados anteriormente para cada um deles.


Instalação do controlador de nuvem


A instalação do controlador de nuvem é muito semelhante a do controlador de nó, com algumas exceções. Uma vez que o boot da máquina tenha sido realizado através do DVD do Eucalyptus, selecione a opção “Install CentOS 6 with Eucalyptus Frontend" a partir da tela de inicialização.


Mais uma vez, selecione o idioma e as configurações de teclado de acordo com suas necessidades. Forneça um "IP estático" e um "Nome de Host" adequado ao seu controlador de nuvem.


Uma vez feito isso, será exibida uma interface para que sejam informados os intervalos de IP público para o Eucalyptus. São necessários endereços IP válidos neste momento. Estes IPs públicos serão mapeados para os casos futuros de inclusão de novas máquinas virtuais, uma vez que são lançados na nuvem.


O resto do processo de instalação continua a ser o mesmo. Uma vez que o controlador de nuvem seja reinicializado, irá começar a executar uma série de scripts de configuração que irá definir Walrus, o controlador de cluster e o controlador de armazenamento com alguns parâmetros predefinidos. Os scripts também criar um CentOS 6 EMI (Eucalyptus Machine Image). É possível pode usar este EMI para lançar vários sistemas CentOS 6 idênticos na sua nuvem. Vale lembrar ainda que, no site do Eucalyptus existem uma ampla variedade de imagens prontas para uso: http://emis.eucalyptus.com/.


Para testar se a instalação foi bem sucedida, abra um janela de navegador e digite o seguinte endereço para acessar o console de usuário: http://ip_do_controlador_cloud:8888. Serão solicitadas credencias de acesso. Informe o nome do host, usuário root e senha configuradas anteriormente, durante a instalação do controlador de nuvem, para ter acesso ao console (figura 3).


eucalyptus_figura3.png
Figura 3: Console de usuário.


 


Iniciando a primeira instância


Para lançar o seu primeiro momento, tudo o que você precisa fazer é seguir estes passos simples:


Primeiramente, crie um grupo de segurança: este grupo é semelhante a um firewall que protege sua instância contra ataques relacionados à rede. Por padrão, todo o tráfego de entrada para a instância está bloqueado.


Para criar um grupo de segurança, use a seguinte sintaxe:


# euca-create-group 'd 'Descrição do grupo' Group_Name 
# euca-create-group 'd 'Meu grupo de segurança' TestSecurityGroup


Uma vez que o grupo é criado, abra as portas necessárias, tais como porta SSH 22 para obter acesso à instância.


Para abrir uma porta para o seu grupo de segurança, use a seguinte sintaxe:


# euca-authorize 'P 'Protocol' p 'Port_No' 's 'IP_Source' Group_Name 
# euca-authorize 'P 'tcp' 'p '22' 's '0.0.0.0/0' TestSecurityGroup


Crie um par de chaves, que irão funcionar como um token de autenticação entre os usuários e suas instâncias.


Para criar um par de chaves, use a seguinte sintaxe:


# euca-create-keypair Key_Pair_Name' >> 'Key_Pair_Name'.private 
# euca-create-keypair TestKeypair >> TestKeypair.private


Uma instância de exemplo é iniciada contendo uma imagem de máquina (neste caso, a EMI). Será necessário um ID EMI para lançar sua primeira instância. Isto pode ser obtido a partir do console de usuário Eucalyptus.


Para iniciar uma instância, use a seguinte sintaxe:


# euca-run-instances 'EMI_ID' 'g 'Group_Name' 'k 'Key_Pair_Name'


# euca-run-instances 'EMI-E90A38DA' 'g 'TestSecurityGroup' 'k 'TestKeypair'

A instância pode levar alguns momentos para ser iniciada.  Anote o endereço IP da instância a partir do terminal ou use o console do usuário Eucalyptus para isso. Acessar a instância via SSH usando o par de chaves anteriormente criado pode ser feito através dos comandos a seguir:


# ssh -i <Key_Pair_Name> ec2-user@<ip_da_instancia>
# ssh -i TestKeypair ec2-user@ip_do_controlador

 


No canal IRC do Eucaliptus (http://webchat.freenode.net/?channels=eucalyptus), é possível encontrar ajuda de usuários avançados, tirar dúvidas e solucionar potenciais problemas.


Mais informações:


http://www.eucalyptus.com/eucalyptus-cloud/get-started/try https://www.eucalyptus.com/docs/eucalyptus/4.0/
https://www.eucalyptus.com/eucalyptus-cloud/iaas/management-console
https://github.com/eucalyptus/eucalyptus/wiki/Starter-Images
https://github.com/eucalyptus/eucalyptus/wiki/Storage
http://www.ibm.com/developerworks/br/library/os-cloud-virtual1/

Flávia Jobstraibizer, (fjobs@linuxnewmedia.com.br, twitter: @flaviajobs) é gerente de projetos e analista de sistemas. Trabalha com TI desde 1998 tendo atuado em multinacionais e empresas de diversos segmentos, trabalhando com tecnologias livres e proprietárias. Atualmente é editora-chefe das revistas Linux Magazine e Admin Magazine.

Notícias

Seminário sobre gestão de privilégios do Linux dá direito a certificado CPE

Publicado em: 23/05/2017 às 10:35 | leituras |

O evento irá abordar a forte disseminação de sistemas Linux em toda a estrutura de informação e mostrará a importância de técnicos da área serem capazes de identificar rotas, especificar controles de acesso para usuários Linux e monitorar a atividade privilegiada do usuário ao longo da rede de informação e, especialmente, na complexidade da nuvem. Participantes poderão requerer gratuitamente os créditos de CPE (Continuing Professional Education).

Novas vagas para os minicursos do WikiLab

Publicado em: 16/05/2017 às 11:59 | leituras |

Novas vagas abertas para os minicursos do WikiLab. Todos que já apoiaram ou apoiarem o projeto WikiLab no Catarse (com qualquer valor) podem participar.

Novo evento "Universidade Livre" será realizado em Belém/PA em 06/05/2017

Publicado em: 28/04/2017 às 11:19 | leituras |

Novo evento sobre Software Livre será realizado no Instituto de Estudos Superiores da Amazônia (IESAM).

Soluti Certificação Digital em busca de especialista Linux

Publicado em: 19/04/2017 às 17:18 | leituras |

A Soluti Certificação Digital está em busca de um profissional para atuar como especialista Linux em Goiânia.

Vaga para analista de TI com experiência em ECM/GED, BPM e BI

Publicado em: 16/12/2016 às 11:12 | leituras |

Renomada empresa de serviços de consultoria em TI, está em busca de um analista de TI para trabalhar em projetos de implementação de soluções ECM/GED, BPM e BI usando os sistemas Alfresco, Activiti, Bonita, Camunda e SpagoBI.


Mais notícias

lançamento!

LM 119 | Backup e Restauração




Impressa esgotada
Comprar Digital  R$ 10,90 Digital

  1. Baixe o curso de shell script do Julio Cezar Neves

    Publicado em 07/04/2008 às 19:41 | 415624 leituras

  1. Resultado do concurso "Por que eu mereço ganhar um netbook?"

    Publicado em 30/09/2009 às 3:00 | 181420 leituras

  1. Soluti Certificação Digital em busca de especialista Linux

    Publicado em 19/04/2017 às 17:18 | 176194 leituras

  1. Software público brasileiro na Linux Magazine Especial

    Publicado em 29/07/2011 às 15:07 | 160248 leituras

  1. Lançado o phpBB 3

    Publicado em 13/12/2007 às 18:42 | 159276 leituras

  1. AMD demite desenvolvedores de código aberto

    Publicado em 09/11/2012 às 10:51 | 11073 leituras

  1. GVT lança combo para PMEs com SLA de 4 horas

    Publicado em 25/10/2013 às 14:28 | 8608 leituras

  1. Novo Apache Geronimo suporta Java 7

    Publicado em 16/07/2012 às 17:36 | 8163 leituras

  1. Candidato de versão para o FreeBSD 9.1

    Publicado em 24/08/2012 às 13:32 | 8579 leituras

  1. FIA e Cloudera fecham parceria para ensinar 'hadoop'

    Publicado em 09/09/2015 às 9:04 | 10454 leituras

whitepapers

mais whitepapers