Linux
Vagrant
VirtualBox
Ansible
サーバー構築

【連載01】104.Vagrantを利用する為のインストールと設定(Linux側【VirtualBox内】)

More than 3 years have passed since last update.

当記事はケーススタディの連載となっています。目次は【こちら】です。

最新のソースコードは【GitHub】で公開中です。


前提条件

VirtualBoxに仮想Linuxがインストールされていること。

仮想Linuxに関しては、「Windows上のVirtualBoxにVagrantのベースとなる最小構成CentOS7を作成」を参照。

仮想Linuxを起動し、Linuxのコンソールにて以下に続く最低限の設定を行う。

image

VirtualBoxのネットワークはデフォルト「NAT」で、この設定の場合はホストOS(この場合Windows)から

ゲストOS(この場合Virtualbox内のLinux)へのアクセスはできない。

ただしゲストOSからホストOSのネットワークを経由してインターネットにはアクセスが可能。

VirtualBoxのネットワーク設定の手順に関しては、

VIRTUALIMENTさんのサイト

を参照ください。

最低限の設定後、Windows SSHクライアント(今回はPuttyとSupperPutty)から設定可能にする。

image


Vagrantが使えるようになるまでの初期設定


01.EPELパッケージをインストール

cd /tmp

wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum localinstall ./epel-release-latest-7.noarch.rpm


02.wget、gcc、等のインストール

yum -y install wget

yum -y install bzip2
yum -y install gcc
yum -y install kernel-devel-`uname -r`
yum -y install dkms


03.vagrantユーザーの追加

(パスワードは任意。ここでは「vagrant123」)

useradd vagrant

passwd vagrant vagrant123


04.SSH公開鍵で接続可能な状態に設定

SSH公開鍵用のDirectoryを作成し鍵を配置する。

mkdir /home/vagrant/.ssh

chmod 700 /home/vagrant/.ssh
wget --no-check-certificate "https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub" -O /home/vagrant/.ssh/authorized_keys
chmod 600 /home/vagrant/.ssh/authorized_keys
chown -R vagrant /home/vagrant/.ssh


05.SUDOの設定

vagrantユーザーはsudoでパスワードを求められない設定にする。

visudo


  • 「Defaults requiretty」の部分をコメントアウトし、TTY実行無しに変更。

  • vagrantをsudo時にパスワード不要に設定


sudo

#Defaults     requiretty

vagrant ALL=(ALL) NOPASSWD: ALL



  • SUDOの設定の確認

su - vagrant

sudo cd /root


06.VirtualBox Guest Additionsをインストール


  • wgetでダウンロードする。

cd /tmp

wget http://download.virtualbox.org/virtualbox/5.0.12/VBoxGuestAdditions_5.0.12.iso


  • ISOファイルをマウントしインストーラ実行

mount -t iso9660 -o loop  /tmp/VBoxGuestAdditions_5.0.12.iso /media

/media/VBoxGuestAdditions.run
umount /media/VBoxGuestAdditions


  • /tmpディレクトリ内のファイルを削除

rm -rf /tmp/*


07.grubの起動待ち時間設定

vi /etc/default/grub


  • 「GRUB_TIMEOUT=5」の部分を1秒に設定


/etc/default/grub

GRUB_TIMEOUT=1



  • grub.cfgを更新

grub2-mkconfig -o /boot/grub2/grub.cfg


08.UDevによるネットワークルールを破棄

ln -s -f /dev/null /etc/udev/rules.d/70-persistent-net.rules


09.仮想Linuxのシャットダウン

halt

次回は「VirtualBox内のLinuxイメージをVagrantBoxファイルに変換する」について。

連載の目次は【こちら】です。