GNU/Linux >> Znalost Linux >  >> Cent OS

Jak vytvořit Vagrant CentOS 7 pomocí VirtualBoxu

Vagrant je úžasný nástroj vyvinutý společností HashiCorp pro vytváření a konfiguraci lehkých, reprodukovatelných a přenosných vývojových prostředí postavených na standardních průmyslových technologiích a řízených jediným konzistentním pracovním postupem, který pomáhá maximalizovat produktivitu a flexibilitu.

Je to jako obal vyšší úrovně kolem virtualizačního softwaru, jako je VirtualBox, VMware, KVM a Linux Containers (LXC), a kolem softwaru pro správu konfigurace, jako je Ansible, Chef, Salt a Puppet. Vagrant velmi usnadňuje roztočení místních virtuálních strojů pomocí VirtualBoxu. Využívá virtualizační prostředí a nasazuje virtuální stroje dle výběru a spravuje uživatele, aby měl přímý přístup a spravoval více virtuálních strojů nad ním.

V tomto tutoriálu se naučíme, jak pomocí VirtualBoxu vytvořit úplně nový základní box CentOS 7.

1. Instalace VirtualBox

Nejprve si stáhneme nejnovější verzi tj. virtuální box 4.3.28 pro virtualizaci vagranta. Stáhneme si ho z oficiální stránky stahování VirtualBox pomocí našeho webového prohlížeče nebo můžeme použít wget pomocí terminálu. Zde na našem hostitelském počítači používáme Ubuntu 14.04, takže si stáhneme balíček debian pro 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

Po stažení souboru debian jej nainstalujeme pomocí správce balíčků dpkg.

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

Poté, abychom opravili požadované závislosti, spustíme níže uvedený příkaz.

# apt-get -f install

2. Instalace Vagrant

Protože na našem hostitelském počítači používáme Ubuntu 14.04, stáhneme si nyní nejnovější verzi vagrant, tj. 1.7.2 z naší oficiální stránky pro stahování Vagrant pomocí wget nebo pomocí našeho oblíbeného webového prohlížeče.

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

Po stažení jej nyní nainstalujeme pomocí správce balíčků 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. Příprava virtuálního stroje

Stahování souboru obrázku CentOS

Protože v tomto tutoriálu děláme vše od nuly, vytvoříme si náš virtuální stroj vlastním nastavením a konfigurací ve virtuálním boxu. Než tedy začneme s konfigurací virtuálního počítače, budeme si muset stáhnout náš vlastní centos 7 iso soubor. Můžeme si jej stáhnout z http://mirror.centos.org/centos/7/isos/x86_64/ výběrem zrcadla poblíž našeho místa a požadovaného souboru obrázku. Zde si stáhneme minimální iso CentOS 7. Nyní, když je náš soubor iso image připraven k použití, budeme nyní pokračovat ve vytváření virtuálního stroje ve virtuální krabici.

Vytvoření virtuálního stroje

Nyní spustíme virtuální box, který jsme právě nainstalovali do našeho hostitelského operačního systému. Poté klikneme na Nový Knoflík. Poté pojmenujeme virtuální počítač jako centos-7 poté vybereme Linux pod Typ.

A vyberte Red Hat (64 bit) jako verze. V části Velikost paměti , ponecháme RAM při 512 MB jako tulák má schopnost to změnit.

Nyní vybereme možnost Vytvořit virtuální pevný disk nyní a klikněte na Vytvořit . V části Umístění souboru ponecháme výchozí název . Poté nastavte velikost souboru na pevném disku na 40,00 GB a jako Typ souboru pevného disku vyberte VDI (VirtualBox Disk Image). .

Poté vybereme Dynamicky přiděleno a klikněte na Vytvořit . Hurá. úspěšně jsme vytvořili virtuální stroj v našem virtuálním boxu.

Další konfigurace virtuálního počítače

Poté pro další konfiguraci klikneme na název virtuálního počítače a poté na možnost Nastavení . Poté přejděte do Úložiště a klikněte na Vyprázdnit přímo pod Controller IDE a poté na pravé straně okna klikněte na ikonu CD a vyberte možnost vybrat soubor virtuálního disku CD/DVD . Přejděte tam, kde je iso obraz CentOS 7 byl stažen, vyberte jej a klikněte na Otevřít . Potom budeme chtít kliknout na OK zavřete Nastavení menu.

