-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automatizar provisionamento das VMs #50
Comments
Achei a possibilidade de utilizar o ESXI para a emulação das máquinas dentro do Qemu. Isso pode trazer a possibilidade mais clara de reaproveitar o conhecimento e arquivos de irei construir futuramente, mesmo que a performance seja inferior, já que estarei com um um ambiente triplamente virtualizado: Qemu -> ESXI -> VM |
Apesar de termos recursos de Packer e Terraform para automatizar a criação da VM com ESXI no libvirt, como eu já tenho uma automação no Ansible, para mim faz mais sentido que essa parte também fique nele. |
O Packer ainda utilizei para criar a imagem do ESXi via builder do Qemu, pois seria mais fácil para servir o arquivo de kickstart. Uma possível alternativa seria fazer na mão uma customização da imagem de instalação, mas isso daria mais trabalho e precisaria subir mais recursos temporários no ambiente. O Terraform também avaliei a utilização, mas como não consegui conectar remotamente no qemu e são poucas opções no provider, resolve não utiliza-lo. https://registry.terraform.io/providers/dmacvicar/libvirt/latest/docs |
Decidi montar um único Playbook Ansible para provisionamento do Homelab. |
Li muito sobre como Qemu, libvirt e afins, fiz vários testes, tentei rodar o ESXI nestes virtualizadores mas não tive sucesso, o hardware virtual é incompatível. Ai fui para uma solução menos glamurosa: O código que escrevi do Packer para o libvirt e virtualbox irei separar em outros repositórios e evoluir em outro momento futuro.
|
Estudando mais, cheguei em dois cenários: 1º - Debian >> VMWare Workstation >> ESXi: Neste caso, o Ansible faria as seguintes alterações na máquina com o Debian:
Obs.: O VMWare Player não tem os complementos para acesso programático exigidos pelo Packer. Pode ser utilizado ele, mas o ESXi teria de ser instalado manualmente, como já havia comentado acima. 2º - Debian >> Qemu Neste cenário, o Ansible faria:
Para acelerar o aprendizado do Kubernetes, e subir logo esse ambiente, vou focar no cenário 2, mas manterei o código referente ao cenário 1 para continuar evoluindo nele posteriormente. |
Por hora deixei o Packer buildando localmente a partir de script no repositório e fazendo o upload da imagem para o S3. |
Problema:
Preciso configurar máquinas virtuais para utilizar no ambiente. Instalei um Debian no meu PC desktop.
Proposta
A ideia inicial é utilizar o libvirt/qemu para rodar as máquinas virtuais.
Detalhes
Pode ser automatizado com Terraform ou Ansible. Como eu preciso configurar o host físico de virtualização, que é uma máquina já instalada mas sem pacote algum, eu posso usar o Ansible como primeira etapa para instalar o libvirt e configurar a máquina e na sequência o Terraform para provisionar as vms com libvirt.
O Ansible também tem o módulo do libvirt, mas acredito que seja uma oportunidade de já encaixar o Terraform.
Da pra usar o Packer para montar imagens customizadas também.
Um fluxo possível seria:
Neste cenário, seria um teste de trabalho com o conceito de imutabilidade.
Tarefas
The text was updated successfully, but these errors were encountered: