Ansible入門|インフラエンジニアのためのPlaybook設計と冪等性のある設定自動化

現場実践|Ansible自動化入門
Ansible入門|インフラエンジニアのためのPlaybook設計と冪等性のある設定自動化
「サーバー設定を手動でやっていて属人化している」「同じ設定を複数台に適用したい」——Ansibleを使ったサーバー設定の自動化・Playbookの書き方・冪等性の概念・AWSとの統合を解説します。
💡 Ansibleは「コードでサーバーの状態を定義する」ツール。エージェントレスでSSH経由で動作するためインストールが簡単で、インフラエンジニアが最初に学ぶ設定管理ツールとして最適です。
1. Ansibleの基本概念
Inventory
管理対象のホスト(サーバー)の一覧。IPアドレスまたはホスト名を記載。グループ化して「webサーバー」「DBサーバー」を別々に管理できる。
Playbook
実行したい設定作業をYAML形式で記述したファイル。「nginxをインストールする」「設定ファイルを配置する」等の手順を順番に定義する。
Module
Ansibleに組み込まれた実行単位。ansible.builtin.apt・ansible.builtin.service・ansible.builtin.template等のモジュールを使って設定を適用する。
冪等性(Idempotency)
「何度実行しても同じ結果になる」性質。既にnginxがインストールされている場合は「changed」でなく「ok」を返す。
2. Playbookの基本的な書き方
---
- name: Webサーバーのセットアップ
hosts: webservers
become: yes # sudo権限で実行
vars:
nginx_port: 80
tasks:
- name: Nginxをインストール
ansible.builtin.apt:
name: nginx
state: present
update_cache: yes
- name: Nginxを起動して自動起動を有効化
ansible.builtin.service:
name: nginx
state: started
enabled: yes
- name: カスタム設定ファイルを配置
ansible.builtin.template:
src: nginx.conf.j2
dest: /etc/nginx/nginx.conf
notify: Restart nginx
handlers:
- name: Restart nginx
ansible.builtin.service:
name: nginx
state: restarted3. AWS Dynamic Inventoryの活用
AWS EC2インスタンスを対象にする場合、Ansibleのaws_ec2プラグインを使ってEC2インスタンスを動的にInventoryとして取得できます。「productionタグが付いたEC2全台にPlaybookを適用する」という操作が実現します。インスタンスが追加・削除された場合も自動でInventoryに反映されます。
📌 この記事のポイント
- Ansibleはエージェントレス・SSH接続・YAML記述でサーバー設定を自動化する。冪等性で何度実行しても安全
- Playbook=hosts(対象)+tasks(実行内容)+handlers(通知時の処理)の構造で設定作業を記述する
- aws_ec2プラグインのDynamic Inventoryでタグベースにターゲットを動的取得してAWSに適用できる
キャリアの疑問、一緒に解決しませんか?
Infra Academyでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
資格取得後のキャリアに、AI活用という選択肢を
資格取得の先に現場でのIT効率化を任される場面が増えます。職場のルーティン業務にAIをどう組み込めるか、無料のセルフ診断(3問・約1分)でヒントが得られます。
この記事を読んでいる方へのおすすめ:
【編集・制作ポリシー】
本記事はRoute Bloom編集部が公式ドキュメント・技術仕様書の一次情報をもとに作成しています。ITインフラ・技術情報は急速に変化するため、実装前に最新の公式ドキュメントをご確認ください。情報の正確性には万全を期していますが、最新情報は各公式サイトをご確認ください。
本記事はRoute Bloom編集部が公式ドキュメント・技術仕様書の一次情報をもとに作成しています。ITインフラ・技術情報は急速に変化するため、実装前に最新の公式ドキュメントをご確認ください。情報の正確性には万全を期していますが、最新情報は各公式サイトをご確認ください。
【編集・制作ポリシー】
本記事はRoute Bloom編集部が各ベンダー公式ドキュメント・エンジニア監修をもとに作成しています。インフラ・クラウド構築は環境により異なります。本番環境への適用前に必ずテストを実施してください。情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。
本記事はRoute Bloom編集部が各ベンダー公式ドキュメント・エンジニア監修をもとに作成しています。インフラ・クラウド構築は環境により異なります。本番環境への適用前に必ずテストを実施してください。情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。
【編集・制作ポリシー】
本記事はRoute Bloom編集部が各ベンダー・技術標準の公式ドキュメントをもとに作成しています。 インフラ・クラウド技術に関する最終判断は実際の環境・バージョンで検証のうえ実施してください。 情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。
本記事はRoute Bloom編集部が各ベンダー・技術標準の公式ドキュメントをもとに作成しています。 インフラ・クラウド技術に関する最終判断は実際の環境・バージョンで検証のうえ実施してください。 情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。
この記事で学んだスキルをさらに深めたい方へ
インフラのコード化(IaC)を体系的に学べる技術書です。Terraformの実践的な使い方を習得しましょう。
Amazonアソシエイトプログラムを利用しています。
ABOUT ME




