Estou tentando configurar um ambiente de instalação automatizado para o Ubuntu 22.04. Já estamos trabalhando em produção para 20.04 e versões LTS anteriores há muitos anos. Usamos pxe/isolinux e um servidor tftp e dhcp para realizar a inicialização da rede e do CD. E alguns truques para fazer o uefi funcionar.
Não consigo encontrar imagens vmlinuz e initrd funcionais que me permitam iniciar uma instalação automatizada do Ubuntu 22.04 usando pré-configuração e o instalador debian (di).
Eu uso o seguinte para instalar o 20.04, isso não funciona no 22.04:
linuxefi /path/to/2004/amd64/linux auto=true priority=critical url=http://example.com/ubuntu/2004/amd64/seed_ub_uefi.cfg console-setup/layoutcode=us interface=auto
initrdefi /path/to/2004/amd64/initrd.gz
Eu tentei extrair as imagens vmlinuz e initrd.gz das imagens iso do CD 22.04 do Ubuntu. No entanto, não importa o que eu tente, ele ainda não consegue encontrar um sistema de arquivos raiz. Suponho que as imagens não tenham mais a funcionalidade di e preseed integrada.
Se essas imagens não existissem, como eu criaria as minhas? Não me sinto muito feliz em migrar para qualquer método de instalação automatizado que a Canonical queira aplicar. Toda a nossa infraestrutura é baseada no método mencionado anteriormente e instalamos vários sistemas operacionais de forma semelhante.
Responder1
O Ubuntu já mudou para cloud-init em 20.04, eles apenas mantiveram o método preseed para compatibilidade. Agora acabou para sempre.
Você precisa criar um arquivo .yml com o nome do arquivo user-data
, comoespecificado aqui.
Então você pode fornecer o caminho para o diretório que contém o arquivo em grub.cfg.
Eu forneço o arquivo diretamente no .iso (no diretório /nocloud/
), mas você pode facilmente fornecer um local http.
menuentry "Install Ubuntu Server (autoinstall)" {
set gfxpayload=keep
linux /casper/vmlinuz quiet autoinstall ds=nocloud\;s=/cdrom/nocloud/ ---
initrd /casper/initrd
}
Responder2
O anterior está obsoleto desde 20.04 e foi removido em 22.04. O Ubuntu agora está usando o autoinstall (também chamado de cloud-init):https://ubuntu.com/server/docs/install/autoinstall
Se você precisar de um exemplo prático elaborado, dê uma olhada neste repositório GitHub:https://github.com/lavabit/robox
Ele usa o Packer para gerar caixas Vagrant para vários provedores. Ele usa a instalação automática desde o Ubuntu 20.10.