Vagrantの道
原文は Mitchell Hashimoto により に公開されました。 このブログを購読する
Vagrantをインストールする前や、その仕組みを見る前に、実際の作業環境におけるVagrantの大まかなワークフローを理解しておくことが重要です。これらの原則は総称して「Vagrantの道」と呼ばれています。以下はVagrant: Up and Runningからの抜粋です。
Vagrantがある世界では、開発者はバージョン管理から任意のリポジトリをチェックアウトしてvagrant upを実行するだけで、一切の手作業なしに完全に動作する開発環境を手に入れることができます。開発者はその後も自分のマシンで、使い慣れたエディタやブラウザ、その他のツールを使って作業を続けます。開発者にとってVagrantの存在は透過的で、意識する必要すらありません。Vagrantは、一貫性と安定性を備えた開発環境を作り出す縁の下の力持ちなのです。
システム運用エンジニアも同様に、自分のマシン上の使い慣れたエディタやツールでシステム自動化のスクリプトに取り組みます。スクリプトをテストする準備ができたら、vagrant upを実行するだけで、本番環境と一致する完全なサンドボックスが用意され、実際のシナリオやシステム自動化をテストできる状態になります。
運用エンジニアが開発した自動化の仕組みは、本番環境だけでなく開発でも使われます。vagrant upを実行するたびに、開発者は本番環境のセットアップに使われるのと同じスクリプトによって完全にプロビジョニングされた開発環境を手に入れることができます。こうして開発者は、本番環境を可能な限り忠実に再現した環境で作業できるのです。
もし何か問題が起きたり、クリーンな状態からやり直したい場合には、開発者も運用エンジニアも+vagrant destroy+を実行すれば、その開発環境の痕跡をマシンからすべて削除できます。そして再びvagrant upを実行すれば、瞬く間に同一の完全に動作する開発環境が再作成されます。
一日の終わりには、Vagrantで開発環境をサスペンド、ハルト、あるいはデストロイして、システム全体をクリーンに保つことができます。もう、止め忘れたサーバープロセスが残って貴重なコンピュートリソースを無駄にすることもありません。準備ができれば、vagrant upでわずか数分で使える開発環境がすぐに戻ってきます。
何より素晴らしいのは、この知識があらゆるプロジェクトで通用することです。プロジェクトAでもプロジェクトBでも、会社Aでも会社Bでも、Vagrantの道に従う限りワークフローはまったく同じです。その結果、生産性は大いに高まり、「自分のマシンでは動くのに」というバグは姿を消します。
もちろん、Vagrantを使うためにVagrantの道の原則すべてを厳密に守る必要はありません。Vagrantは汎用的なツールであり、環境に合わせて自由に形を変えることができます。しかし、Vagrantの背後にあるより大きなビジョンを理解しておくことは重要です。
記事をランダムに読む
コメント
ログインしてコメントする