GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come creare Vagrant CentOS 7 usando VirtualBox

Vagrant è un fantastico strumento sviluppato da HashiCorp per creare e configurare ambienti di sviluppo leggeri, riproducibili e portatili basati sulla tecnologia standard del settore e controllati da un unico flusso di lavoro coerente per massimizzare la produttività e la flessibilità.

È un wrapper di livello superiore attorno a software di virtualizzazione come VirtualBox, VMware, KVM e Linux Containers (LXC) e attorno a software di gestione della configurazione come Ansible, Chef, Salt e Puppet. Vagrant semplifica molto la rotazione di macchine virtuali locali utilizzando VirtualBox. Utilizza l'ambiente di virtualizzazione e distribuisce macchine virtuali a scelta e consente all'utente di avere accesso diretto e gestire più macchine virtuali su di esso.

In questo tutorial impareremo come creare una scatola base di CentOS 7 vagabondo da zero usando VirtualBox.

1. Installazione di VirtualBox

Per prima cosa scaricheremo l'ultima versione ovvero 4.3.28 virtual box per la virtualizzazione di vagrant. Lo scaricheremo dalla pagina di download ufficiale di VirtualBox usando il nostro browser web oppure possiamo usare wget usando il terminale. Qui stiamo eseguendo Ubuntu 14.04 nella nostra macchina host, quindi scaricheremo il pacchetto debian per Ubuntu.

# wget http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

--2015-06-16 17:49:13-- http://download.virtualbox.org/virtualbox/4.3.28/virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb
Resolving download.virtualbox.org (download.virtualbox.org)... 137.254.120.26
Connecting to download.virtualbox.org (download.virtualbox.org)|137.254.120.26|:80... connected.
...
HTTP request sent, awaiting response... 200 OK
Length: 65115674 (62M) [application/x-debian-package]
Saving to: ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’
100%[===============================>] 65,115,674 36.8MB/s in 1.7s
2015-06-16 17:49:15 (36.8 MB/s) - ‘virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb’ saved

Dopo aver scaricato il file debian, lo installeremo usando il gestore di pacchetti dpkg.

# dpkg -i virtualbox-4.3_4.3.28-100309~Ubuntu~raring_amd64.deb

Quindi, per correggere le dipendenze richieste, eseguiremo il comando seguente.

# apt-get -f install

2. Installazione di Vagrant

Poiché stiamo eseguendo Ubuntu 14.04 sulla nostra macchina host, ora scaricheremo l'ultima versione di vagrant ie 1.7.2 dalla nostra pagina di download ufficiale di Vagrant usando wget o usando il nostro browser web preferito.

# wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2_x86_64.deb

Dopo il download, lo installeremo utilizzando il gestore di pacchetti dpkg.

# dpkg -i vagrant_1.7.2_x86_64.deb

Selecting previously unselected package vagrant.
(Reading database ... 117170 files and directories currently installed.)
Preparing to unpack vagrant_1.7.2_x86_64.deb ...
Unpacking vagrant (1:1.7.2) ...
Setting up vagrant (1:1.7.2) ...

3. Preparazione della macchina virtuale

Download del file immagine CentOS

Poiché in questo tutorial stiamo facendo tutto da zero, creeremo la nostra macchina virtuale con la nostra configurazione e configurazione nella Virtual Box. Quindi, prima di iniziare a configurare la VM, dovremo scaricare il nostro file iso centos 7 personale. Possiamo scaricarlo da http://mirror.centos.org/centos/7/isos/x86_64/ selezionando il mirror vicino a noi e il file immagine richiesto. Qui scaricheremo l'iso minimo di CentOS 7. Ora che il nostro file immagine iso è pronto per l'uso, continueremo ulteriormente per la creazione della macchina virtuale nella scatola virtuale.

Creazione di una macchina virtuale

Ora avvieremo la scatola virtuale che abbiamo appena installato nel nostro sistema operativo host. Quindi faremo clic su Nuovo Pulsante. Quindi assegneremo alla macchina virtuale un nome come centos-7 quindi sceglieremo Linux sotto Tipo.

E scegli Red Hat (64 bit) come versione. In Dimensioni della memoria , lasceremo RAM a 512 MB in quanto vagabondo ha la capacità di cambiarlo.

Ora selezioneremo Crea un disco rigido virtuale ora e fai clic su Crea . Lasceremo il nome predefinito in Posizione file . Quindi imposta la dimensione del file del disco rigido su 40,00 GB e seleziona VDI (VirtualBox Disk Image) come Tipo di file del disco rigido .

Quindi selezioneremo allocazione dinamica e fai clic su Crea . Evviva. abbiamo creato con successo la macchina virtuale nella nostra Virtual Box.

