- 会員限定
- 2020/11/27 掲載
Ansibleとは何か?超入門、Playbookはなぜ有用? 構成管理ツールで使われる3つの理由と活用方法
連載:サーバ自動化の勘所
そもそも構成管理ツールとは?
構成管理ツールとは、簡潔に言うと「機器のあるべき姿(構成)をファイルで管理する」ためのツールである。もう少しかみ砕くと、機器のあるべき姿(たとえば、マシン名やIPアドレスなど)をあらかじめファイルに定義しておくことで、その定義内容と差分があるときは、すべてあるべき姿へと設定(変更)してくれる便利なツールである。
日々の日常生活に例えると、みなさんお持ちのスマートフォンを買い替えた時をイメージしていただきたい。スマートフォンを買い替えた時、まずみなさんは何を行うだろうか。ほとんどの方は「アカウント/本体設定」や「アプリの導入/設定」など旧スマートフォンと同じ状態になるように作業を行うことだろう。
この旧スマートフォンの状態(本体設定や導入アプリなど)を定義ファイルで管理し、新しいスマートフォンに対して1つの命令を実行するだけで旧スマートフォンと同じ状態にしてくれるものこそが「構成管理ツール」なのである。
▼この記事を動画・音声でご覧いただけます▼
構成管理ツールを活用する4つのメリット
つまり、今まで手動で1つ1つ設定(変更)を行っていた作業が不要となり、自動で何度行っても同じ状態に構成されるのである。この何度行っても、同じ状態(品質)になることを「冪等性(べきとうせい)」という。「冪等性」とは、対象がどんな状態であっても、誰が実行しても、何回実行しても、必ず同じ状態(品質)になることを保証するものである。この「冪等性」こそが構成管理ツールの真髄であり、必要不可欠な考え方である。
以下に構成管理ツールを導入した際のメリットをまとめる。
- 工数削減:
複数台へ一括設定が可能。手動オペレーションのタイムロス削減 - 運用業務の標準化:
運用手順書への反映漏れ。定義ファイル管理による属人化防止 - 品質の向上:
人的ミスの低減。同品質の大量生産が可能 - セキュリティの向上:
直接ログインする機会を最小化
Ansibleとは何か?なぜよく使われているのか
では構成管理ツールの中で最も有名なソリューションとなっている「Ansible」はどういう存在なのであろうか。構成管理ツールの歴史を振り返ると、2005年にPuppet、2009年にChefがリリースされており、Ansibleは2012年にリリースされている。そのため、他の製品に比べると後発の部類に入り、他の製品の弱点をうまく解消しているツールとも言われている。
Ansibleは元々Ansible社で開発されていたが、2015年にレッドハットがAnsibleを買収し開発を引き継いでいる。この買収は当時も大きな話題を呼び、Ansibleへの注目度が高まるきっかけになった。実際、今ではOSS(オープンソースソフトウェア)で最も有名な構成管理ツールと言えるだろう。
以下は構成管理ツールの中でも代表的な3つの製品の概要をまとめた表である。
# | 項目 | Ansible | Chef | Puppet |
1 | リリース年 | 2012年 | 2009年 | 2005年 |
2 | 会社 | レッドハット(注1) | Chef | Puppet |
3 | 開発言語 | Python | Ruby | Ruby |
4 | 書式 | yaml | Ruby DSL | 独自DSL |
5 | エージェント | 不要(注2) | 必要 | 必要 |
【次ページ】Ansibleが優れている3つのポイント、Playbookのサンプルコード
関連コンテンツ
関連コンテンツ
PR
PR
PR