Usando o ambiente manual para a sequência abaixo. Observe que a seqüência abaixo pressupõe que você utilize instantâneos virsh. É altamente recomendável configurar os nós e, em seguida, tirar um instantâneo de cada um deles para que você possa voltar facilmente para o ponto limpo. Para a IBM POC que tivemos (usando o pacote openstack 40)
- VM1 que executou o MAAS / juju. Isso foi em um nó de computação separado.
Essa VM consideramos o implementador do MAAS ou o servidor do implementador do jujum. Um instantâneo disso foi feito onde o MAAS / juju foi instalado onde nenhum ambiente foi construído. - VM2, VM2, VM3 e VM4 executando o ubuntu 14.04 em um nó Instantâneo de todas essas VMs criadas com a configuração de rede para conversar entre si e NÃO ter cliente jujud nos terminais.
Esta lista de verificação indica como reconstruir rapidamente se as VMs foram provisionadas pelo MAAS e, em seguida, precisa apenas reconstruir via juju. O MAAS é usado para provisionar. O juju é usado através do envionamento manual para provisionar todo o software. Se falhar ou algo ficar confuso, você poderá limpar as VMs e então reconstrua usando o ambiente manual do juju. Isso é muito fácil.
1 Limpar os endpoints
Como limpar o ponto final quebrado?
Como resolver "A máquina ERROR já está provisionada" na configuração manual?
rm -rf /var/lib/juju
rm -rf /etc/init/juju*
ps -ef | grep juju
mate a máquina de processamento usando juju
Como posso reverter para um instantâneo de uma VM perdida? se o ambiente estourar
link ver parte inferior da página
Exemplo de comando:
fora do virsh
virsh snapshot-revert --domain ubuntovm --snapshotname 1441158838
no virsh
snapshot-revert --domain vm3 --snapshotname 1444163918
2. Verifique se todas as VMs de terminal têm acesso à internet
Isso pode ser feito de várias maneiras. Usamos abaixo para que pudéssemos ter a interface do Firefox disponível, se necessário, para os endpoints.
Comece a seguir em cada VM:
x11vnc -create -forever -bg -env FD_TAG=my_xfce_1 -env FD_SESS=xfce -rfbport 5901
Observe que, no momento deste documento, você não pode usar o vnc para o ppc64le. Usar x11vnc. Você precisa instalar o x11vnc antes deste comando, não discutido aqui.
BSO (IBM) e acesso ao firefox: Certifique-se de que você pode acessar: link
3. Limpe o servidor juju
Como faço para desinstalar e reinstalar o juju no servidor de implantação devido a problemas?
Você pode limpar completamente o servidor de implantação juju, conforme listado abaixo, ou você pode atalho e remova os arquivos /root/.juju/ e comece tudo de novo. Depende como você quer começar limpo. Limpar jup /root/.juju/ e começar de novo geralmente é bom o suficiente. Observe que, se você criar um instantâneo adequado da VM, não precisará fazer isso.
Para remover completamente:
sudo apt-get remove juju-core
sudo apt-get remove --auto-remove juju
sudo apt-get remove juju-quickstart
sudo apt-get remove juju-deployer
/root/.juju/ remove o diretório e todos os diretórios de arquivos sob ele
Exemplo:
rm -rf /root/.juju/jclient
rm -rf /root/.juju/environments
rm -rf /root/.juju/ssh
rm -rf /root/.juju/.deployer-store-cache
Em seguida, reinstale os pacotes:
sudo add-apt-repository ppa:juju/stable
sudo apt-get update
sudo apt-get install juju-core
sudo apt-get install juju-quickstart
sudo apt-get install juju-deployer
juju-quickstart -i
Observe que, se você está testando, provavelmente quer colocar o bundle instalável em outro diretório para não perdê-lo. Sugestão é algo assim:
/root/.juju2/bundles
4. Reconstruir o ambiente (ambiente do servidor de implementação juju)
Basta criar o ambiente, marcá-lo como padrão e salvá-lo. Não execute de juju-quickstart -i.
Para o IBM POC, usamos o MAAS como fornecimento inicial de VM. Uma vez feito isso, você pode criar snapshots e depois disso, só tem que reconstruir as VMs dos snapshots. Se você fizer dessa maneira, o ambiente juju que você usa é a definição manual, já que os endpoints de destino já foram provisionados.
5. Ambiente de bootstrap
juju bootstrap --show-log --debug -e manual
Se você estiver usando o juju pela primeira vez ou durante o teste, adicione --debug e --show-log porque dá-lhe uma boa sensação de progressão.
6. Adicione todos os outros servidores
O ambiente manual coloca a primeira VM no ambiente. Você então usa o comando juju add-machine para adicionar todas as outras VMs. Para openstack 40 bundle you precisa de um total de 4 máquinas, então faça o seguinte (defina com seus ipaddresses obviamente)
juju add-machine ssh:[email protected] -show-log --debug
juju add-machine ssh:[email protected] -show-log --debug
juju add-machine ssh:[email protected] --show-log --debug
7. Implantar ambiente
Para o IBM POC, tivemos que copiar o openstack40.yaml da loja de charme porque tinha que ser corrigido para a arquitetura ppc64el. Nós também fizemos alguns outros muda para o yaml para fazê-lo funcionar.
juju-deployer -c /root/.juju/bundles/openstack40.yaml -s 90 -d -v openstack40.yaml
O openstack40.yaml acima tem 3 alterações: 1. Uso de ppc64el 2. para opção de adicionar painel openstack depurar: 'sim' 3. Senhas para o mysql senha de root: PASSW0RD sst-password: PASSW0RD
NOTA: O passo 8 tem partes que se sobrepõem a este passo, leia o passo 7/8 em conjunto.
8. Durante a implantação do processo, corrija os arquivos de configuração do contêiner lxc
Para este POC, o lxc não iniciou na primeira duas VMs. Nós não depuramos longe o suficiente.Não sei se todo mundo vai acertar isso, mas estamos listando aqui apenas no caso de outros acertarem.
Pacote de juju implantado O OpenStack 40 tem contêineres linux não iniciados?
Ao implantar o pacote do OpenStack 40, o ambiente não tem juju-trusty-lxc-template instalado na construção do ambiente. Quando você inicia a implantação O juju-trusty-lxc-template é eventualmente instalado. Então, isso é sugerido para o primeiras duas máquinas na lista de status juju. Tem que consertá-los.
-
Edite
/etc/lxc/default.conf
e adicionelxc.seccomp = lxc.arch = ppc64le
-
Durante o processo de implantação, assista ao diretório
/var/lib/lxc/
para criação de juju-trusty-lxc-template / directory.
Eu usei o winscp para assistir a criação do arquivo durante a implantação. Não é um bom caminho para fazer isso, você tem que observar o processo de implantação e verificar para arquivo de vez em quando. Quando lá o lxc existe, está pendente e não Não comece até tarde no processo. Então você tem tempo para consertar o arquivo.Uma vez existe o diretório, então
vi /var/lib/lxc/juju-trusty-lxc-template/config and add: lxc.seccomp = lxc.arch = ppc64le
Certifique-se de linha em branco no final. Se não, então parâmetros adicionais são adicionados e podem ser acrescentados à última linha que você adicionou incorretamente.
Não encontramos uma boa maneira de fazer isso, portanto, acima da pergunta de solução de problemas explica o que fazer enquanto a implantação está em execução.
9. O encanto do mysql falha e requer que as senhas sejam configuradas
Veja outro askubunto para este problema o mysql falha devido a "Não foi possível definir a senha para Percona". Vejo: mysql / percona: Não é possível definir a senha para o usuário "root" do Percona Server - ppc64el
Dicas para depurar e assistir à implantação:
a) na máquina deployer juju
Verifique se você tem isso para poder verificar o processo. Ao reconstruir o ambiente em uma janela separada, em /root/.juju/ issue
juju status > jujudeploylog10132015.txt
periodicamente para salvar registros, alterar a data no arquivo
b) Sugestão é ter duas janelas abertas no SSH, uma para a visão do Comando juju-deployer e outro na 1ª VM no ambiente manual fazendo cauda em / var / log / juju / tail -f ./all-machines.log Isso permite observar a construção do ambiente de openstack.
c) Se estiver usando o pacote openstack 40, a UI do OpenStack horizon estará no última VM. Verificando as informações de status do juju informa o lxc em que o horizonte está ativado. Use isto: http: /// horizon