Help us understand the problem. What is going on with this article?

シンプルなプロビジョニングツールAnsibleを試してみる

More than 5 years have passed since last update.

YuZakuroです。

この記事はPython Advent Calendar 2014の9日目の記事です。

概要

Ansibleとは

AnsibleというのはPythonで書かれたプロビジョニングツールです。有名なものにChefがありますが、その仲間だと思ってもらえるとわかりやすいのではないでしょうか。

なぜAnsibleを使うのか

Chefは非常に強力で、人気があり、それ故にドキュメントも豊富です。しかし、強力であるが故にわかりづらく、学習コストが高くなってしまいます。Chefは学習コストが高くて使いにくいツールだと言いたいわけではありません。Chefは非常に良いツールなのです。

対してAnsibleはChefほど強力ではありません。しかし、Chefよりもずっとシンプルで簡単です。

Ansibleの良い所

  • 非常にシンプルです。

  • SSHを使用するため、管理されるサーバーにAnsibleをインストールする必要がありません

  • 自作モジュールを作る際には、入出力フォーマットにさえ従えば好きな言語で作成できます。

サンプル

Ansibleでは、Playbook(chefでのレシピのようなもの)をyamlを使用して以下のように書くことができます。

- hosts: test-server
  sudo: yes
  tasks:
    - name: apacheのインストール
      yum: name=httpd state=installed

    - name: apacheを実行
      service: name=httpd state=running enabled=yes

まとめ

世の中には高性能で便利なツールがたくさんありますが、その機能が全部いると必要なことはほとんどありません。

Chefは非常に良いツールですが、Ansibleでも十分な場合が多いとおもいます。ぜひ一度使ってみてください。

参考

fe2o3
ソフトウェア開発、教育、情報セキュリティ事業を通して、人とコンピュータのよい関係をつくる企業です。CTF大会開催のトータルソリューション「CTFKit」といった自社開発や、スタートアップに特化した受託開発など事業展開しています。
https://fe2o3.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away