Criando uma imagem customizada do Linux
Você pode criar sua própria imagem personalizada Linux para importar para o IBM Cloud® Virtual Private Cloud. Você pode então usar a imagem personalizada para implantar um servidor virtual ou servidor bare metal na IBM Cloud® Virtual Private Cloud infraestrutura.
É possível começar com um modelo de imagem da infraestrutura clássica do IBM Cloud. Para obter mais informações, consulte Migrando um servidor virtual da infraestrutura clássica. Você sabia que também pode criar uma imagem personalizada de um volume de inicialização que é anexado a uma instância no momento da importação? Para obter mais informações, consulte Sobre como criar uma imagem por meio do volume.
Todas as imagens personalizadas devem atender aos seguintes requisitos:
- Conter um arquivo ou volume único.
- Estar no formato “ qcow2 ” ou “vhd”.
- O tamanho não ultrapassa 250 GB.
- Certifique-se de que o cloud-init(Linux ) ou o cloudbase-init(Windows) esteja instalado e ativo na imagem qcow2.
- O tamanho mínimo é de 10 GB. Para qualquer imagem que seja menor que 10 GB, o tamanho é arredondado em até 10 GB.
Para criar imagens customizadas baseadas em execução segura usando a opção IBM Cloud Object Storage, consulte Preparando a carga de trabalho. Para obter mais informações sobre a criação de imagens baseadas em execução segura, IBM Secure Execution for Linux
Para imagens do Linux , o tipo de chave SSH do Ed25519 poderá ser usado somente se o servidor SSH para o sistema operacional suportar esse tipo de chave Para obter mais informações, consulte Introdução às chaves SSH
Conclua as etapas a seguir para certificar-se de que seja possível implementar com êxito sua própria imagem customizada do Linux no ambiente de infraestrutura do IBM Cloud VPC.. Lembre-se de que não é possível criar uma imagem a partir de um volume de inicialização criptografado que não tenha 100 GB. A operação está bloqueada
Etapa 1 - Começar com um único arquivo de imagem no formato qcow2 ou VHD
Se você estiver criando sua própria imagem customizada baseada no Linux, comece com um único arquivo de imagem no formato qcow2 ou VHD. Pode ser útil começar com uma imagem de fornecedor ativada por nuvem.
Os logs do kernel são importantes na depuração de problemas relacionados à inicialização. Para assegurar que os logs do kernel sejam impressos para o console serial, use o argumento de linha de comandos do kernel console=ttyS0.
Além disso, os parâmetros kernel nomodeset e nofb são usados para resolver problemas relacionados à exibição durante o processo de inicialização para kernels antigos que foram liberados antes de meados de 2021. Os
kernels mais novos usam a configuração do modo de vídeo no kernel.
Etapa 2 - Verifique se há drivers virtio
-
Certifique-se de que os drivers virtio estejam instalados em sua imagem do sistema operacional, juntamente com qualquer código necessário pelo virtio. Os drivers de rede virtio são necessários para ativar a rede. Verifique se os drivers do virtio estão instalados no kernel, executando o seguinte comando:
grep -i virtio /boot/config-$(uname -r)Procure
VIRTIO_BLKeVIRTIO_NETna saída. Se essas linhas não estiverem presentes, o driver virtio não será construído no kernel. -
Se as linhas
VIRTIO_BLKeVIRTIO_NETestiverem presentes, verifique se os drivers estão presentes no sistema de arquivos raiz temporário executando o seguinte comando:lsinitrd /boot/initramfs-$(uname -r).img | grep virtioSe você estiver usando um sistema operacional Debian, use o seguinte comando:
lsinitramfs /boot/initrd.img-$(uname -r) | grep virtioVerifique se o driver
virtio blke suas dependênciasvirtio.ko,virtio_pcievirtio_ringestão presentes. Se as dependências do virtio não estiverem presentes, você deverá recuperar o sistema de arquivos raiz.
Etapa 3 - A interface de rede está definida para configuração automática
Se as interfaces de rede estiverem definidas na imagem do convidado, certifique-se de que pelo menos uma interface de rede esteja definida como configuração automática. Nem todas as interfaces podem ser designadas para configuração manual. Geralmente, a interface é configurada para usar o DHCP. Para obter mais informações sobre como configurar o DHCP, consulte a documentação para sua distribuição Linux.
Etapa 4-Certifique-se de que a imagem esteja ativada para cloud-init
Certifique-se de que a sua imagem esteja ativada para cloud-init. O cloud-init versão 0.7.9 ou mais recente é necessário.
-
Para determinar se o cloud-init está instalado, execute o seguinte comando:
cloud-init --version- Em alguns casos, o cloud-init pode ser instalado, mas não em seu PATH do ambiente.
- Para localizar o caminho para o cloud-init on ExecStart, execute o comando a seguir:
systemctl cat cloud-init
-
Para instalar o cloud-init, use um dos comandos a seguir.
- Para Ubuntu ou Debian, execute o comando a seguir:
apt-get install cloud-init - Para CentOS ou Red Hat, execute o seguinte comando:
yum install cloud-init
- Para Ubuntu ou Debian, execute o comando a seguir:
-
Se a propriedade
datasources_listexistir em /etc/cloud/cloud.cfg, verifique se ela contém apenasNoCloudou remova completamente a propriedadedatasources_listConfigDrivenão é suportado.. Para obter mais informações sobre origens de dados, consulte origens de dados. IBM Cloud imagens cloud-init são criadas para o ambiente usando a origem de dados NoCloud para fornecer os metadados.É fornecido um dispositivo de bloco. Consulte o exemplo a seguir.
blkid /dev/vdb: UUID="2023-03-15-16-50-02-00" LABEL="cidata" TYPE="iso9660"Este dispositivo de bloco é localizado pelo cloud-init e contém os arquivos a seguir:
- instância de metadados-id: INSTANCE_ID local-hostname: NAME
- dados do usuário opcionais que foram fornecidos quando a instância foi criada. Consulte Dados do usuário para obter informações adicionais
- vendor-data Um arquivo formatado MIME que contém a autorização SSH de configuração de nuvem derivada das chaves SSH que foram fornecidas quando a instância foi criada e informações de inicialização adicionais
-
No arquivo /etc/cloud/cloud.cfg, verifique se a seção
cloud_final_modulesinclui o móduloscripts-vendore se ele está ativado. Por padrão, o Red Hat Enterprise Linux e o CentOS não incluem o móduloscripts-vendorque é necessário para provisionar instâncias na infraestrutura do IBM Cloud VPC. Deve-se ativar o móduloscripts-vendorpara provisionar uma instância de servidor virtual IBM Cloud VPC com a imagem customizada Linux.Para imagens Red Hat Enterprise Linux (RHEL), os seguintes pacotes são incluídos como parte da imagem base por padrão e são necessários para que o cloud-init seja executado com êxito:
subscription-manager,ethtool, erpm. Além disso, certifique-se de que estes serviços estejam ativados:cloud-init-local.service,cloud-init.service,cloud-config.serviceecloud-final.service. -
Certifique-se de configurar sua imagem para usar SSH para fazer login no servidor virtual.
O usuário padrão para imagens personalizadas baseadas em RHEL é cloud-user. Para obter mais informações sobre como ativar o cloud-init, consulte Configuração do cloud-init.
Etapa 5 - Tamanho do disco de inicialização
Certifique-se de que a imagem tenha um tamanho de disco de inicialização de 10 a 250 GB. As imagens com menos de 10 GB são arredondadas para 10 GB.
Se você estiver personalizando um servidor virtual para migrar da infraestrutura clássica, volte para Migrar um servidor virtual da infraestrutura clássica e continue a concluir as etapas de migração.
Etapa 6-Fazer upload da imagem para IBM Cloud Object Storage
Faça upload de sua imagem para o IBM Cloud Object Storage. Na página Objetos do seu bucket IBM Cloud® Object Storage, clique em Upload. Você pode usar o plug-in de transferência de alta velocidade Aspera para fazer upload de imagens com mais de 200 MB. Para obter mais informações sobre o upload para o IBM Cloud Object Storage, consulte Upload de dados.
Próximas etapas
Quando sua imagem personalizada do Linux é criada e disponível em IBM Cloud Object Storage, você pode importar a imagem customizada em VPC e Onboard uma imagem de servidor virtual para VPC. Certifique-se de ter concedido acesso ao IBM Cloud Object Storage para importar imagens.
Se você planeja usar um catálogo privado para gerenciar suas imagens personalizadas, primeiro é necessário importar essa imagem para IBM Cloud VPC o e, em seguida, integrar a imagem do servidor virtual a um catálogo privado.
Depois que a imagem customizada é importada, você pode então usar a imagem customizada para implementar um servidor virtual na infraestrutura IBM Cloud® Virtual Private Cloud.