Ulteriore configurazione della macchina virtuale

Quindi, per un'ulteriore configurazione, faremo clic sul nome della macchina virtuale e quindi su Impostazioni . Quindi vai a Archiviazione scheda e fai clic su Vuoto appena sotto IDE controller , quindi sul lato destro della finestra fai clic sull'icona del CD e seleziona scegli un file disco CD/DVD virtuale . Vai a dove si trova l'immagine ISO di CentOS 7 è stato scaricato, selezionalo e fai clic su Apri . Quindi faremo clic su Ok per chiudere le Impostazioni menu.

4. Installazione di CentOS 7 nella macchina virtuale

Infine, siamo in grado di installare il nostro CentOS 7 nella macchina virtuale che abbiamo appena creato. Il processo di installazione è piuttosto semplice ed è facile come l'installazione come al solito e la maggior parte delle opzioni predefinite possono essere utilizzate. Puoi anche seguire http://linoxide.com/how-tos/centos-7-step-by-step-screenshots/ per la parte di installazione del sistema operativo.

Ora, dopo aver installato il sistema operativo, configureremo il sistema operativo in modo che funzioni con Vagrant.

Ora apriremo una console all'interno della macchina virtuale e faremo il login come root.

Poiché eth0 è disabilitato per impostazione predefinita, dovremo ripristinarlo.

# ifup eth0

Ora installeremo alcuni pacchetti aggiuntivi come openssh, nano, ntp, curl dal repository usando yum package manager.

# yum install -y openssh-clients nano wget ntp curl

Quindi, consentiremo l'avvio del servizio ntpd ad ogni avvio.

# chkconfig ntpd on

Successivamente, vorremo impostare l'ora dal server time.nist.gov.

# service ntpd stop

# ntpdate time.nist.gov

# service ntpd start

Ora consentiremo l'avvio del servizio ssh all'avvio in modo da poter accedere alla macchina non appena si avvia.

chkconfig sshd on

Disabiliteremo i servizi iptables e ip45.88.66tables dall'avvio all'avvio.

# chkconfig iptables off

# chkconfig ip6tables off

Quindi imposteremo SELinux su permissivo.

# sed -i -e 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config

Successivamente, vorremo aggiungere un nuovo utente chiamato vagrant in modo da poterlo utilizzare usando vagrant.

# useradd vagrant

Ora creeremo la cartella .ssh dell'utente vagabondo in modo che le chiavi ssh e le informazioni siano archiviate lì.

# mkdir -m 0700 -p /home/vagrant/.ssh

Se vogliamo utilizzare la nostra chiave pubblica/privata SSH, vorremo creare una chiave pubblica/privata SSH sulla nostra workstation e copiare la chiave pubblica in /home/vagrant/.ssh/authorized_keys sulla macchina virtuale.

Altrimenti, se vogliamo usare la chiave pubblica/privata SSH fornita da Vagrant, possiamo semplicemente eseguire il seguente comando:

# curl https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub >> /home/vagrant/.ssh/authorized_keys

Ora, vorremo modificare le autorizzazioni sui file authorized_keys per essere più restrittivi con chmod

# chmod 600 /home/vagrant/.ssh/authorized_keys

Quindi, correggeremo la proprietà della cartella .ssh per utenti e gruppi vagabondi utilizzando chown.

# chown -R vagrant:vagrant /home/vagrant/.ssh

Ora, ecco il principale cambiamento importante che dobbiamo fare, dovremo commentare requiretty in /etc/sudoers. Questa modifica è importante perché consente a ssh di inviare comandi remoti utilizzando sudo. In caso contrario, Vagrant non sarà in grado di applicare le modifiche all'avvio. Questo può essere fatto eseguendo il comando seguente.

# sed -i 's/^\(Defaults.*requiretty\)/#\1/' /etc/sudoers

Consentiremo all'utente vagrant di usare sudo senza inserire una password eseguendo il comando seguente.

# echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

Quindi apriremo /etc/sysconfig/network-scripts/ifcfg-eth0 e fallo sembrare esattamente come il seguente

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp

Ora rimuovi le regole di rete persistenti udev file usando il comando rm.

# rm -f /etc/udev/rules.d/70-persistent-net.rules

Ora vorremo ripulire yum usando il seguente comando.

# yum clean all

Ora elimineremo il tmp directory e puliscila.

# rm -rf /tmp/*

Quindi ripulisci gli ultimi registri degli utenti che hanno effettuato l'accesso.

# rm -f /var/log/wtmp /var/log/btmp

Ripuliremo la cronologia.

# history -c

Successivamente, spegneremo la macchina virtuale.

# shutdown -h now

