mcpField
A
ansible-automation

ansible-automation

github.com/aj-geddesクラウド・DevOps3731.8k 回インストール34 週間前に更新
リポジトリ

ansible-automation について

Ansibleによるインフラのプロビジョニング、構成管理、アプリケーションデプロイを自動化するスキルです。複数サーバーの運用に向けて、Playbookやロール、動的インベントリーを扱います。

主な機能

  1. 01インフラのプロビジョニングと構成管理
  2. 02アプリケーションデプロイの自動化
  3. 03Playbookと再利用可能なロール
  4. 04動的インベントリー管理
  5. 05ローリング更新とヘルスチェック

活用シーン

  1. 01複数サーバーの構成管理
  2. 02インフラのパッチ適用とアプリのデプロイ
  3. 03クラウドインスタンスのプロビジョニング
  4. 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.md
configuration-template.md
inventory-and-variables.md
playbook-structure-and-best-practices.md
scripts/
validate-config.sh
templates/
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 を使用する

コメント