私は、約3つの異なるクラスの多くの同一ノードをデプロイすることを部分的に必要とする新しいプロジェクトを開始しようとしています。
- データは、ノードのMongoDBのシャードのインスタンスを実行します、。
- アプリケーションノード。Rubyon Railsアプリケーションと古いASP.NET MVCアプリケーションのインスタンスを実行します。
- 処理ノード。アプリケーションノードによって要求されたジョブを実行します。
すべてのノードはUbuntu 10.04のインスタンスで実行されますが、異なるパッケージがインストールされます。
私は以前のプロジェクトのChefにある程度精通していますが、自分を専門家とは考えていません。デューデリジェンスを行うために、私は代替の可能性を調査しています。社内には、Puppetを長年使用している人がたくさんいます。彼らは私に見てみるように勧めています。
しかし、私は両方の選択肢を評価するのに苦労しています。ChefとPuppetは、パッケージ、リソース、属性など、多くの同じドメイン用語を共有しており、同じ問題に対して異なるアプローチをとることに由来する共通の歴史を持っています。ある意味で、それらは非常に似ています。しかし、私が見つけた比較情報の多くは、この記事のように、少し時代遅れです。
今日このプロジェクトを開始する場合、構成管理にChefとPuppetのどちらを使用すべきかを判断するために、どのような質問を自問しますか?(注:「ChefまたはPuppetを使用する必要がありますか?」という質問には答えたくありません。)