Una volta che la macchina virtuale è stata arrestata, faremo clic su Impostazioni per la macchina virtuale. Quindi vai a Archiviazione scheda, quindi seleziona IDE controller e fare clic sul quadrato verde con l'icona meno rossa nell'angolo in basso a destra della sezione Albero di archiviazione della scheda Archiviazione. Quindi fai clic su OK per chiudere il menu Impostazioni. Successivamente, andremo a creare la Vagrant Box.

5. Creazione di Vagrant Box

Assicurati il ​​valore della base l'opzione della riga di comando corrisponde al nome della macchina virtuale in VirtualBox:

# vagrant package --output centos-7.box --base centos-7

6. Aggiunta della Casella Vagrant

Aggiungi la Casella Vagrant appena creata a Vagrant (questo copierà la Casella Vagrant in un'altra posizione):

# vagrant box add centos-7 centos-7.box

Inoltre, la macchina virtuale VirtualBox può essere eliminata.

7. Creazione di un progetto Vagrant e configurazione di Vagrantfile

I progetti Vagrant possono essere creati quanti ne vogliamo. Ciascuno conterrà diversi Vagrantfiles che contengono la definizione del Progetto Vagrant e diverse macchine virtuali. Per farlo, creeremo una directory denominata vagabondo nella directory linoxide per memorizzare il Vagrantfile e le macchine virtuali associative.

# mkdir -p ~/linoxide/vagrant

# cd ~/linoxide/vagrant

Ora creeremo il Vagrantfile come segue.

# vagrant init centos-7

Ora abbiamo un Vagrantfile che punta al box di base centos-7 che abbiamo appena creato sopra. Se stiamo usando la nostra chiave privata/pubblica SSH e non la chiave privata/pubblica SSH fornita da Vagrant, dobbiamo dire a Vagrantfile dove trovare la chiave privata SSH. Per fare ciò, dovremo aggiungere quanto segue all'interno del Vagrantfile che abbiamo appena creato.

# nano Vagrantfile

config.ssh.private_key_path = "~/.ssh/id_rsa"

Se non vuoi condividere cartelle tra la tua macchina virtuale e il sistema operativo host, disabilitalo semplicemente aggiungendo quanto segue al tuo Vagrantfile.

config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true

8. Iniziare Vagrant

Ora, poiché abbiamo eseguito completamente tutti i passaggi precedenti, vorremo finalmente eseguire la nostra prima macchina virtuale vagabonda fuori dagli schemi. Per eseguire la nostra macchina virtuale vagabonda con sistema operativo centos 7, dovremo solo eseguire il comando seguente.

# vagrant up

Se tutto è andato alla grande come previsto, dovremmo essere in grado di vedere la nostra casella vagabondo in esecuzione mentre eseguiamo il comando di stato vagabondo.

# vagrant status

Se vogliamo entrare nel vagrant box e vogliamo controllare la macchina virtuale, eseguiremo semplicemente vagrant ssh

# vagrant ssh

Dopo che abbiamo finito con il nostro lavoro e vogliamo eliminare o distruggere la nostra scatola virtuale vagabonda in esecuzione, semplicemente possiamo eseguire vagrant destroy che la distruggerà.

# vagrant destroy

Conclusione

Infine, abbiamo creato la nostra scatola Vagrant con CentOS 7 da Scratch usando Virtual Box. Questo articolo ci semplifica la creazione di una scatola Vagrant se hai già un file immagine centos 7 o un DVD o una macchina virtuale e non vuoi scaricare l'immagine della scatola centos 7 per vagrant. Questo metodo ti aiuta anche a creare Vagrant box se non hai una connessione Internet disponibile in quel momento ma hai un'immagine o un DVD di CentOS 7.

Il tutorial sopra è davvero una guida semplice e facile da fare per creare il nostro box base vagrant centos 7 da zero, possiamo persino creare box vagrant di qualsiasi distribuzione Linux con passaggi simili sopra. Quindi, se hai domande, commenti, feedback, scrivi nella casella dei commenti qui sotto e facci sapere quali elementi devono essere aggiunti o migliorati.


Cent OS
  1. Come configurare l'host virtuale Nginx (blocchi server) su CentOS 7

  2. Come installare VirtualBox su CentOS 7

  3. Come creare un repository YUM locale su CentOS 7 / RHEL 7 utilizzando DVD

  4. Come installare Oracle VirtualBox su Oracle Linux/Fedora/RHEL/CentOS usando YUM

  5. Come creare un utente sudo su CentOS 7

Come installare VirtualBox su CentOS 7 / RHEL 7

Come installare CentOS 6 su VirtualBox su Windows

Come creare una macchina virtuale con Vagrant e VirtualBox

Come creare un utente Sudo su CentOS

Come installare Textpattern su CentOS 7

Come installare PhpStorm su CentOS 8