Capítulo 1. Introdução ao cloud-init

cloud-init é um pacote de software que automatiza a inicialização de instâncias de nuvem durante a inicialização do sistema. Você pode configurar cloud-init para realizar uma variedade de tarefas. Algumas tarefas de exemplo que cloud-init pode realizar incluem:

  • Configuração de um nome de anfitrião
  • Instalação de pacotes em uma instância
  • Roteiros em execução
  • Suprimindo o comportamento padrão da máquina virtual

Onde você obtém sua imagem para configurar cloud-init depende de como você pretende utilizá-la.

  • O pacote cloud-init está instalado no KVM Guest Images que você pode baixar do Portal do Cliente da Red Hat. Quando você lança uma instância, cloud-init está habilitado. As imagens KVM Guest Images que você baixa do Portal do Cliente da Red Hat são destinadas ao uso com a Red Hat Virtualization (RHV) e a Plataforma Red Hat OpenStack (RHOSP). Você também pode criar uma imagem do zero para a RHV e a RHOSP.
  • Outra opção é fazer o download de uma imagem ISO do Portal do Cliente da Red Hat ou criar uma. Neste caso, você precisa instalar cloud-init em sua imagem ISO.
  • Se você pretende usar uma imagem com um fornecedor de nuvens (por exemplo, AWS ou Azure), use o Red Hat Image Builder para criar a imagem. As imagens do Image Builder são personalizadas para uso em provedores de nuvens específicos. Os tipos de imagem AMI, VHD, e qcow2 incluem cloud-init já instalados. Consulte Composição de uma imagem personalizada do sistema RHEL para obter informações sobre o Image Builder.

A maioria das plataformas de nuvem suportam cloud-init, embora os procedimentos de configuração e as opções suportadas variem. Alternativamente, você pode configurar cloud-init para um ambiente NoCloud.

Você pode configurar cloud-init em uma máquina virtual (VM) e depois usar essa VM como modelo para VMs adicionais ou clusters de VMs.

Produtos específicos da Red Hat (por exemplo, a Virtualização da Red Hat) têm procedimentos documentados para configurar cloud-init para uso com esses produtos.

Este documento se refere à documentação cloud-init em vários lugares. Consulte a documentação referida cloud-init para obter informações completas em cloud-init.

Pré-requisitos

Recursos adicionais

1.1. configuração em nuvens

cloud-init usa instruções de arquivo em formato YAML para realizar tarefas. Você decide a configuração inicial que deseja que cloud-init realize, fornecendo instruções dentro dos arquivos YAML. Quando uma instância inicializa, o serviço cloud-init inicia e procura e executa as instruções. Tarefas concluídas durante o primeiro boot ou nos boots subsequentes de seu VM, com base em sua configuração cloud-init.

Você define as tarefas, configurando o arquivo /etc/cloud/cloud.cfg e adicionando diretrizes sob o diretório /etc/cloud/cloud.cfg.d/.

  • O arquivo cloud.cfg inclui diretrizes, tais como as de acesso e autenticação do usuário e informações do sistema.

    O arquivo também inclui módulos padrão e opcionais para cloud-init. Os módulos são executados em ordem dentro de três fases que incluem a fase de inicialização cloud-init, a fase de configuração, e a fase final. Dentro do arquivo cloud.cfg, os módulos para as três fases estão listados em cloud_init_modules, cloud_config_modules, e cloud_final_modules, respectivamente.

  • O diretório cloud.cfg.d é onde você pode adicionar diretivas adicionais para cloud-init. Quando você adiciona diretrizes ao diretório cloud.cfg.d, normalmente as adiciona a um arquivo chamado *.cfg, e você sempre inclui #cloud-config no topo do arquivo.