私は(限られた)経験からPuppetを知っており、構成管理ではAnsibleへの強い傾向があることに気づきました。
一方では、Ansibleはエージェントを必要としないことを理解していますssh
。これは、Ansibleがをインテリジェントに使用するためです。
一方、これらはPuppetについて気に入った機能です。
- REST APIを介したシステム全体の構成状態と履歴(PuppetDB)へのアクセス
- 上書きされたファイルのバックアップを保持する機能(filebuckets)
- Hiera構成の一部を暗号化する機能(
.eyaml
)
これらの中で、PuppetDBは私にとって最も重要で便利なようです(他のツールとの統合など)。したがって、私の質問は次のとおりです。Ansibleには、PuppetDBに似たものがありますか。たとえば、「ホストxにインストールされているパッケージは何か」と尋ねられるAPIを提供するコンポーネントですか。または「どのホストにパッケージyがインストールされていますか?」
(この質問はStackOverflowから移行されました)。
UPDATE Puppetの重大な欠点それまでの私の経験:エージェントを必要とするという事実はそれほどではありません(私が見たところ、AnsibleのPythonの使用は、Pythonインタープリターの形式で一種のエージェントを導入します;-)。そのエージェントがroot
唯一かつ常に行動することを望んでいること。
root
、サーバークラスターへのアクセス権はないが、Ansibleを使用して大規模なWebアプリケーションを管理できる人を知っています。さらに、としてログインしないSAがありますがroot
、sudo
代わりに使用頻度が高くなります。
root
か?SAがログインして手動で処理を行う必要がなくなるため、SAが実行できるすべての処理を実行できる必要があります。