V tomto tutoriálu uvidíme, jak nainstalovat Vagrant na operační systémy Linux. Instalace Vagrant je docela snadná! Jediné, co musíte udělat, je přejít na stránku ke stažení Vagrant, chytit vhodnou předkompilovanou binární verzi pro vaši distribuci Linuxu a nainstalovat ji stejným způsobem, jako byste normálně instalovali jiné aplikace. Vagrant můžete také nainstalovat z výchozích úložišť. Zde jsem zahrnul všechny možné způsoby, jak nainstalovat Vagrant na váš Linuxový box.
1. Nainstalujte Vagrant na Linux
Vagrant je k dispozici v oficiálních repozitářích většiny distribucí Linuxu a Unixu. Můžeme tedy nainstalovat vagrant pomocí výchozích správců balíčků.
Například spusťte následující příkaz a nainstalujte Vagrant na Debian, Ubuntu, Linux Mint:
$ sudo apt install vagrant
Na Fedoře:
$ sudo dnf install vagrant
Na SUSE/openSUSE:
$ sudo zypper install vagrant
Oficiální verze v repozitářích mohou být velmi zastaralé. Pokud chcete nejnovější verzi, přejděte na oficiální stránku stahování Vagrant a stáhněte si nejnovější binární soubor pro vaše operační systémy Linux.
Pokud například používáte Debian a další systémy založené na Debianu, jako je Ubuntu, stáhněte si .deb verze. V době psaní této příručky byla nejnovější verze 2.2.10. Je k dispozici pro 32bitovou i 64bitovou architekturu.
Po stažení souboru .deb přejděte do sekce stahování a nainstalujte jej následovně:
$ sudo apt install gdebi
$ sudo gdebi vagrant_2.2.10_x86_64.deb
Zde je důvod, proč jsem použil "gdebi" protože automaticky instaluje potřebné závislosti.
Pokud jste si stáhli soubor .rpm soubor, můžete jej nainstalovat pomocí příkazu:
$ sudo dnf localinstall vagrant_2.2.10_x86_64.rpm
Nebo,
$ sudo yum localinstall vagrant_2.2.10_x86_64.rpm
2. Nainstalujte hypervizory
Po instalaci Vagrantu je potřeba nainstalovat jakékoli virtualizační hypervizory, například VirtualBox nebo KVM. Protože Vagrant není samostatný virtualizační software. Je to jen obal a front-end pro další virtualizační aplikace.
Vagrant je původně vyvinut pro VirtualBox. Od verze 1.1 rozšířil tým tuláků svou podporu pro další populární virtualizační software a serverová prostředí včetně Aws, Azure, GCE, Docker, KVM, Proxmox, Openstack, Openvz, VMware a mnoha dalších. Úplný seznam podporovaných poskytovatelů/prostředí si můžete prohlédnout zde .
Pro účely této příručky budu používat Oracle VirtualBox. Protože instalace Virtualboxu je snadná a Vagrant používá VirtualBox jako výchozího poskytovatele.
Chcete-li nainstalovat VirtualBox na Debain, Ubuntu, Linux Mint, spusťte následující příkaz:
$ sudo apt install virtualbox
Chcete-li nainstalovat Virtualbox na Red Hat, CentOS, Fedora, spusťte:
$ sudo dnf install virtualbox
Chcete-li nainstalovat Virtualbox na SUSE/openSUSE, spusťte:
$ sudo zypper install virtualbox
Pokud dáváte přednost použití KVM, můžete jej nainstalovat podle níže uvedených pokynů.
- Nainstalujte a nakonfigurujte KVM na serveru CentOS 8
- Instalace a konfigurace KVM v Ubuntu 20.04 Headless Server
- Nainstalujte a nakonfigurujte KVM v OpenSUSE Tumbleweed
3. Ověřte instalaci Vagrant
Chcete-li ověřit, zda je Vagrant správně nainstalován, jednoduše jej spusťte bez jakýchkoli voleb z terminálu:
$ vagrant
Vrátí sekci nápovědy 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
Můžete také -h nebo --help parametr pro vyvolání sekce nápovědy.
$ vagrant --help
[Or]
$ vagrant -h
Chcete-li získat nápovědu k jednotlivým příkazům, spusťte:
$ vagrant <COMMAND-NAME> -h
Chcete-li zobrazit verzi Vagrant, spusťte:
$ vagrant version
Vrátí aktuálně nainstalovanou verzi a nejnovější dostupnou verzi.
Installed Version: 2.2.10
Latest Version: 2.2.10
You're running an up-to-date version of Vagrant!
Nebo,
$ vagrant -v
Vagrant 2.2.10
4. Upgradujte Vagrant
Pokud jste si nainstalovali Vagrant z oficiálních repozitářů pomocí správce balíčků distribuce, můžete jednoduše upgradovat Vagrant na novější verzi aktualizací systému. Například na systémech založených na Debianu následující příkazy aktualizují Vagrant na novější verzi:
$ sudo apt update
$ sudo apt upgrade
V systémech založených na RPM, jako je RHEL, CentOS, proveďte:
$ sudo yum update
Nebo,
$ sudo dnf update
na SUSE/openSUSE:
$ sudo zypper update
Pokud jste si Vagrant stáhli a nainstalovali ručně, stačí si stáhnout novou verzi z oficiální stránky pro stažení Vagrant a nainstalujte jej, jak je popsáno v „Install Vagrant“ sekce výše.
Nové instalační programy správně přepíší a odstraní staré soubory. Doporučuje se, aby během procesu upgradu nebyly spuštěny žádné další procesy Vagrant.
5. Řešení problémů tulák
Pokud na stejném hostitelském počítači spouštíte více hypervizorů, pravděpodobně se při spouštění virtuálního počítače setkáte s chybou podobnou níže:
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
K této chybě dochází, protože se aktuálně používá jiný hypervizor, například KVM. Chcete-li tuto chybu opravit, možná budete muset tento hypervizor dočasně blokovat.
Najděte modul KVM pomocí příkazu:
$ lsmod | grep kvm
Pokud je vaším hostitelským systémem Intel, získáte následující výstup:
kvm_intel 282624 0
kvm 663552 1 kvm_intel
Pokud je to AMD, místo toho získáte toto:
kvm_intel 282624 0
kvm 663552 1 kvm_amd
Nyní zablokujte modul KVM pomocí příkazu:
$ echo 'blacklist kvm-intel' >> /etc/modprobe.d/blacklist.conf
Pokud je váš procesor AMD, zadejte do výše uvedeného příkazu „kvm-amd“.
Restartujte systém a zkuste znovu spustit Vagrant. Tentokrát se VM spustí bez problémů.
A je to. Úspěšně jsme nainstalovali Vagrant na Linux. V následujícím článku se dozvíte, jak používat Vagrant k nastavení virtualizovaného prostředí a jak vytvářet a spravovat virtuální stroje pomocí Vagrantu.
- Výukový program Vagrant – Začínáme s Vagrant