Hvordan installere Vagrant på CentOS 7


I denne artikkelen skal jeg demonstrere hvordan du bruker vagrant til å spinne opp en virtuell maskin på noen få minutter på CentOS 7. Men først en liten introduksjon til vagrant.

Vagrant er et åpen kildekode-prosjekt for å lage og klargjøre bærbare virtuelle maskiner. Med vagrant kan du spinne opp flere virtuelle maskiner i løpet av ufattelig kort tid. Vagrant lar deg prøve flere operativsystemer eller distribusjoner uten å bry deg om å laste ned ISO-filer.

Krav

Vi må laste ned virtualBox. Vagrant kjører også på AWS, Docker og VMware. Men jeg skal bruke VirtualBox i denne opplæringen.

Nå vil du kanskje spørre: hvorfor VirtualBox? Som jeg påpekte ovenfor spiller det ingen rolle hvilken virtualiseringsprogramvare du går for. Alle vil fungere bra for deg fordi alle Linux-maskiner har samme kommandobase. Poenget er: du må ha et virtualiseringsmiljø som virtualbox for å kunne kjøre klargjøringsprogramvare som vagrant.<

Trinn 1: Installere VirtualBox 5.1 på CentOS 7

Selv om det er flere veiledninger om installasjon av virtualBox på linux-console.net (for eksempel Installer VirtualBox på CentOS 7), vil jeg likevel raskt kjøre gjennom virtualbox 5.1-installasjonen.

Installer først VirtualBox-avhengigheter.

yum -y install gcc dkms make qt libgomp patch 
yum -y install kernel-headers kernel-devel binutils glibc-headers glibc-devel font-forge

Legg deretter til VirtualBox-depot.

cd /etc/yum.repo.d/
wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo

Installer og bygg nå kjernemodulen.

yum install -y VirtualBox-5.1
/sbin/rcvboxdrv setup

Trinn 2: Installere Vagrant på CentOS 7

Her vil vi laste ned og installere den nyeste versjonen av Vagrant (dvs. 1.9.6 i skrivende stund) ved å bruke yum-kommandoen.

----------- For 64-bit machine -----------
yum -y install https://releases.hashicorp.com/vagrant/1.9.6/vagrant_1.9.6_x86_64.rpm

----------- For 32-bit machine ----------- 
yum -y install https://releases.hashicorp.com/vagrant/1.9.6/vagrant_1.9.6_i686.rpm

Lag en katalog der du skal installere din favoritt Linux-distribusjon eller operativsystem.

mkdir ~/vagrant-home 
cd ~/vagrant-home 

Installer din favoritt distro eller operativsystem.

----------- Installing Ubuntu -----------
vagrant init ubuntu/xenial64

----------- Installing CentOS -----------
vagrant init centos/7

En fil kalt Vagrantfile vil bli opprettet i din nåværende katalog. Denne filen inneholder konfigurasjonsinnstillinger for dine virtuelle maskiner.

Start opp Ubuntu-serveren din.

vagrant up

Vent til nedlastingen er ferdig. Det tar egentlig ikke mye tid. Internett-hastigheten din teller også.

For liste over tilgjengelige forhåndskonfigurerte bokser, sjekk ut https://app.vagrantup.com/boxes/search

Trinn 3: Administrer Vagrant-bokser med Virtualbox

Start Virtualbox for å se en forhåndsbygd 64-bits Ubuntu virtuell maskin lastet inn i virtualbox med konfigurasjon definert i Vagrantfile. Dette er akkurat som alle andre VM: Ingen forskjell.

Hvis du vil sette opp en annen boks (si CentOS7), modifiser Vagrantfile-filen din i din nåværende katalog (hvis det er der Vagrantfilen er plassert) med din favorittredigerer. Jeg bruker vi editor for arbeidet mitt. Rett under linje 15 skriver du:

config.vm.box = “centos/7”

Du kan også sette opp IP-adressen samt vertsnavn for boksen som ennå ikke skal lastes ned i Vagrantfilen. Du kan gjøre dette for så mange bokser du vil klargjøre som mulig.

For å sette opp statisk IP-adresse, fjern kommentarfeltet til linje 35 og endre IP-adressen til ditt valg.

config.vm.network "private_network", ip: "192.168.33.10"

Etter at du er ferdig med denne endringen, skriv inn kommandoen nedenfor for å få opp maskinen.

vagrant up

Det er ekstremt enkelt å administrere denne virtuelle serveren.

vagrant halt     [shutdown server]
vagrant up       [start server]
vagrant destroy  [delete server]
Konklusjon

I denne opplæringen har vi brukt vagrant for raskt å bygge en server uten mye problemer. Husk at vi ikke trengte å bekymre deg for å laste ned ISO-fil. Kos deg med den nye serveren din!