Este site usa cookies para garantir que você obtenha a melhor experiência, caso tenha duvidas acesse a nossa Política de Privacidade

Aceitar!

Criando maquinas virtuais com Vagrant.

Criando maquinas virtuais usando o vagrant e virtual box.

Postado por metavops 19 de janeiro de 2022.

O que é vagrant e pra que ele serve ?

O vagrant é uma ferramenta desenvolvida pela empresa hashicorp para criação de maquinas virtuais, na qual simplifica e automatiza a geração e configuração, te dando a opção de utilizar diferentes virtualizadores como: Virtual box, VMware, qemu e etc.
Para que o vagrant provisione a maquina virtual, toda a configuração é realizada através de um arquivo de codigo chamado "Vagrantfile", é por meio dele onde será realizado a construção da VM('virtual machine').
Para construção de uma maquina é necessario definir uma "imagem" que seria o sistema operacinal de sua VM('virtual machine'), para isso você pode consultar as boxes disponiveis no link.
Caso queira saber mais sobre o vagrant acesse a documentação official do vagrant:

Criando uma maquina virtual ?

Para esse projeto irei utilizar o virtual box como virtualizador padrão, e o objetivo é criar uma maquina virtual com o sistema operacional ubuntu 16.04 LTS com o serviço do MYSQL instalado.
A principal vantagem do vagrant é de que para criar uma VM não é necessario passar por todo aquele setup de instalação que vemos normalmente quando vamos instalar uma VM nova no virtual box ou qualquer outro virtualizador.juninho-tecnologia

Em vez disso o vagrant utiliza um codigo que é bem simples de entender, para iniciarmos abra seu terminal(cmd, powershell, bash, shell) na maquina onde o vagrant esta instalado, com seu terminal aberto digite o comando:
vagrant init ubuntu/xenial64 juninho-tecnologia Após digitar o comando acima, o vagrant vai criar um arquivo chamado Vagrantfile no diretorio, e é nele onde é definido as configurações da vm.

Se abrirmos o Vagrantfile no visual studio code, verá que há diversas opções comentadas(#) no arquivo. juninho-tecnologia Nesse caso você pode deletar todo o conteudo do arquivo e digitar o codigo abaixo.


Vagrant.configure("2") do |config|
	config.vm.box = "ubuntu/xenial64"
	config.vm.network "public_network"
	config.vm.hostname = "mysql-server"
	config.vm.provider "virtualbox" do |vb|
	 vb.gui = true
	 vb.cpus =  1
	 vb.memory = "1024"
	end
	  config.vm.provision "shell", inline: <<-SHELL
		 apt update && apt upgrade -y 
		 apt install mysql -y
	   SHELL
  end

				     

Se caso você não entendeu o codigo acima eu vou explicar oque cada comando acima quer dizer, caso você queira ver o codigo utilizado, ele esta disponivel no meu github, apenas Clique aqui para obter o codigo.

Vagrant.configure("2") do |config|: Aponta que a versão "2" será utilizada e seta a função "|config|" na qual vai receber os valores de configuração da VM.
config.vm.box = "ubuntu/xenial64": Onde apontamos a box na qual vamos utilizar.
config.vm.network "public_network": Configura a placa de rede para pegar um IP da rede.
config.vm.hostname = "mysql-server": Seta o hostname da maquina
config.vm.provider "virtualbox" do |vb|: Onde configuramos o virtualizador a ser usado, e onde é setado a função "|vb|" para as configurações do virtual box.
vb.gui = true: Configuração para quando a VM iniciar ele abrir o virtual box.
vb.cpus = 1: configuração da quantidade de CPU´s.
vb.memory = "1024": Configuração da quantidade de memoria ram.
end: Onde encerramos a função "|vb|".
config.vm.provision "shell", inline: <<-SHELL: Configuração para utilização do shell.
apt update && apt upgrade -y : Atualiza os pacotes e aplica as atualizações na maquina.
apt install mysql -y: Instala o mysql na maquina.
SHELL: Onde finaliza os scripts de instalação.
end: Onde finalizamos a função "|config|"

Para iniciar a maquina virtual, basta digitar o comando:
vagrant up juninho-tecnologia Após digitar o comando, o vagrant vai verificar se a imagem tem na maquina, caso não tenha ele vai iniciar o download, pode ocorrer durante o procedimento de perguntar sobre em qual interface você deseja colocar em modo "bridge", nesse caso eu escolhi a opção "1".

Após isso o virtual box, vai abrir uma tela onde vai exibir a maquina criada, na maioria das vezes o ususario e senha são sempre os mesmos
Usuario: vagrant
Senha: vagrant
juninho-tecnologia
Áo logarmos na maquina, podemos verificar que hostname da maquina foi setado conforme apontamos acima e vemos que o mysql foi instalado com sucesso na maquina virtual. juninho-tecnologia

Conclusão.

O vagrant é uma excelente ferramenta para criar maquina virtuais, porem em muitos casos ele esta entrando em desuso devido ao fato de hoje existir a possibilidade da utilização de containers, na qual são mais leves e ocupam menos espaço.
Caso queira saber mais sobre o docker acesse esse link aqui:
Docker.
Codigo utilizado no artigo:
Codigo.


Deixe seu comentario ou sugestão sobre o post.