😀

プロビジョニングツールの比較

2020/09/10に公開

はじめに

プロビジョニングツールであるAnsible, Chef, Saltを比較した。

Ansibleとは

以下のサイトが大いに参考になる。

Ansibleとは何か 構成管理ツールの目的〜Ansible導入まで最速で理解する

検索トレンドの比較

1年間の検索件数の時系列トレンド

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">Google トレンドで「Ansible, Chef, Salt (ソフトウェア) - すべての国、過去 12 か月間」の 人気度の動向 を見る - <a href="https://t.co/nc2moxYxmU">https://t.co/nc2moxYxmU</a></p>— kannkyo (@kannkyoshi) <a href="https://twitter.com/kannkyoshi/status/1304062469359333376?ref_src=twsrc^tfw">September 10, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

1年間の検索件数の国別トレンド

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">Google トレンドで「Ansible, Chef, Salt (ソフトウェア) - すべての国、過去 12 か月間」の 地域で比較した内訳 を見る - <a href="https://t.co/IECGtpIjEQ">https://t.co/IECGtpIjEQ</a></p>— kannkyo (@kannkyoshi) <a href="https://twitter.com/kannkyoshi/status/1304062507758174208?ref_src=twsrc^tfw">September 10, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Ansibleは、Chef, Salt に比して圧倒的に検索件数が多い。

非機能要件の比較

非機能要件比較表を以下に示す。

Metrics Ansible Chef Salt
可用性 :ballot_box_with_check: :ballot_box_with_check: :ballot_box_with_check:
導入容易性 Easy Not very easy Not very easy
管理容易性 Easy Not very easy Easy
スケーラビリティ Highly Scalable Highly Scalable Highly Scalable
構成管理言語 YAML(Python) DSL(Ruby) YAML(Python)
相互運用性 High High High
価格(upto 100 nodes) $10,000 $13,700 $15,000(approx.)

出典 Chef vs Puppet vs Ansible vs Saltstack: Which Works Best For You?

全ての指標でAnsibleはChef,Saltを同等かそれ以上である。

特にChefはRubyベースのDSLというところがツライ。

Python, YMLはDockerやAIで慣れているが、RubyはもはやRedmineくらいでしか使わない。

人気度の比較

1.png
2.png

出典: https://stackshare.io/stackups/ansible-vs-chef-vs-salt

全ての指標でAnsibleが勝っている。

クックブックorロールの公開件数

記事作成時点(2020/09/10)でのクックブックorロールの公開件数は、以下の通り。

  • 25,246 Ansible Roles
  • 4,061 (=公式3,949 + コミュニティ112) Chef Cookbooks
  •  0 Salt
    

Ansibleが圧倒的な件数を有する。

その他

  • AnsibleはRedHatが商用化。エンタープライズ用途にも安心感がある。
  • Chefは公式クックブックが多く、老舗の安定感がある。
  • Saltはどうかなぁ。AnsibleのYMLスタイルの簡便さとPuppetの機能性の高さのいいとこ取りをしているようだが、まだ時期尚早かな。数年後に急成長してるかもしれないが、今は保留。

結論

全ての指標に置いて、Ansible一択。

Discussion