mac上に1分で壊したり作ったりできる仮想マシン環境を作る


ubuntuサーバを構築する際にシェルを流すのが毎回だと大変なので、Infrastructure as Codeで有名なchefの開発環境を用意した時の覚書です。macでサーバ構築のためのコード(キッチンとかレポジトリと言う)を書いて、それをセットアップ対象のubuntuサーバに対して実行できるようにします。この投稿では、rubyのやchefのインストールと、vagrantの準備までを書いています。

マシンを買い替えた時の為の覚書ですね。

xcode-select --install
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

brew update
brew install rbenv ruby-build git readline

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile

# インストール可能なrubyのバージョンを調べて、最新版を入れる。
rbenv install -l
rbenv install 2.1.2
rbenv global 2.1.2

# バージョンやインストール先を確認しておく。
ruby -v
which ruby
which gem

gem install chef

vagrantでテスト用のUbuntuServer14.04を手っ取り早く構築できるようにする。

vagrantをgemからインストールしたらダウンロードサイトから新しいものをダウンロードしろとメッセージが出たので、Oracle VirtualBoxVagrantを各々ブラウザでダウンロードし、普通にdmgファイルからインストールしました。

Vagrantbox.esからUbuntu14.04のイメージをダウンロード、登録する。

Vagrantbox.esから、お好みのイメージをダウンロードし、OSイメージとして利用できるようにします。今回は『Ubuntu Server Precise 14.04 amd64』をダウンロードさせてもらいました。

vagrant box add base https://oss-binaries.phusionpassenger.com/vagrant/boxes/latest/ubuntu-14.04-amd64-vbox.box
mkdir -p ~/chef/vagrant
cd ~/chef/vagrant
vagrant init

# 必要に応じて下記のファイルを編集する。
# 編集しなくても良いが、ネットワーク設定だけはいじっておいた方がapt-get等が使えて便利
vi Vagrantfile

ローカルネットワークの設定に合わせる。DHCPでローカルネットワークのIPを取得して、ネット接続出来れば良いので、コメントアウトしてあった下記を有効にする。

config.vm.network "public_network"

ネットワーク設定を編集したら、起動させる。ブリッジさせるインターフェースを聞かれた場合には、DHCPが使えるネットワークに接続しているアダプタを選ぶ。

vagrant up
# 停止
vagrant halt

# 削除
vagrant destroy

saharaでOSイメージのロールバックが出来る様にする。

vmwareで言う所のスナップショットのような物でしょうか。

vagrant plugin  install sahara

saharaの使い方。基本的にvmwareのスナップショット機能と同じようなイメージで使えば良さそうです。

# sandboxモードを有効にして、巻き戻し地点であると明示する
vagrant sandbox on

# sandbox on した箇所まで巻き戻す
vagrant sandbox rollback

# 状態のマージ
vagrant sandbox commit

# sandboxモードを解除する
vagrant sandbox off
タグ付けされた , , . ブックマークする へのパーマリンク.

コメントを残す

メールアドレスが公開されることはありません。