Como devo configurar o MAAS para que possa ser usado pelo Autopilot Canônico OpenStack?

5

O Ubuntu OpenStack Autopilot implementa uma nuvem OpenStack usando Juju, MAAS e Landscape. Requer um servidor MAAS existente. Como devo instalar e configurar este servidor? Quais são os requisitos de rede e como os nós devem ser conectados?

    
por andreas 11.03.2015 / 15:50

1 resposta

9

Estes são os requisitos de rede para uma execução bem-sucedida do Autopilot OpenStack.

Acesso à Internet

O MAAS e seus nodos precisarão ser capazes de acessar a internet, ou pelo menos esses sites (http e https):

  • maas.ubuntu.com
  • cloud-images.ubuntu.com
  • streams.canonical.com
  • um arquivo Ubuntu (archive.ubuntu.com ou um espelho)
  • api.jujucharms.com
  • manage.jujucharms.com
  • jujucharms.com
  • store.juju.ubuntu.com
  • keyserver.ubuntu.com
  • ppa.launchpad.net
  • usn.ubuntu.com

Se abrir buracos em um firewall, lembre-se de que esses endereços podem ser resolvidos para vários IPs.

Layout de rede

Existem dois layouts de rede básicos que suportamos. Vamos chamá-los de "rede plana" e "rede dividida". Em ambos os modelos, pelo menos um nó precisa ter duas interfaces de rede conectadas a redes que o MAAS conhece. Vamos chamá-los de redes privadas e públicas.

Tenha em mente que os IPs flutuantes do OpenStack sempre virão da rede pública.

Nos diagramas a seguir, a "nuvem" que está acima do roteador não significa necessariamente a Internet diretamente, apenas que, eventualmente, os dispositivos nessa rede podem alcançar a Internet.

Rede plana

O modelo de rede plana é o mais básico. Aqui nós enganamos o sistema e simplesmente dizemos que as redes públicas e privadas são as mesmas e conectam as duas placas de rede a ele:

Os IPs flutuantes do OpenStack virão da mesma rede que os IPs do nó MAAS neste cenário.

Rede dividida

Na topologia de rede dividida, temos duas redes distintas reais:

O MAAS gerencia apenas a rede privada, para a qual configurará o DNS e o DHCP, mas deve conhecer o público. Uma maneira fácil de lidar com isso automaticamente é conectar um segundo NIC à máquina MAAS e conectá-lo à rede pública, conforme mostrado. O MAAS então saberá automaticamente sobre isso.

Instalando o MAAS

É assim que o servidor MAAS deve ser instalado:

  1. Instale o servidor Ubuntu 14.04 LTS na máquina que você deseja usar para o MAAS
  2. sudo add-apt-repository ppa:maas-maintainers/stable
  3. sudo apt-get update
  4. sudo apt-get install maas
  5. Acesse a interface do usuário do MAAS em http://maas.ip/MAAS/ e siga as instruções para criar o administrador e faça login com essas credenciais
  6. Importar imagens de disco para 14.04 LTS (Trusty) 64 bits. Isso levará alguns minutos, dependendo da sua largura de banda.
  7. Adicione sua chave SSH ao seu perfil de usuário - http://maas.ip/MAAS/account/prefs/
  8. Vá para a guia Redes no MAAS e verifique se você criou redes automaticamente para cada NIC do seu servidor MAAS. Você pode ter redes criadas para interfaces virtuais como lxcbr0 ou virbr0 : não nos importamos com elas, apenas sobre interfaces físicas reais.
  9. Preencha os detalhes ausentes, como gateway e DNS, nas redes que foram criadas automaticamente para cada NIC

