科学の箱

科学・IT・登山の話題

IT

vagrantをubuntuで利用するときのメモ

投稿日:2013年11月8日 更新日:

Vagratnt

Vagrantはオープンソースで開発された仮想環境を効率良くインストールするためのツール。プラットフォームとしてはWindows, Linux, Macがある。対象とうなる仮想化ツールはVirtual Box, VMWare, AWSが利用できる。またChefやpuppyと連動してソフトウェアの構成も自動化できる。Rubyで記述されている。

インストール

dpkgのインストール

Vagrantで提供されているインストーラの中でubuntuと相性が良いのがDebianパッケージである。

Debianパッケージを利用するためにdpkg(Debian パッケージツール)をインストールしておく。同時にVirtual Boxもインストールする。

sudo apt-get install dpkg-dev virtualbox-dkms

インストーラを取得する。

wget http://files.vagrantup.com/packages/a40522f5fabccb9ddabad03d836e120ff5d14093/vagrant_1.3.5_i686.deb

取得したらパッケージをインストールする。

 sudo dpkg -i vagrant_1.3.5_i686.deb
未選択パッケージ vagrant を選択しています。
(データベースを読み込んでいます ... 現在 198056 個のファイルとディレクトリがインストールされています。)
(vagrant_1.3.5_i686.deb から) vagrant を展開しています...
vagrant (1:1.3.5) を設定しています ...

Vagrantのインストールはこれで完了。Virtual Boxも設定してしまう。

 sudo dpkg-reconfigure virtualbox-dkms

ボックス

Vagrantは仮想マシンを構築するときにスクラッチからインストールはしない。ボックスと呼ばれる基礎となるテンプレートを利用する。このテンプレートを利用するとユーザーは余計な構成に時間をかけることもないし、ディスクなどのリソースも無駄に消費しない。

ボックスの取得

ボックスはVagrantの公式サイトから利用できるもの、その他有志により作られたものがインターネット上にある。まずVagrantの公式サイトからubuntu用のボックスを取得する。

vagrant box add lucid32 http://files.vagrantup.com/lucid32.box

上記コマンドにでubuntuのlucidバージョン用のボックスを取得できる。

ボックスが正しくインストールされたかを確認する。

vagrant box list
lucid32

Vagrant公式サイト以外にvagrantbox.esでは有志がボックスを持ち寄って共有している。

vagrant boxでは利用できるコマンドは vagrant -hで表示される。たとえば必要がなくなったボックスはvagrant removeで削除できる。

vagrant box -h
Usage: vagrant box <command> [<args>]

Available subcommands:
     add
     list
     remove
     repackage

仮想マシン

ボックスから仮想マシンを作成する。ボックスはテンプレートして扱われるので複数の仮想マシンをひとつのボックスからインストールできる。Vagrantではひとつの仮想マシンをプロジェクトして取り扱うが実態としては個別の独立したフォルダになる。

初期化

仮想マシンを作成するためはまずフォルダを作成する。

mkdir ubu01
cd ubu01

次にフォルダでVagrantの初期化を実行しVagrantfileを作成する。

vagrant init 
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

Vagrantでは仮想マシンの構成をVagrantfileと呼ばれるファイルに記述する。Vagrantfileの記述を直して、先ほどダウンロードしたボックスを利用する。

下記の行を見つける。

config.vm.box = "base"

lucid32を利用するにように変更する。

config.vm.box = "lucid32"

次にネットワークを設定する。ホストから接続できるようにホストオンリーでプライベートアドレスを振る。下記の行を探しコメントを取り除く

# config.vm.network :hostonly, "192.168.33.10"

設定はこれで完了したので仮想マシンを生成する。

vagrant up

ステータスを確認すると起動していることがわかる。

vagrant status
Current VM states:

default                  running

仮想マシンが起動しているのでSSHで接続する。

vagrant ssh
Linux lucid32 2.6.32-38-generic 
#83-Ubuntu SMP Wed Jan 4 11:13:04 UTC 2012 i686 GNU/LinuxUbuntu 10.04.4 LTS

仮想マシンに対する操作

仮想マシンに対する操作はvagrantコマンドで一元管理されている。対象となるプロジェクトのフォルダに移動してvagrantコマンドを適切なオプションで実行する。下記は仮想マシンに対して停止、再起動等をするときのオプションである。

  • halt
  • resume
  • suspend
  • destroy

サーバーの初期設定

ウェッブサーバーとして利用するために下記ページと同じ設定をする。

ubuntuの初期インストールしておくアプリケーション

ホストからhtmlを取得してみる。正しく取得できた。

wget http://192.168.33.10
--2013-11-08 17:04:35--  
http://192.168.33.10/192.168.33.10:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 177 `index.html' に保存中
100%[================================================>] 
177  -.-K/s   時間 0s

メタ情報

inarticle



メタ情報

inarticle



-IT
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Networkerにおける削除ができないNotificationの例

下記のNotificationはNetworkerでは削除できない。 Bootstrap Backup Failure NetWorker Daemons Not Running Resource F …

no image

Amazon Work Spaceのトラブルシューティング

AWSトラブルシューティングの基本 まずはAWSのヘルスチェックから。 画面右端にある”Network”をクリックする。[Enabled Advanced Logging]のチ …

no image

TypeError: $(…).live is not a function

ドットインストールでRuby on Rails 3.0を勉強していたところ、一か所どうしてもエラーが消えない部分があった。 メッセージは.liveが関数ではないといっているのだがタイポも見つからず、ド …

no image

gitでsshをテストする

ssh -T git@github.com -i .\.ssh\id_rsa_user01 Related posts:Cisco Prime Infrastructure Training on y …

no image

Dynamipisのインストール

Dynamipsを利用するときに2つのバージョンを利用できる。 Dynagen GNS3 DynagenはCiscoシミュレータであるDymapis本体が含まれている。それに対してGNS3にはシミュレ …

2013年11月
« 10月   12月 »
 123
45678910
11121314151617
18192021222324
252627282930  

side bar top



最近の投稿

アーカイブ

カテゴリー