今朝投稿していた『ゼロから作るDeep Learning』の読書記録と併せて、そういやこっちのテーマも取り組んでおきたいなと思っていたのでした。
それが構成管理ツール『Ansible』です。
ちょうどタイムライン上に絶好の参考書籍の情報が流れていたので、この際なので(交互に)まとめてやっちゃおう!という事でKindle版をポチー。早速第1章に取り組んでみました。当エントリはその読書記録となります。
Ansible実践ガイド (impress top gear)
- 作者: 北山晋吾
- 出版社/メーカー: インプレス
- 発売日: 2016/12/15
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
第1章:Ansibleの概要
- 公式サイト:Ansible is Simple IT Automation
- Ansibleは『オペレーション自動化の側面(機能):狭義』としての構成管理を取り扱う(※サービス全体を提供する構成管理プロセス:広義では無い)
- ビジネスアジリティに於いて求められている要素の1つがDevOpsであり、DevOpsは組織文化の変更を伴うKAIZEN活動である
- Infrastructure as Code:インフラリソースもアプリ同様、コードを元に自動化しようという仕組み。CI(継続的インテグレーション)のノウハウをインフラにも取り入れた事が最大の特徴、功績。
- Infrastructure as Codeを実践する事で様々なメリットが得られる。
- Infrastructure as Codeの対象領域は大きく以下3つ。
- オーケストレーション(リソース集合体の連携サービスを提供)
- システムの構成管理
- ブートストラッピング(OSイメージからの起動設定)
- Infrastructure as Codeは企業の自動化に対する成熟度と併せて適用すべき範囲を特定していくと良い
- Ansible
- Python製の構成管理自動化ツール
- ChefやPuppet等よりも後発、導入コストはそれらよりも低い。支持も高いものがある。
- Ansible特徴:
- 設定ファイルの可読性が高い
- エージェントレス
- マルチレイヤ対応
- モジュールが豊富
- 冪等性を担保
- 注意点も幾つかある
- 設計思想:ゴールは『シンプルさと使いやすさ』。従来の構成ツール(ChefやPuppet)は冪等性を主眼に置いている部分もあり、この部分で思想が異なる。
- Push型アーキテクチャ:ChefやPuppetはPull型
- Ansibleのユースケース:『オーケストレーション』『システム構成管理』『ブートストラッピング』の多方面で適用可能。
まとめ
という訳で第1章読了。Ansibleが目指すところ、従来のツール(ChefやPuppet等)との比較などがとても分かりやすく解説されていてスムーズに読む事が出来ました。第1章に関しては概要説明に留まっていたのでコード記述は無し。第2章以降(2-2)でインストールが始まるようなので楽しみにしたいと思います。