Configurando o cluster MAAS

  1. Clique na guia "Clusters" e, em seguida, clique no seu cluster
  2. Escolha um nome de zona DNS
  3. Você deverá ver uma lista de NICs na máquina. Clique no símbolo de edição da NIC conectada à rede privada, ou seja, a rede na qual todos os nós são
  4. Defina esta NIC para gerenciar o DHCP e o DNS.
  5. Se necessário, configure o IP, a máscara de sub-rede e o IP de transmissão.
  6. Defina o "IP do roteador" como o gateway padrão para essa rede privada
  7. Crie seu espaço de rede em intervalos como este:
    • para o caso de rede dividida: intervalo dinâmico e intervalo estático
    • para o caso de rede plana: intervalo dinâmico , intervalo estático e intervalo de IP flutuante

Onde:

  • intervalo dinâmico : usado por todas as NICs nos nós enquanto eles se cadastram e comissionam.
  • intervalo estático : usado pelos nós quando eles são alocados a um usuário
  • intervalo de IP flutuante : usado pelos IPs flutuantes do OpenStack. Esta não é uma configuração do MAAS, mas você deve deixar espaço para eles

Salve as alterações.

Alistar e comissionar máquinas

  1. Verifique se todas as outras máquinas estão definidas para inicialização PXE, se possível, desative todas as outras opções de inicialização (incluindo disco local) no BIOS
  2. Inscrever as máquinas, ligando-as. Isso geralmente pode ser feito por algum tipo de console virtual. Eventualmente todos aparecerão na lista de nós no MAAS e serão desligados novamente.
  3. Edite cada máquina na lista de nós e preencha os parâmetros Power type e power para que o MAAS possa ativá-los e desativá-los conforme necessário
  4. Selecione todas as máquinas e, usando a lista suspensa Ação em massa, encarregue-as
  5. Aguarde até que todas as máquinas sejam comissionadas (por exemplo,no estado Pronto)

Redes MAAS

  1. Vá para a guia Redes e verifique se você tem os nós listados na sua rede privada e com suas respectivas NICs selecionadas
  2. Se estiver usando a topologia de rede plana, o nó que tiver duas NICs deve ter sido detectado automaticamente como tendo ambas as NICs conectadas à rede. Apenas verifique se este é o caso.
  3. Se estiver usando a topologia de rede dividida, edite a rede pública e procure o nó que possui duas NICs. Selecione a NIC conectada à rede pública.

Testando coisas

Para ter certeza de que o juju pode dirigir o MAAS e prover máquinas, vamos dar uma olhada. É melhor experimentá-lo agora e corrigir quaisquer problemas antes que serviços mais complexos, como o Autopilot, façam uso dele.

Na máquina que está sendo usada para conduzir a instalação, execute estes comandos:

  1. sudo add-apt-repository ppa:juju/stable
  2. sudo apt-get update
  3. sudo apt-get install juju-core juju-deployer
  4. Siga Juju docs para configurar o MAAS

O restante deste documento assumirá que o ambiente MAAS Juju que você acabou de configurar é o padrão.

Para um teste simples, implantaremos o Ubuntu em todos os nós. Na máquina que está conduzindo a instalação, execute estes comandos:

  1. juju bootstrap isto usará um dos nós MAAS para inicializar o juju. Levará alguns minutos para concluir
  2. juju deploy ubuntu -n N deploy ubuntu para todos os nós restantes. Substitua N pelo número de nós menos um, que foi usado para o bootstrap acima. Este comando retorna após alguns segundos, mas apenas inicia o processo.
  3. observe a lista de nós na interface do usuário do MAAS. Você deve ver os nós sendo alocados e implantados
  4. assista a saída de juju status periodicamente até que tudo seja iniciado
  5. faça login em um nó aleatório via ssh e tente acessar a internet a partir dele. Por exemplo, tente juju ssh ubuntu/0 e wget http://www.ubuntu.com de lá
  6. se tudo funcionou corretamente, destrua o ambiente juju destroy-environment $(juju env)

O MAAS está configurado e pronto para ser usado pelo Autopilot OpenStack.

    
por andreas 11.03.2015 / 15:50