nikkie-ftnextの日記

イベントレポートや読書メモを発信

読書ログ | 『Ansible実践ガイド 第3版』2-1、インベントリやプレイブックがAnsibleのアーキテクチャにどう位置づくかを知る

はじめに

じゃあ、レッスン行こー、ゆりこー! さん!!1 nikkieです。

Ansibleに関するインプットのログです。
先日の記事のトピックを考える中で読みました。

目次

『Ansible実践ガイド 第3版』

積ん読していた『Ansible実践ガイド』。

「Ansibleの基本を知りたいな〜」と今回手に取りました。

なお、最新版(第4版)が今年6月に出ています(私は未読です)

2-1 Ansible のアーキテクチャ

第2章「Ansible の基礎」にまず手が伸びました。
2-1「Ansible のアーキテクチャ」で、Ansibleの概念がどう結び付くかが示されました。
いままで見えていなかったAnsibleという巨大ライブラリの全体感がついに見えたという感覚です。

2つのノード

  • コントロールノード
    • Ansibleをインストール
    • プレイブックを実行
  • ターゲットノード

プレイブックの実行

ansible-playbook -i <インベントリ> <プレイブック>

Ansibleがやっていること

  1. コントロールノードでプレイブックをPythonコードに変換
  2. コントロールノードからターゲットノードにPythonコードを転送
  3. ターゲットノードでPythonコードを実行
    • なので、ターゲットノードにはPythonの環境が必要

プレイブック(YAML)をPythonに変換していたんですね!

Ansibleの内部コンポーネント

モジュール

  • 再利用可能な処理ユニット

プレイブック

  • 処理フローを定義
    • タスクと呼ばれる
    • モジュールの呼び出し
    • YAMLtasksセクション)
  • タスクを実行したいターゲットノード(グループ)と結びつける
    • YAMLhostsセクション)

インベントリ

  • ターゲットノードの接続情報を記載したファイル
    • (グループにして扱える)

Ansible CLI

  • いつも使っているansible-playbookコマンド
  • ansibleコマンドもある
    • 1つのモジュールを指定
サポートコマンド

こんなのあるんだ〜。便利そうなものをメモ

  • ansible-console(REPLらしく、試行錯誤捗りそう)
  • ansible-doc(モジュールの詳細を確認しやすそう)
  • ansible-inventory(上で引いたエントリで使って便利でした)

終わりに

『Ansible実践ガイド 第3版』2-1の読書ログでした。
いや〜、日本語で包括的な知識を得られる書籍は偉大ですね。
Ansibleはこれまで英語ドキュメント中心に参照し、知識が断片的でした。
今回補完された感覚です!

続く3章は「インベントリの基礎」「プレイブックの基礎」と続きます。
引き続き読んでいきたいな〜


  1. ミリアニ3話より