VagrantとAnsible

仕事でサーバ構築をすることになりました。 APIサーバとして、Tomcat上でwebアプリケーションを動かさないといけない。

用意してもらったサーバに直接SSHで入ってセットアップしてもいいけど、 手探りでやったら不要なファイルとかできたらやだなあって感じですね。

また、もう負荷分散のため、2台作らないといけないから、同じことやるの面倒なんですね。。。

そういうときに便利なのがVagrantとAnsibleです。

Vagrant

Vagrantは、ローカルPCでVirtualBoxなどを利用した仮想環境を楽に作ってくれるやつです。 普通に開発環境を作ろうとすると

  • OSインストール
  • 基本設定(ネットワーク設定、ssh接続設定、セキュリティ設定など)

をする必要がありますが、Vagrantだと設定ファイルを書いて、一発実行です。

Ansible

Ansibleはコマンド再生機です。 Vagrantで基本設定まで作ってもらった後に、JavaやらTomcatやらをダウンロードするコマンドや、各種設定を行うコマンドを実行することができます。 これもプレイブックと呼ばれるファイルで定義できます。

vagrantもansibleのファイルで定義できるため、gitなどのソース管理も可能です。ぜひ使ってみてください。