Ansible(アンシブル) Part 1 概要と特徴

インフラチームのTakeshiです。

サーバー構成管理ツール Ansibleについて、数回に渡って掲載していきます。

今回はAnsibleの概要と特徴について紹介します。


WEBサービスのシステムを構築する多くの場合は、「決まった手順」通りに「操作を進める」ことで、サーバー設定は誰でも同じようにできます。

サーバー設定の自動化

「決まった手順」と「操作を進める」をコード化することで、インフラ業務の多くを自動化できます。また、サーバー設定のテンプレートを作成しておくことで、0からサーバーを構築する際に便利です。

サーバー設定の変更履歴

また、コード化したものをGit管理することで、サーバー設定の変更履歴が取れるようになります。



構成管理ツールはPappetやChefなどいろいろありますが、Ansibleを選んだ理由は次の通りです。

エージェントレス

Ansibleは、管理対象となるサーバーにエージェントやプラグインなどをインストールする必要がなく、PythonとSSH接続が可能であれば管理できます。


SSHのパスフレーズ付きの鍵認証アカウントを用意して、Ansibleホストでssh-addでパスフレーズを予め通しておくと便利です。

また、プロジェクトのセキュリティポリシーにもよりますが、管理対象のサーバーアカウントをsudoのNOPASSWD: ALLをもつグループに入れることで、実行時のパスワード入力を省くことができます。パスワード入力を補助する他のやり方もAnsibleで用意されていますが、個人的にはパスワードを持つアカウントは、アカウントのセキュリティ状態を常に心配しなければならないので避けたいです。

Unixアカウントはパスワードロックがかかっている状態であるべきです。


YAML

Ansibleでは、YAML形式の定義ファイルを使用します。特にYAMLを書いたことがないので選定理由にはなりませんが、一般的な形式なので、覚えやすいかと思います。


冪等性(べきとうせい)

他の管理ツールと同様、繰り返し実行しても同じ状態が保たれます。一度インストールしたものが次回もインストール試行されてエラーとなったり、設定ファイルが更新されることはありません。


まとめ

Ansibleを導入するにあたり、既に運用中の管理対象サーバーがあり、最初はApache設定だけとか、PHP設定だけ、アプリケーションサーバーから管理するなど、管理対象サーバーに手を加えることなく段階的にAnsible管理下に加えていけました。

Ansibleの優位性は他のツールを抜きん出るものではありませんが、シンプルな仕組みがゆえに導入のハードルが高くないところが良いと思います。

次回はAnsibleのインストールと導入の準備について紹介したいと思います。


知識・ノウハウ共有
7件

関連記事

新卒採用2021 どんな未来を望むか?どんな人生を願うか?

松下 耕三 株式会社口コミ広場

これから就職し、未来を担う学生の皆さん。想像してみてください。〜これから生きていく未来を〜人生100年時代、きっと多くの人は2100年あたりまで生きることになるでしょう。皆さんに子供ができたら、その子はそ...

ビジョンはどこからやってくるのか?

松下 耕三 株式会社口コミ広場

個人や組織が最高の状態で生きられる環境を創る、これがPando事業の一つの命題です。そのカギを握るのが、人や組織が持つビジョンです。だからPandoにはわざわざビジョンを書くページが用意されています。その人...

Pandoが実現する世界

松下 耕三 株式会社口コミ広場

便利さの代償に失ったもの昨日、採用選考の面接でこんな話をしました。お越し頂いた方のこの場に至るまでをお聞きしましたが、人材エージェントが送付してくる募集要項の中から興味の持てそうなところを選び、そ...

新卒採用2019 素晴らしい時代の創造者となれ

松下 耕三 株式会社口コミ広場

私達の世界はこれから20年、50年、100年後、どのようなものになっているでしょうか? AIという言葉を聞かない日は無いほどに、人工知能、それを備えたロボットが人の代わりに働き、人は労働の必要が無くなる、と...