En el artículo anterior, vimos cómo hacer girar una máquina virtual usando vagrant. En este artículo, nos centraremos en personalizar el archivo vagabundo según nuestros requisitos y veremos comandos importantes para trabajar con el vagabundo.
Crear un nuevo directorio de proyectos de Vagrant
Déjame crear una nueva carpeta de proyecto "vagrant_testing ” y bajo esta ejecución, el vagrant init Comando para configurar un nuevo proyecto.
$ mkdir ~/vagrant_testing
$ vagrant init -m "ubuntu/focal64"
En la imagen a continuación, puede ver que he creado un archivo de configuración mínimo usando -m
marcar con vagrant init comando.
$ cat Vagrantfile
Ahora modifiquemos y agreguemos los siguientes parámetros a nuestro archivo vagabundo.
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box_check_update = false
config.vm.allow_hosts_modification = true
config.vm.define "ubuntu" do |vmbox|
vmbox.vm.box = "ubuntu/focal64"
vmbox.vm.define "Ubuntu"
vmbox.vm.hostname = "shelltips-vagrant"
vmbox.vm.network "public_network", bridge: "Intel(R) Dual Band Wireless-AC 7265", ip: "192.168.1.100"
vmbox.vm.synced_folder ".", "/vagrant/", disabled: true
vmbox.vm.synced_folder "/home/karthick/shelltips", "/vagrant/shelltips", disabled: false
vmbox.vm.provider "virtualbox" do |vmvbox|
vmvbox.memory = "2048"
vmvbox.cpus = 2
end
end
end
Déjame explicarte el uso de todos estos parámetros.
config.vm.box_check_update =false | Desactivar la comprobación de actualizaciones durante el arranque |
config.vm.allow_hosts_modification =true | Permitir que vagabundo actualice el archivo /etc/hosts |
vmbox.vm.box =“ubuntu/focal64” | Cuadro que necesitas descargar y usar |
vmbox.vm.define “Ubuntu” | Nombre para la VM. Se asignará "Predeterminado" si no está definiendo el nombre. |
vmbox.vm.hostname =“shelltips-vagrant” | Configurando el nombre de host para su VM |
vmbox.vm.synced_folder ., “/vagrant”, deshabilitado:verdadero vmbox.vm.synced_folder “/home/karthick/shelltips”, “/vagrant/shelltips”, deshabilitado:falso | Configurando la carpeta sincronizada. Desactivando la carpeta sincronizada predeterminada y agregando mi carpeta personalizada. Tienes que configurar "deshabilitado:verdadero/falso" para activar o desactivar las carpetas compartidas. |
vmbox.vm.network “public_network”, puente:“Intel(R) Dual Band Wireless-AC 7265”, IP:“192.168.1.100” | Configurando mi red virtual en modo de adaptador en puente y asignando una dirección IP. Virtualbox tiene cinco modos de red diferentes y puede elegir el que se adapte a su uso caso. |
vmbox.vm.provider “virtualbox” do |vmvbox| vmvbox.memory =“ 2048” vmvbox.cpus =2 | Definición de memoria y núcleos de CPU para mi VM |
Ahora si ejecuto el vagrant up comando configurará mi máquina virtual de acuerdo con el parámetro personalizado que declaré en el archivo vagabundo.
SSH a máquina virtual Vagrant
Ahora, para conectarse con la máquina virtual, simplemente ejecute “vagrant ssh " dominio. Si tiene varias máquinas, puede conectarse a la máquina específica utilizando su ID o nombre. Puede obtener esta información del estado-global comando.
$ vagrant ssh
$ vagrant ssh [id|name]
El nombre de host también se actualiza y la dirección IP especificada en el archivo vagabundo también se crea.
$ ip a s
$ hostname
Una vez que su máquina virtual vagabunda esté activa, puede ir a su administrador de GUI de virtualbox y verificar si todas las configuraciones son según el valor definido.
Ahora, si desea habilitar la autenticación basada en contraseña para su máquina virtual, ejecute el siguiente comando en su VM. Esto establecerá la autenticación de contraseña como verdadera.
$ sudo sed -i "/^[^#]*PasswordAuthentication[[:space:]]no/c\PasswordAuthentication yes" /etc/ssh/sshd_config
$ sudo service sshd restart
Ahora, en lugar de ejecutar vagrant ssh , puede ejecutar el comando de conexión ssh tradicional.
$ ssh [email protected] ⇒ Bridged Network
$ ssh vagrant@localhost -p 2222 ⇒ Nat Network
Para detener una máquina virtual en ejecución, ejecute el siguiente comando.
$ vagrant halt ⇒ Gracefully shutdown the VM
$ vagrant suspend [name|id] ⇒ Put the Machine into a suspended state
$ vagrant resume [name|id] ⇒ Resume the suspended VM
Ahora tienes una máquina de correr. Si de repente decide cambiar algún parámetro en su archivo de configuración vagabundo, entonces tiene que volver a cargar la máquina.
$ vagrant reload
El comando vagrant reloads apaga la VM con gracia y abre la VM con nuevas configuraciones, si las hay.
Actualización de Vagrant Box
Puede verificar si su caja está actualizada ejecutando el siguiente comando.
$ vagrant box outdated --global ==> check for an outdated version of all boxes in your machine
Para descargar las actualizaciones, ejecute el siguiente comando. Un punto importante a tener en cuenta aquí es que las actualizaciones no se aplicarán al cuadro actual que está ejecutando. Tienes que destruir tu cuadro actual y activar el nuevo cuadro actualizado descargado.
$ vagrant box update --box ubuntu/focal64 --provider Virtualbox
Destruye Caja Vagrant
Para destruir una caja vagabunda ejecuta vagrant destroy comando, que eliminará todos los archivos, incluidas las imágenes de disco, pero no eliminará el cuadro descargado del sitio vagabundo.
$ vagrant destroy [name|id]
Eliminar caja de Vagrant
Para eliminar la ejecución del cuadro vagabundo:
$ vagrant box remove ubuntu/focal64
En el próximo artículo, veremos cómo usar los aprovisionadores de shell y automatizar la implementación de cajas vagabundas.