Opa! Dica rápida para fazer
deploy de uma
VM em formato OVA para um ESXi via comando, partindo de um
Linux que também é uma VM e que também esta rodando no mesmo ESXi, mas não precisaria ser nenhum dos dois, somente precisaria ter comunicação via 443 entre o Linux e o ESXi.
Meu caso era que o Deploy via Sphere Cliente (ESXi 5.5) ou HTTP (ESXi 6.5/6.7) era lento e como a rede aonde eu estava (unidade → matriz via VPN pela Internet) não era das melhores, sempre ocorria erro, então para contornar isso, copiei o OVA via Rsync, que conseguiu ser melhor e executar sem problemas, e no destino fiz o deploy via comando.
Nativamente (via forma gráfica), você não consegue fazer o deploy de um OVA que esteja no próprio DataStore do ESXi, esse é uma das forma para quem precisa disso.
Primeiramente, vamos precisar do comando
ovftool. Existe uma forma de colocar ele diretamente no ESXi (aí sim se pode fazer deploy sem depender de um VM Linux), mas minha tentativa não funcionou e como eu já tinha uma VM Linux pronta e funcional, optei por utilizá-la.
Passos
1. Obtenha o OVFTOOL.
Para deploy em ESXi 5.5:
Para deploy em ESXi 6.5/6.7 (pode ser que esse também faça no 5.5)
2. Ver informações do seu OVA.
Aqui conseguimos ver informações, como rede (interfaces) etc.
# ovftool XXXX.OVA
3. Deploy.
Para ESXi 5.5:
# ovftool --acceptAllEulas -dm=thin -ds=datastore1 "--net:vlan508=VLAN10" "--net:Rede DMZ=VLAN22" "--name=SERVER-2020" "/home/SERVER.ova" "vi://USUARIO:SENHA@IP-DO-ESXI"
Onde:
- dm → Tipo do Disco;
- ds → DataStore que a VM será alocada;
- net:INTERFACE_ATUAL=INTERFACE_NOVA → Mapeamento da Interface do OVA para uma interface do ESXi
- name → Nome da VM;
- /home/SERVER.OVA → Caminho aonde está o OVA;
- vi://USUARIO:SENHA@IP-DO-ESXI → Credencias de Acesso e IP de acesso
Para ESXI 6.5/6.7:
# ovftool --noSSLVerify --noSSLVerify=true --skipManifestCheck --acceptAllEula -dm=thin -ds=datastore1 "--net:vlan508=VLAN10" "--net:Rede DMZ=VLAN22" "--name=SERVER-2020" "/home/SERVER.ova" "vi://USUARIO:SENHA@IP-DO-ESXI"
Basicamente, a mesma coisa nas duas versões, apenas que possui algumas opções para se evitar problemas com SSL.
# --noSSLVerify --noSSLVerify=true --skipManifestCheck
Feito isso, só aguardar e pronto.
LEMBRANDO: há muitos parâmetros que podem ser usados, dê uma olhada no
man/help.
Testado em:
- Debian 8
- Ubuntu 14.10
- VMware 5.5 e 6.5/6.7
Abraço.