Ansible徹底入門は"今"のAnsibleの使い方を教えてくれる再入門書籍

Ansible徹底入門 クラウド時代の新しい構成管理の実現

Ansible徹底入門 クラウド時代の新しい構成管理の実現

「Ansible徹底入門 クラウド時代の新しい構成管理の実現」を読了しました。

わたしのAnsibleスペック

とりあえず自分のスペックを。

  • 1.5か1.6から使い始めています。
  • 現在は1.9をメインに使っています。
  • ChefやPuppetはほとんど利用していません。
  • 受託開発をやっているせいか、結構な数のPlaybookを書いてきました。

“今"のAnsibleを教えてくれる

Ansible自体は知っていますし、実際に業務で使っていますが、本書を読んで感じたのは「自分の使い方は古い」ということでした。

古い書き方

私はLAMP環境がメインなのですが、次のプロジェクトに移るとき、過去のRoleを参考にします(「Roleの共有はコードが複雑になるので無理」派です)。

そのせいで書き方が古いままで、また、使い方にクセがあるのだと思います。

今の書き方

例えば、パラメータを = でつなげるのは今は推奨されない書き方だというのも本書のコラムで知りました。block~rescue 構文も使ったことがありませんでした。

もう十分に枯れたと勝手に思っていました。

しかしそんなことはありませんでした。

まさに今のAnsibleを教えてくれます。

チュートリアルとして最適

“徹底入門"というだけあって、Ansibleという構成管理ツールの必要性からしっかり教えてくれます。

1章から4章まで通読すれば、まず実践レベルで使えるようになるのではないでしょうか。5章をチュートリアル的に実施したらもう十分です。

正しくAnsibleの使い方を教えてくれるチュートリアルとして、今の時点でベストだと思います。

会社でも来年度の新人のために1冊購入しました。

次の使い方を模索できる

もともとはAnsibleは「サーバ」に対しての構成管理ツールでしたが、本書を読んでみるとどんどんその幅を広げていることがわかります。

Infrastructure as Codeの時代に、適材適所でツールを利用するのも1つですが、Ansibleに統一することを検討するというのも良いのかもしれません。

6〜8章でOpenStack、AWS、Azureのモジュールの解説やチュートリアルもあるので、本書でまず検討することができます。

特に7章のCFnとの連携、ローリングデプロイのチュートリアルは実践的といえるのではないでしょうか。

Dockerとの連携

Dockerをやっと開発環境の一部として使い始めました。

9章でAnsible Containerの使い方が紹介されています。

Ansibleを開発環境でも本番環境でも使っている自分としては、まずはDockerを開発環境でWith Ansibleで活用して、本番環境でAnsibleだけを利用するという現実的なアプローチが取れそうで期待が高まります。

個人的にはDockerfileを書かなくて生きていけそうなので嬉しいです。

テスト

10章でAnsibleのPlaybookのテスト手法が紹介されています。

個人的にはAnsibleで管理されているサーバにさらにテストを書くのは、(主にコスト面で)懐疑的です。

しかし、本書で紹介されていたのはそれではなくてPlaybook自体のテストでした。

そういえば、チマチマ育てていった結果、いざ順番に実行したらコケるようになったPlaybookがあったなあ、と思い出しました。。。

というわけで

1系のAnsibleに慣れ親しんだ人も、今からAnsibleを使ってみようという人にもオススメです。

最後に

kaz29さん、ご恵投いただきありがとうございました!

Ansibleへの再入門ができた気がします!


久しぶりにansible.elに手を入れてみるかな。。。