vagrantとchefの組み合わせについてはいろいろ記事がありますが、saltについてはなさそうなので、簡単にまとめてみます。
#公式サイト
Vagrant: http://www.vagrantup.com/
Salt: http://docs.saltstack.com/index.html
この記事の内容
この記事では主にSaltを使った環境構築をメインで記載します。
Vagrantについては様々な良記事がありますので、そちらをご参照ください。
いくつかの記事に分けてVagrant + Saltでの開発環境構築をやってみたいと思います。
まず手始めにマスターなし、ミニオン1つだけのVMを立ててみます。
Vagrant-Saltのインストール
実はVagrantにはSalt用のプラグインがありますので、これを使っちゃいましょう。
https://github.com/saltstack/salty-vagrant
↑のページの「Masterless (Quick Start)」を一通りこなせば環境構築は終了です... では流石に味気ないので以下に手順を記載していきます。(Vagrantは入っていることが前提で進めます)
- VMを立ち上げるフォルダに移動します。(ここではsalt-sampleフォルダとします)
cd salt-sample
- salty-vagrantをインストールします
vagrant plugin install vagrant-salt
- vagrantにboxを追加します
vagrant box add precise64 http://files.vagrantup.com/precise64.box
- salt-sample以下にVagrantfileを作成します。
Vagrant.configure("2") do |config|
## 使用するBoxを指定します。
config.vm.box = "precise64"
## salt関連のファイルを同期するためのフォルダを指定します。
config.vm.synced_folder "salt/roots/", "/srv/salt/"
## Use all the defaults:
config.vm.provision :salt do |salt|
## ミニオンの設定ファイルのパスを指定します。
salt.minion_config = "salt/minion"
## 実行時にstate.highstateを実行するための設定です。
salt.run_highstate = true
end
end
※highstateは設定ファイル通りにPCをセッティングする命令だと思ってください。
- 設定ファイルを配置するためのディレクトリを作っておきます。
mkdir salt
mkdir salt/roots
- salt-sample/salt以下にminionファイルを作成します
salt-sample/salt/minionに以下の内容をコピーしてください。
file_client: local
- vagrantを起動します。
vagrant up
まとめ
ひとまずこれでミニオン1台のみの立ち上げが完了しました。
現状では設定ファイルが一切ないので、起動してもSaltが入っただけのすっぴんのVMが立ち上がります。
次は実際にソフトウェアをインストールしていきます。