シェフのレシピを取り入れて (AWS EC2 で使用されたと言う)、Rackspace または SoftLayer で動作するように自動的に変更する方法はありますか?
編集:これが存在しない場合、ゼロから作成するのはどれくらい難しいと思いますか?
シェフのレシピを取り入れて (AWS EC2 で使用されたと言う)、Rackspace または SoftLayer で動作するように自動的に変更する方法はありますか?
編集:これが存在しない場合、ゼロから作成するのはどれくらい難しいと思いますか?
何をしたいかによっては、さまざまなクラウド ベンダーの Knife プラグインをチェックする価値もあります。
乾杯EJK
それはクックブックに大きく依存しています。クックブックの大部分は、ベアメタル、AWS、ラックスペースなどで実行されているかどうかをまったく認識していません。通常、クックブックは、実行しているオペレーティング システムにはるかに関心があります。
それで彼らは、もっと軽いメモで、あなたが数百ドルと一緒に私に送ってくれれば、私はそれらを「自動的に」(そして変更せずに)あなたに送り返すと答えます。
より深刻な点として、どのクックブックを念頭に置いているかをお知らせいただければ、より良いアイデアを提供できます.
何かを行うように設計されたクックブック (たとえば、php のインストールなど)は、具体的には Rackspace、AWS などに対してそれを行う方法を知りません。その部分は、独自のインストールにあります。
簡単に説明すると、クックブックはシェフに何をしたいかを伝え、シェフはそれを行うためにナイフ (knife-rackspace、リストから 1 つを選択する) を使用します。
シェフのドキュメントをもう少し読んで、自分のシステムにchefDKをインストールし、いくつかのチュートリアルを実行してください。すぐにコツがつかめます。ここで使用している .kitchen.yml ファイルは、同じクックブックを使用して、2 つの異なるプロバイダーを使用して 2 つの異なる OS プラットフォームを構築します。決定要因は、どのサーバーを構築するように指示するかです: "kitchen converge xxxx" ここで、xxxx は構築したいサーバーの名前です。サーバーがクラウドにあるか、ローカルマシンの仮想ボックスインスタンスにあるかに関係なく、同じクックブックを使用してサーバーを構築します。
いいえ、プロバイダー間で動作させるためにフープジャンプを行う必要はありませんでした。いくつかの条件付きロジックを使用して、適切なパッケージ マネージャー クックブック (たとえば、CentOS の yum と Ubuntu の apt) を含める必要がありましたが、それは、特定のレシピを変更/変換するのではなく、どのクックブックを手元に置いておくかを決定するためのものです。
基本的なルールは、特定のクラウド プロバイダー (Rackspace、AWS など) に固有のものがクックブックに含まれている場合です。それは間違っています。クックブックは不可知論的であるべきです。そうでない場合は、別のものを見つけてください。そのクックブックには、まだ見つけていない他の問題がある可能性があるからです。