現場実践|Ansible応用

Ansibleの応用実践|Roleによる構成管理・InventoryのグループとVaultの活用

「Ansibleの基礎はわかったけど大規模環境への適用がわからない」——AnsibleのRole構造・InventoryのグループとホストVars・Vaultによる秘密情報管理を解説します。

読了目安:約18分更新日:2026年3月

💡 Ansibleを「大規模・本番運用」で使うためにはRoleによるコードの分割・Inventoryの整理・Vaultによる秘密情報管理の3点が必須です。

この記事を書いた人
現役ITエンジニア・IT講師(経験14年)
CCNA・CCNP 取得LPIC-1 保有SES現場を複数経験

Ansible環境の設計・実装を多数担当してきた立場から応用テクニックを解説します。

1. Roleによる構成の分割

まず、PlaybookがTaskの集合体であるのに対し、Roleはそれをより構造化した再利用可能なパッケージです。以下のディレクトリ構造でRoleを定義します。

roles/
  nginx/
    tasks/
      main.yml      # タスク定義
    handlers/
      main.yml      # ハンドラー(サービス再起動等)
    templates/
      nginx.conf.j2 # Jinja2テンプレート
    vars/
      main.yml      # 変数定義
    defaults/
      main.yml      # デフォルト変数

2. Inventoryのグループ管理

[webservers]
web01.example.com
web02.example.com

[dbservers]
db01.example.com

[production:children]
webservers
dbservers

# グループ変数はgroup_vars/webservers.ymlに記述
# ホスト変数はhost_vars/web01.example.com.ymlに記述

3. Ansible Vaultで秘密情報を管理

# 暗号化ファイルの作成
ansible-vault create group_vars/all/secret.yml

# 既存ファイルの暗号化
ansible-vault encrypt group_vars/all/secret.yml

# 暗号化ファイルを含めてPlaybookを実行
ansible-playbook site.yml --ask-vault-pass

# vault_password_fileを使う場合
ansible-playbook site.yml --vault-password-file .vault_pass

4. 本番運用のベストプラクティス

  • –check(ドライラン)で事前確認:本番実行前にansible-playbook site.yml –checkで変更内容を確認する
  • –limitで対象ホストを絞る:全台一括適用の前に1台だけ–limit web01で試す
  • タスクにtagsを付ける:–tags nginxで特定のRoleだけ実行できるようにする
📌 この記事のポイント
  • Roleによる構成分割でAnsibleコードが再利用可能になり大規模環境の管理が容易になる
  • group_vars・host_varsでインベントリとの変数管理を分離することが保守性向上の鍵
  • Ansible Vaultで秘密情報を暗号化管理することでGitに安全にコミットできる

キャリアの疑問、一緒に解決しませんか?

Infra Academyでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。

※Ansibleのバージョンにより構文が異なります。公式ドキュメントもご参照ください。

資格取得後のキャリアに、AI活用という選択肢を

資格取得の先に現場でのIT効率化を任される場面が増えます。職場のルーティン業務にAIをどう組み込めるか、無料のセルフ診断(3問・約1分)でヒントが得られます。

AI業務効率化 無料診断へ →

この記事を読んでいる方へのおすすめ:

【編集・制作ポリシー】
本記事はRoute Bloom編集部が公式ドキュメント・技術仕様書の一次情報をもとに作成しています。ITインフラ・技術情報は急速に変化するため、実装前に最新の公式ドキュメントをご確認ください。情報の正確性には万全を期していますが、最新情報は各公式サイトをご確認ください。
【編集・制作ポリシー】
本記事はRoute Bloom編集部が各ベンダー公式ドキュメント・エンジニア監修をもとに作成しています。インフラ・クラウド構築は環境により異なります。本番環境への適用前に必ずテストを実施してください。情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。
【編集・制作ポリシー】
本記事はRoute Bloom編集部が各ベンダー・技術標準の公式ドキュメントをもとに作成しています。 インフラ・クラウド技術に関する最終判断は実際の環境・バージョンで検証のうえ実施してください。 情報の正確性には万全を期していますが、最新情報は各公式ドキュメントをご確認ください。

この記事で学んだスキルをさらに深めたい方へ

インフラのコード化(IaC)を体系的に学べる技術書です。Terraformの実践的な使い方を習得しましょう。

Amazonアソシエイトプログラムを利用しています。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営