ansible-automation について
Ansibleによるインフラのプロビジョニング、構成管理、アプリケーションデプロイを自動化するスキルです。複数サーバーの運用に向けて、Playbookやロール、動的インベントリーを扱います。
主な機能
- 01インフラのプロビジョニングと構成管理
- 02アプリケーションデプロイの自動化
- 03Playbookと再利用可能なロール
- 04動的インベントリー管理
- 05ローリング更新とヘルスチェック
活用シーン
- 01複数サーバーの構成管理
- 02インフラのパッチ適用とアプリのデプロイ
- 03クラウドインスタンスのプロビジョニング
- 04コンプライアンスやデータベース管理の自動化
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill ansible-automationインストール後、Claude Code で/ansible-automationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/ansible-deployment-script.mdconfiguration-template.mdinventory-and-variables.mdplaybook-structure-and-best-practices.mdscripts/validate-config.shtemplates/config-starter.yaml詳細
Ansible 自動化
目次
概要
Ansible のプレイブック、ロール、動的インベントリ管理を使用して、複数のサーバーにわたるインフラストラクチャのプロビジョニング、構成管理、アプリケーションのデプロイを自動化します。
使用する場面
- 構成管理
- アプリケーションのデプロイ
- インフラストラクチャへのパッチ適用と更新
- 複数サーバーのオーケストレーション
- クラウドインスタンスのプロビジョニング
- コンテナ管理
- データベース管理
- セキュリティコンプライアンスの自動化
クイックスタート
最小限の動作する例:
# site.yml - Main playbook
---
- name: Deploy application stack
hosts: all
gather_facts: yes
serial: 1 # Rolling deployment
pre_tasks:
- name: Display host information
debug:
var: inventory_hostname
tags: [always]
roles:
- common
- docker
- application
post_tasks:
- name: Verify deployment
uri:
url: "http://{{ inventory_hostname }}:8080/health"
status_code: 200
retries: 3
delay: 10
// ... (see reference guides for full implementation)
リファレンスガイド
詳細な実装については、references/ ディレクトリを参照してください。
| ガイド | 内容 |
|---|---|
| プレイブックの構造とベストプラクティス | プレイブックの構造とベストプラクティス |
| インベントリと変数 | インベントリと変数 |
| Ansible デプロイスクリプト | Ansible デプロイスクリプト |
| 構成テンプレート | 構成テンプレート |
ベストプラクティス
✅ DO
- モジュール性を高めるためにロールを使用する
- 適切なエラー処理を実装する
- 構成にはテンプレートを使用する
- 冪等性のためにハンドラーを活用する
- ローリングアップデートにはシリアルデプロイを使用する
- ヘルスチェックを実装する
- インベントリをバージョン管理に保存する
- 機密データには Vault を使用する
❌ DON'T
- 条件分岐なしで command/shell を使用する
- テンプレートを使わずにファイルをコピーする
- 最初にチェックモードで実行せずに実行する
- インベントリ内で環境を混在させる
- 値をハードコードする
- エラー処理を無視する
- 単純なタスクに shell を使用する
コメント
Markdown 対応