Quais são os problemas comuns durante a instalação do Cloud-Init?
Recomendamos que você instale o Cloud-Init após a restauração para garantir que o novo servidor restaurado usando backups ofereça suporte a configurações personalizadas.
Para instalar o Cloud-Init, consulte Instalação do Cloud-Init.
Para configurar o Cloud-Init, consulte Configuração do Cloud-Init.
Esta seção ilustra as perguntas frequentes encontradas ao instalar o Cloud-Init e suas soluções.
Ubuntu 16.04/CentOS 7: falhou ao definir a inicialização automática do Cloud-Init
- Sintoma
Depois que o Cloud-Init for instalado, execute o seguinte comando para definir a inicialização automática do Cloud-Init:
systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
Informação semelhante à seguinte foi exibida:
Figura 1 Falhou ao definir a inicialização automática do Cloud-Init
- Solução
- Execute o seguinte comando:
systemctl unmask cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
- Execute os seguintes comandos para definir a inicialização automática novamente:
systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
- Execute os seguintes comandos para verificar o status do Cloud-Init:
systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
Conforme mostrado nas figuras a seguir, failed é exibido e todos os serviços estão no estado inactive.
Isso ocorre porque o endereço que o sistema usa para acessar o Cloud-Init é redirecionado para /usr/bin/, mas o caminho de instalação real é /usr/local/bin.
Figura 2 Verificar o status do Cloud-Init
Figura 3 Verificar o status do Cloud-Init
- Execute o comando cp /usr/local/cloud-init /usr/bin/ para copiar o arquivo cloud-init para o diretório usr/bin e execute o seguinte comando para reiniciar o Cloud-Init:
# systemctl restart cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
Figura 4 Reiniciar o Cloud-Init
- Execute os seguintes comandos para verificar o status do Cloud-Init:
systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
- Execute o seguinte comando:
Ubuntu14.04: chkconfig e systemctl não instalados
- Sintoma
- Solução
Execute os seguintes comandos para instalar o chkconfig:
# apt-get update
# apt-get install sysv-rc-conf
# cp /usr/sbin/sysv-rc-conf /usr/sbin/chkconfig
Após a conclusão da instalação, execute o seguinte comando para consultar a versão do Cloud-Init:
cloud-init -v
Informação semelhante à seguinte foi exibida:
-bash:/usr/bin/cloud-init:not found this command
Solução: execute o seguinte comando para copiar o arquivo cloud-init para o diretório usr/bin:
# cp /usr/local/bin/cloud-init /usr/bin/
Debian 9.5: falhou ao consultar a versão do Cloud-Init e definir a inicialização automática
- Depois que o Cloud-Init for instalado, execute o seguinte comando para consultar sua versão:
Informação semelhante à seguinte foi exibida:
-bash:/usr/bin/cloud-init:not found this command
Solução: execute o comando # cp /usr/local/bin/cloud-init /usr/bin/ para copiar o arquivo cloud-init para o diretório usr/bin.
- Execute o comando cloud-init init --local.
Informação semelhante à seguinte foi exibida:
Figura 5 As informações retornadas quando a inicialização automática do Cloud-Init é definida com êxito
Análise de causa: a compilação falha porque a coleção do compilador GNU (GCC) não está instalada.
Solução
Depois que a GCC for instalada, execute o seguinte comando para instalar o Cloud-Init:
yum -y install gcc
- Depois que o Cloud-Init for instalado, execute o seguinte comando para definir a inicialização automática do Cloud-Init:
systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
Informação semelhante à seguinte foi exibida:
Figura 6 Falhou ao definir a inicialização automática do Cloud-Init
Solução
- Execute o seguinte comando:
# systemctl unmask cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
- Execute os seguintes comandos para definir a inicialização automática novamente:
# systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
- Execute o seguinte comando para reiniciar o Cloud-Init:
# systemctl restart cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
Execute o comando systemctl status status para verificar o status do Cloud-Init. Informação semelhante à seguinte foi exibida:
Figura 7 Verificar o status do Cloud-Init
- Execute o seguinte comando:
CentOS 7/Fedora 28: compilador C necessário não instalado
- Sintoma
Depois que o Cloud-Init for instalado, execute o seguinte comando:
cloud-init init --local
As seguintes informações são exibidas:
/usr/lib/python2.5/site-packages/Cheetah/Compiler.py:1532: UserWarning: You don't have the C version of NameMapper installed! I'm disabling Cheetah's useStackFrames option as it is painfully slow with the Python version of NameMapper. You should get a copy of Cheetah with the compiled C version of NameMapper. "\nYou don't have the C version of NameMapper installed!
- Causa possível
Este alarme é gerado porque a versão C do NameMapper precisa ser compilada ao instalar o Cloud-Init. No entanto, a GCC não está instalada no sistema e a compilação não pode ser realizada. Como resultado, a versão C do NameMapper está ausente.
- Solução
Execute o seguinte comando para instalar a GCC:
yum -y install gcc
Reinstale o Cloud-Init.
CentOS 7/Fedora: falhou ao usar a nova senha para fazer logon no servidor criado de um backup após a instalação do Cloud-Init com êxito
- Sintoma
Depois que o Cloud-Init é instalado, a nova senha não pode ser usada para iniciar o novo servidor. Após fazer logon no servidor usando a senha antiga, você descobre que a NIC não foi iniciada.
Figura 8 NIC não iniciada
- Solução
Faça logon no servidor, abra o arquivo de configuração DHCP /etc/sysconfig/network-scripts/ifcfg-ethX e comente HWADDR.