彼らは同じ問題を解決していますか?または、2つの異なる一連の問題に対するものですか?もしそうなら、私は浮浪者を使うほうがいいのですが、そして、jujuを使うほうが良いのですか?
彼らは同じ問題を解決していますか?または、2つの異なる一連の問題に対するものですか?もしそうなら、私は浮浪者を使うほうがいいのですが、そして、jujuを使うほうが良いのですか?
回答:
クイックバージョン:
vagrantは、virtualboxインスタンスを操作するためのツールです。これは通常、開発中(Macの場合)に、最終的な本番(Linux)環境に近い仮想マシンにアプリをテスト展開するために使用されます。それはあなたが好きな方法でそのような仮想環境を作成するためのハンドラーのカスタマイズ可能な(ルビー)スタックを持っています。Vagrantは、仮想環境をプログラムで管理するための強力なツールであり、継続的な統合スタイルの開発手法のあらゆる種類の「ローカル」バリエーションを提供します。MacでUbuntu VMを実行するために最もよく使用されますが、さまざまなプラットフォームで実行され、さまざまなターゲットオペレーティングシステムを展開します。Afaik、それは、基礎となる「プロバイダー」としてのvirtualboxでのみ機能します。
jujuは、ec2クラウド、オープンスタッククラウド、lxc VM、MaaSサーバーなど、さまざまな基盤となるプロバイダーを使用してサービスを調整するツールです。「仮想開発VMの代わりにlxcコンテナーを使用する」「ローカル開発」ストーリーをvagrantと共有しますが、それだけが実際に重複しています。実際、jujuがローカル環境の仮想ボックスコンテナーをクラウドやlxcイメージをドライブするのと同じように簡単にドライブできるように、juju用に作成されたvagrantプロバイダーが欲しいです。それはぴったりです!また、jujuはその価値の多くを、そのまますぐにスピンアップできるチャーム/サービスのセットから導き出しますが、vagrantは本質的に下位レベルのローカルコンテナープロバイダーです。
実際、JujuにはVagrantボックスが用意されているため、ユーザーはVM内からローカルプロバイダーをテストできます。
同じスクリプトをクラウドインスタンスやバグラントボックスにデプロイするために使用できるように、バグラントの周りでデプロイメントスクリプトを「統合」する取り組みが行われていることに注意してください。これらは、主に浮浪者固有の一時的なものであり、率直に言って、jujuのようなツールの必要性を強調しています。