En este tutorial, veremos cómo instalar Vagrant en sistemas operativos Linux. ¡Instalar Vagrant es bastante fácil! Todo lo que tiene que hacer es dirigirse a la página de descargas de Vagrant, obtener la versión binaria precompilada adecuada para su distribución de Linux e instalarla de la forma en que normalmente instalaría otras aplicaciones. También puede instalar Vagrant desde los repositorios predeterminados. Aquí he incluido todas las formas posibles de instalar Vagrant en tu caja de Linux.
1. Instalar Vagrant en Linux
Vagrant está disponible en los repositorios oficiales de la mayoría de las distribuciones de Linux y Unix. Entonces podemos instalar vagabundo usando los administradores de paquetes predeterminados.
Por ejemplo, ejecute el siguiente comando para instalar Vagrant en Debian, Ubuntu, Linux Mint:
$ sudo apt install vagrant
En Fedora:
$ sudo dnf install vagrant
En SUSE/openSUSE:
$ sudo zypper install vagrant
Las versiones oficiales en los repositorios pueden estar muy desactualizadas. Si quieres la versión más reciente, ve a la página oficial de descargas de Vagrant y descargue el archivo binario más reciente para sus sistemas operativos Linux.
Por ejemplo, si usa Debian y otros sistemas basados en Debian como Ubuntu, simplemente descargue .deb versión. Al momento de escribir esta guía, la última versión era la 2.2.10. Está disponible para arquitectura de 32 y 64 bits.
Después de descargar el archivo .deb, vaya a la sección de descargas e instálelo como se muestra a continuación:
$ sudo apt install gdebi
$ sudo gdebi vagrant_2.2.10_x86_64.deb
Aquí, la razón por la que usé "gdebi" es porque instala automáticamente las dependencias necesarias.
Si ha descargado el .rpm archivo, puede instalarlo usando el comando:
$ sudo dnf localinstall vagrant_2.2.10_x86_64.rpm
O,
$ sudo yum localinstall vagrant_2.2.10_x86_64.rpm
2. Instalar hipervisores
Después de instalar Vagrant, debe instalar cualquier hipervisor de virtualización, por ejemplo, VirtualBox o KVM. Porque Vagrant no es un software de virtualización independiente. Es solo un contenedor y un front-end para otras aplicaciones de virtualización.
Vagrant se desarrolló originalmente para VirtualBox. Desde la versión 1.1, el equipo de vagabundos amplió su soporte para otros entornos de servidor y software de virtualización populares, incluidos Aws, Azure, GCE, Docker, KVM, Proxmox, Openstack, Openvz, VMware y muchos más. Puede ver la lista completa de proveedores/entornos admitidos aquí .
A los efectos de esta guía, voy a utilizar Oracle VirtualBox. Porque instalar Virtualbox es fácil y Vagrant usa VirtualBox como proveedor predeterminado.
Para instalar VirtualBox en Debain, Ubuntu, Linux Mint, ejecute el siguiente comando:
$ sudo apt install virtualbox
Para instalar Virtualbox en Red Hat, CentOS, Fedora, ejecute:
$ sudo dnf install virtualbox
Para instalar Virtualbox en SUSE/openSUSE, ejecute:
$ sudo zypper install virtualbox
Si prefiere usar KVM, puede seguir las siguientes guías para instalarlo.
- Instalar y configurar KVM en el servidor CentOS 8
- Instalar y configurar KVM en Ubuntu 20.04 servidor sin cabeza
- Instalar y configurar KVM en OpenSUSE Tumbleweed
3. Verificar la instalación de Vagrant
Para verificar si Vagrant está correctamente instalado, simplemente ejecútelo sin ninguna opción desde la terminal:
$ vagrant
Volverá a la sección de ayuda de Vagrant.
Usage: vagrant [options] <command> [<args>]
-h, --help Print this help.
Common commands:
box manages boxes: installation, removal, etc.
cloud manages everything related to Vagrant Cloud
destroy stops and deletes all traces of the vagrant machine
global-status outputs status Vagrant environments for this user
halt stops the vagrant machine
help shows the help for a subcommand
init initializes a new Vagrant environment by creating a Vagrantfile
login
package packages a running vagrant environment into a box
plugin manages plugins: install, uninstall, update, etc.
port displays information about guest port mappings
powershell connects to machine via powershell remoting
provision provisions the vagrant machine
push deploys code in this environment to a configured destination
rdp connects to machine via RDP
reload restarts vagrant machine, loads new Vagrantfile configuration
resume resume a suspended vagrant machine
snapshot manages snapshots: saving, restoring, etc.
ssh connects to machine via SSH
ssh-config outputs OpenSSH valid configuration to connect to the machine
status outputs status of the vagrant machine
suspend suspends the machine
up starts and provisions the vagrant environment
upload upload to machine via communicator
validate validates the Vagrantfile
version prints current and latest Vagrant version
winrm executes commands on a machine via WinRM
winrm-config outputs WinRM configuration to connect to the machine
For help on any individual command run `vagrant COMMAND -h`
Additional subcommands are available, but are either more advanced
or not commonly used. To see all subcommands, run the command
`vagrant list-commands`.
--[no-]color Enable or disable color output
--machine-readable Enable machine readable output
-v, --version Display Vagrant version
--debug Enable debug output
--timestamp Enable timestamps on log output
--debug-timestamp Enable debug output with timestamps
--no-tty Enable non-interactive output
También puede -h o --ayuda parámetro para abrir la sección de ayuda.
$ vagrant --help
[Or]
$ vagrant -h
Para obtener ayuda para comandos individuales, ejecute:
$ vagrant <COMMAND-NAME> -h
Para ver la versión de Vagrant, ejecuta:
$ vagrant version
Devolverá la versión actualmente instalada y la última versión disponible.
Installed Version: 2.2.10
Latest Version: 2.2.10
You're running an up-to-date version of Vagrant!
O,
$ vagrant -v
Vagrant 2.2.10
4. Actualizar vagabundo
Si instaló Vagrant desde repositorios oficiales utilizando el administrador de paquetes de distribución, simplemente puede actualizar Vagrant a una versión más nueva actualizando su sistema. Por ejemplo, en sistemas basados en Debian, los siguientes comandos actualizarán Vagrant a una versión más reciente:
$ sudo apt update
$ sudo apt upgrade
En sistemas basados en RPM, como RHEL, CentOS, haga lo siguiente:
$ sudo yum update
O,
$ sudo dnf update
en SUSE/openSUSE:
$ sudo zypper update
Si descargó e instaló manualmente el Vagrant, simplemente descargue la nueva versión desde la página de descarga oficial de Vagrant e instálelo como se describe en "Instalar Vagrant" sección anterior.
Los nuevos instaladores sobrescribirán y eliminarán correctamente los archivos antiguos. Se recomienda que no se ejecute ningún otro proceso de Vagrant durante el proceso de actualización.
5. Solución de problemas de vagabundos
Si ejecuta varios hipervisores en la misma máquina host, probablemente se encontrará con un error similar al siguiente al iniciar una VM:
There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", <ID of the VM>, "--type", "headless"]
Stderr: VBoxManage: error: VT-x is being used by another hypervisor (VERR_VMX_IN_VMX_ROOT_MODE).
VBoxManage: error: VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot
(VERR_VMX_IN_VMX_ROOT_MODE)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole
Este error ocurre porque otro hipervisor, por ejemplo, KVM, está actualmente en uso. Para corregir este error, es posible que deba bloquear temporalmente ese hipervisor.
Encuentre el módulo KVM usando el comando:
$ lsmod | grep kvm
Si su sistema host es Intel, obtendrá el siguiente resultado:
kvm_intel 282624 0
kvm 663552 1 kvm_intel
Si es AMD, obtendrás esto en su lugar:
kvm_intel 282624 0
kvm 663552 1 kvm_amd
Ahora bloquee el módulo KVM usando el comando:
$ echo 'blacklist kvm-intel' >> /etc/modprobe.d/blacklist.conf
Escriba "kvm-amd" en el comando anterior si su CPU es AMD.
Reinicie su sistema y luego intente nuevamente ejecutar Vagrant. Esta vez, la máquina virtual se iniciará sin problemas.
Eso es todo. Hemos instalado con éxito Vagrant en Linux. Consulte el siguiente artículo para aprender cómo usar Vagrant para configurar un entorno virtualizado y cómo crear y administrar las máquinas virtuales usando Vagrant.
- Tutorial de Vagrant:Primeros pasos con Vagrant