Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Criando um modelo de máquina virtual VMware vSphere

Criar máquinas virtuais de forma repetível e confiável pode ser difícil. O VMware vSphere oferece a capacidade de construir uma VM que pode ser convertida em um modelo. O modelo pode então ser usado para criar VMs configuradas de forma idêntica. O Rancher aproveita essa capacidade para criar nós RKE/K3s idênticos.

Para aproveitar o modelo para criar novas VMs, o Rancher tem alguns requisitos específicos que a VM deve ter pré-instalados. Depois de configurar a VM com esses requisitos, você precisa preparar a VM antes de criar o modelo. Finalmente, uma vez que a preparação esteja completa, a VM pode ser convertida em um modelo e movida para uma biblioteca de conteúdo.

Requisitos

Há ferramentas específicas necessárias para que as VMs Linux e Windows sejam utilizáveis pelo driver de nó vSphere. A dependência mais crítica é cloud-init para Linux e cloudbase-init para Windows. Ambos são usados para provisionar as VMs configurando o nome do host e configurando o acesso SSH e o usuário padrão do Rancher. Os usuários podem adicionar mais conteúdo a esses conforme desejado, se outras configurações forem necessárias. Além disso, outros requisitos estão listados abaixo para referência.

Se você tiver regras ou configurações específicas de gateway de segurança, precisará adicionar isso à VM antes de criar um modelo.

Dependências do Linux

Os pacotes que precisam ser instalados no modelo estão listados abaixo. Esses terão nomes ligeiramente diferentes com base na distribuição; por exemplo, algumas distribuições fornecem essas dependências por padrão. O provisionador de cluster instalará automaticamente as dependências necessárias para o Kubernetes. As dependências listadas abaixo são necessárias para o funcionamento do provisionador de cluster do Rancher (não para o Kubernetes):

  • curl

  • wget

  • git

  • net-tools

  • unzip

  • apparmor-parser

  • ca-certificates

  • cloud-init

  • cloud-guest-utils

  • cloud-image-utils

  • growpart (parte do cloud-guest-utils)

  • cloud-initramfs-growroot

  • open-iscsi

  • openssh-server

  • open-vm-tools

Dependências do Windows

A lista de pacotes que precisam ser instalados no modelo é a seguinte:

Criando um modelo

Você pode criar sua VM manualmente ou pode utilizar outras alternativas para criar sua VM.

Criação Manual

  1. Crie sua VM manualmente seguindo estas instruções da VMware. Uma vez que você tenha uma VM em funcionamento, pode instalar manualmente as dependências listadas acima para configurar a VM corretamente para o driver de nó vSphere.

  2. Personalize conforme necessário com base no seu ambiente e requisitos específicos.

  3. Prossiga com a preparação final antes de criar seu modelo.

Alternativas à Criação Manual

Outras opções alternativas para criar VMs estão listadas abaixo:

Packer é uma alternativa frequentemente utilizada. Consulte esta referência para exemplos de seu uso com vSphere.

Preparando sua VM

Após criar uma VM com todas as dependências necessárias (e quaisquer itens adicionais exigidos), você deve realizar o passo mais crítico a seguir: preparar a VM para ser transformada em um modelo. Essa preparação irá redefinir dados críticos, como o nome da VM, IPs, etc., para evitar que essas informações sejam trazidas para uma nova VM. Se você não realizar este passo, poderá criar uma VM com o mesmo nome, endereço IP, etc.

Observe que esses passos preparatórios diferem entre Linux e Windows.

Preparação do Linux

Os comandos abaixo irão redefinir sua VM no Linux:

# Cleaning logs.
if [ -f /var/log/audit/audit.log ]; then
  cat /dev/null > /var/log/audit/audit.log
fi
if [ -f /var/log/wtmp ]; then
  cat /dev/null > /var/log/wtmp
fi
if [ -f /var/log/lastlog ]; then
  cat /dev/null > /var/log/lastlog
fi

# Cleaning udev rules.
if [ -f /etc/udev/rules.d/70-persistent-net.rules ]; then
  rm /etc/udev/rules.d/70-persistent-net.rules
fi

# Cleaning the /tmp directories
rm -rf /tmp/*
rm -rf /var/tmp/*

# Cleaning the SSH host keys
rm -f /etc/ssh/ssh_host_*

# Cleaning the machine-id
truncate -s 0 /etc/machine-id
rm /var/lib/dbus/machine-id
ln -s /etc/machine-id /var/lib/dbus/machine-id

# Cleaning the shell history
unset HISTFILE
history -cw
echo > ~/.bash_history
rm -fr /root/.bash_history

# Truncating hostname, hosts, resolv.conf and setting hostname to localhost
truncate -s 0 /etc/{hostname,hosts,resolv.conf}
hostnamectl set-hostname localhost

# Clean cloud-init
cloud-init clean -s -l

Preparação do Windows

O Windows possui uma ferramenta chamada sysprep que é usada para generalizar uma imagem e redefinir os mesmos itens listados acima para o Linux. O comando é o seguinte:

sysprep.exe /generalize /shutdown /oobe

Convertendo para um Modelo

  1. Desligue e pare a VM.

  2. Clique com o botão direito na VM na lista de inventário e selecione Modelo.

  3. Clique em Converter para Modelo.

Resultado: Uma vez que o processo tenha sido concluído, um modelo estará disponível para uso.

Para informações adicionais sobre como converter uma VM em um modelo, consulte o guia do VMware.

Mudando para uma biblioteca de conteúdo

O Rancher tem a capacidade de usar modelos fornecidos por uma biblioteca de conteúdo. As bibliotecas de conteúdo armazenam e gerenciam conteúdo dentro do vSphere, e também oferecem a capacidade de publicar e compartilhar esse conteúdo.

Abaixo estão alguns links úteis sobre bibliotecas de conteúdo:

Outros Recursos

Aqui está uma lista de recursos adicionais que podem ser úteis: