Configuração NoCloud (seed.iso) cloud-init para Amazon Linux 2023 em KVM e VMware - Amazon Linux 2023

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configuração NoCloud (seed.iso) cloud-init para Amazon Linux 2023 em KVM e VMware

Esta seção aborda como criar e usar uma imagem seed.iso para configurar o Amazon Linux 2023 em execução na KVM ou na VMware. Como os ambientes da KVM e da VMware não têm o serviço de metadados de instância do Amazon EC2 (IMDS), é necessário um método alternativo de configuração do Amazon Linux 2023, e fornecer uma imagem seed.iso é um desses métodos.

A imagem de seed.iso inclui as informações de configuração inicial necessárias para inicializar e configurar sua nova máquina virtual, como a configuração de rede, o nome do host e os dados do usuário.

nota

A imagem de seed.iso inclui somente as informações de configuração necessárias para inicializar a VM. Ela não inclui os arquivos do sistema operacional do Amazon Linux 2023.

Para gerar a imagem de seed.iso, você precisa de pelo menos dois arquivos de configuração:

meta-data

Esse arquivo normalmente inclui o nome do host da máquina virtual.

user-data

Esse arquivo normalmente configura contas de usuário, senhas, pares de chaves ssh e/ou mecanismos de acesso. Por padrão, as imagens do VMware do Amazon Linux 2023 KVM criam uma conta de usuário ec2-user. Você pode usar o arquivo de configuração user-data para definir a senha e/ou as teclas SSH para esta conta de usuário padrão.

network-config (opcional)

Esse arquivo normalmente fornece uma configuração de rede para a máquina virtual que substituirá a padrão. A configuração padrão é para usar DHCP na primeira interface de rede disponível.

Crie a imagem de disco seed.iso
  1. Em um computador Linux ou macOS, crie uma nova pasta chamada seedconfig e navegue até ela.

    nota

    É possível usar o Windows ou outro sistema operacional para concluir essas etapas, mas você precisará encontrar a ferramenta equivalente a mkisofs para concluir a criação da imagem seed.iso.

  2. Crie o arquivo de configuração meta-data.

    1. Crie um novo arquivo chamado meta-data.

    2. Abra o arquivo meta-data usando o editor de texto de sua preferência e adicione o seguinte: substituindo vm-hostname pelo nome do host da VM:

      #cloud-config local-hostname: vm-hostname
    3. Salve e feche o arquivo de configuração meta-data.

  3. Crie o arquivo de configuração user-data.

    1. Crie um novo arquivo chamado user-data.

    2. Abra o arquivo user-data usando o editor de texto de sua preferência e adicione o seguinte, fazendo as substituições necessárias:

      #cloud-config #vim:syntax=yaml users: # A user by the name 'ec2-user' is created in the image by default. - default - name: ec2-user ssh_authorized_keys: - ssh-rsa ssh-key # In the above line, replace ssh key with the content of your ssh public key.
    3. Você também pode adicionar mais contas de usuário ao arquivo de configuração user-data.

      Também é possível especificar contas de usuário adicionais, seus mecanismos de acesso, senhas e pares de chave. Para obter mais informações sobre as diretivas compatíveis, consulte a Documentação upstream de cloud-init.

    4. Salve e feche o arquivo de configuração user-data.

  4. (Opcional) Crie o arquivo de configuração network-config.

    1. Crie um novo arquivo chamado network-config.

    2. Abra o arquivo network-config usando o editor de texto de sua preferência e adicione o seguinte: substitua os vários endereços IP pelos apropriados para sua configuração.

      #cloud-config version: 2 ethernets: enp1s0: addresses: - 192.168.122.161/24 gateway4: 192.168.122.1 nameservers: addresses: 192.168.122.1
      nota

      A configuração de rede cloud-init fornece mecanismos para comparar com o endereço MAC da interface em vez de especificar o nome da interface, que pode mudar dependendo da configuração da VM. Esses (e mais) recursos cloud-init para configuração de rede são descritos com mais detalhes na documentação upstream do cloud-init Network Config Versão 2.

    3. Salve e feche o arquivo de configuração network-config.

  5. Crie a imagem do disco seed.iso usando os arquivos de configuração meta-data, user-data e network-config opcionais criados nas etapas anteriores.

    Siga um destes procedimentos, dependendo do sistema operacional no qual você está criando a imagem do disco seed.iso.

    • Em sistemas Linux, use uma ferramenta como mkisofs ou genisoimage para criar o arquivo completo seed.iso. Navegue até a pasta seedconfig e execute o comando a seguir:

      $ mkisofs -output seed.iso -volid cidata -joliet -rock user-data meta-data
    • Se você usar a network-config, inclua-a na invocação de mkisofs:

      $ mkisofs -output seed.iso -volid cidata -joliet -rock user-data meta-data network-config
    • Nos sistemas macOS, você pode usar uma ferramenta como hdiutil para gerar o arquivo seed.iso finalizado. Como hdiutil leva um nome de caminho em vez de uma lista de arquivos, a mesma invocação pode ser usada, independentemente de um arquivo de configuração network-config ter sido criado ou não.

      $ hdiutil makehybrid -o seed.iso -hfs -joliet -iso -default-volume-name cidata seedconfig/
  6. O arquivo seed.iso resultante agora pode ser anexado à sua nova máquina virtual do Amazon Linux 2023 usando uma unidade CD-ROM virtual para cloud-init a fim de encontrar a configuração ao sistema na primeira inicialização e aplicá-la.