4. Instalace CentOS 7 ve virtuálním počítači

Konečně jsme před instalací našeho CentOS 7 do virtuálního počítače, který jsme právě vytvořili. Proces instalace je velmi jednoduchý a je snadný jako obvykle a lze použít většinu výchozích možností. Můžete také sledovat http://linoxide.com/how-tos/centos-7-step-by-step-screenshots/ pro instalační část operačního systému.

Nyní, po instalaci operačního systému, nyní nakonfigurujeme operační systém pro práci s Vagrantem.

Nyní otevřeme konzolu ve virtuálním počítači a přihlásíme se jako root.

Protože eth0 je ve výchozím nastavení zakázáno, budeme to muset vynahradit.

# ifup eth0

Nyní nainstalujeme některé další balíčky jako openssh, nano, ntp, curl z úložiště pomocí správce balíčků yum.

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

Poté povolíme spuštění služby ntpd při každém spuštění.

# chkconfig ntpd on

Poté budeme chtít nastavit čas ze serveru time.nist.gov.

# service ntpd stop

# ntpdate time.nist.gov

# service ntpd start

Nyní povolíme spuštění služby ssh při bootování, abychom mohli ssh vstoupit do počítače, jakmile se spustí.

chkconfig sshd on

Zakážeme spuštění služeb iptables a ip45.55.88.66tables při spouštění.

# chkconfig iptables off

# chkconfig ip6tables off

Potom SELinux nastavíme na permisivní.

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

Poté budeme chtít přidat nového uživatele s názvem vagrant, abychom jej mohli používat pomocí vagrant.

# useradd vagrant

Nyní vytvoříme složku .ssh tuláka uživatele, aby tam byly uloženy ssh klíče a informace.

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

Pokud chceme použít náš vlastní veřejný/soukromý klíč SSH, budeme chtít vytvořit veřejný/soukromý klíč SSH na naší pracovní stanici a zkopírovat veřejný klíč do /home/vagrant/.ssh/authorized_keys na virtuálním počítači.

V opačném případě, pokud chceme použít veřejný/soukromý klíč SSH poskytovaný Vagrantem, můžeme jednoduše spustit následující příkaz:

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

Nyní budeme chtít změnit oprávnění k souborům author_keys tak, aby byla restriktivnější pomocí chmod

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

Poté opravíme vlastnictví složky .ssh na tulákového uživatele a skupinu pomocí chown.

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

Nyní je zde hlavní důležitá změna, kterou musíme udělat, budeme potřebovat komentář v /etc/sudoers. Tato změna je důležitá, protože umožňuje ssh odesílat vzdálené příkazy pomocí sudo. Pokud to neuděláte, vagrant nebude moci použít změny při spuštění. To lze provést spuštěním následujícího příkazu.

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

Umožníme uživateli vagrant používat sudo bez zadání hesla spuštěním následujícího příkazu.

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

Poté otevřeme /etc/sysconfig/network-scripts/ifcfg-eth0 a aby to vypadalo přesně jako následující

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

Nyní odstraňte pravidla udev persistent net soubor pomocí příkazu rm.

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

Nyní budeme chtít vyčistit yum pomocí následujícího příkazu.

# yum clean all

Nyní smažeme tmp adresář a udělejte jej čistý.

# rm -rf /tmp/*

Poté vyčistěte protokoly posledních přihlášených uživatelů.

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

Vyčistíme historii.

# history -c

Poté virtuální počítač vypneme.

# shutdown -h now

Jakmile se virtuální počítač vypne, klikneme na Nastavení pro virtuální počítač. Poté přejděte do Úložiště a poté vyberte Controller IDE a klikněte na zelený čtverec s červenou ikonou mínus v pravém dolním rohu sekce Strom úložiště na kartě Úložiště. Poté klikněte na OK zavřete nabídku Nastavení. Poté přejdeme k vytvoření Vagrant Box.

5. Vytvoření Vagrant Box

Zkontrolujte hodnotu základu přepínač příkazového řádku odpovídá názvu virtuálního počítače ve VirtualBox:

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

6. Přidání Vagrant Box

Přidejte nově vytvořený Vagrant Box do vagrant (tímto zkopírujete Vagrant Box na jiné místo):

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

Kromě toho lze virtuální stroj VirtualBox odstranit.

7. Vytvoření projektu Vagrant a konfigurace Vagrantfile

Projektů Vagrant může být vytvořeno tolik, kolik chceme. Každý bude obsahovat různé soubory Vagrant, které obsahují definici projektu Vagrant a různé virtuální stroje. Za tímto účelem vytvoříme adresář s názvem vagrant v adresáři linoxide k uložení Vagrantfile a asociativních virtuálních strojů.

# mkdir -p ~/linoxide/vagrant

# cd ~/linoxide/vagrant

Nyní vytvoříme Vagrantfile následovně.

# vagrant init centos-7

Nyní máme Vagrantfile, který ukazuje na základní krabici centos-7, kterou jsme právě vytvořili výše. Pokud používáme náš vlastní soukromý/veřejný klíč SSH, a nikoli soukromý/veřejný klíč SSH poskytovaný Vagrantem, musíme Vagrantfile sdělit, kde najde soukromý klíč SSH. Abychom tak učinili, budeme muset do souboru Vagrantfile, který jsme právě vytvořili, přidat následující.

# nano Vagrantfile

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

Pokud nechcete sdílet složky mezi virtuálním počítačem a hostitelským operačním systémem, jednoduše to deaktivujte přidáním následujícího do souboru Vagrantfile.

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

8. Spuštění Vagrant

Nyní, když jsme kompletně provedli všechny výše uvedené kroky, budeme chtít konečně spustit náš první tulákový virtuální stroj hned po vybalení. Chcete-li spustit náš tulákový virtuální stroj s operačním systémem centos 7, stačí spustit následující příkaz.

# vagrant up

Pokud by vše probíhalo tak, jak se očekávalo, měli bychom být schopni vidět náš box běžící vagrant při spuštění příkazu stavu vagrant.

# vagrant status

Pokud chceme ssh do vagrant boxu a chceme ovládat virtuální stroj, jednoduše spustíme vagrant ssh

# vagrant ssh

Poté, co skončíme s prací a budeme chtít smazat nebo zničit naši běžící tuláckou virtuální schránku, jednoduše můžeme spustit tulák zničit, která to zničí.

# vagrant destroy

Závěr

Nakonec jsme vytvořili náš Vagrant box se systémem CentOS 7 od nuly pomocí Virtual Box. Tento článek nám usnadňuje vytvoření krabice Vagrant, pokud již máte soubor s obrázkem centos 7 nebo DVD nebo virtuální počítač a nechcete stahovat obrázek krabice centos 7 pro vagrant. Tato metoda vám také pomůže vytvořit Vagrant box, pokud v té době nemáte k dispozici připojení k internetu, ale máte obraz nebo DVD CentOS 7.

Výše uvedený tutoriál je opravdu jednoduchým a snadno proveditelným průvodcem pro vytvoření naší základní krabice Centos 7 vagrant od nuly, můžeme dokonce vytvořit krabici tulák z jakékoli linuxové distribuce pomocí podobných kroků výše. Takže pokud máte nějaké dotazy, komentáře nebo zpětnou vazbu, napište nám do pole komentářů níže a dejte nám vědět, co je potřeba přidat nebo vylepšit.


Cent OS
  1. Jak vytvořit místní úložiště YUM na CentOS 7 / RHEL 7 pomocí DVD

  2. Jak nainstalovat Oracle VirtualBox na Oracle Linux/Fedora/RHEL/CentOS pomocí YUM

  3. Jak vytvořit uživatele sudo na CentOS 7

  1. Jak nastavit virtuálního hostitele Nginx (bloky serveru) na CentOS 7

  2. Jak nainstalovat VirtualBox na CentOS 7

  3. Jak nainstalovat Vagrant na CentOS 7

  1. Jak nainstalovat VirtualBox na CentOS 8 Linux

  2. Jak vytvořit uživatele Sudo na CentOS

  3. Jak nainstalovat VirtualBox na CentOS 7