Agent Skills by ALSEL
Anthropic ClaudeDevOps・インフラ⭐ リポ 13品質スコア 81/100

deployment-strategies

本番環境へのデプロイメント戦略に関するスキルです。ブルーグリーンデプロイメント、カナリアデプロイメント、ローリングアップデート、リクリエイトなどの手法に対応します。ダウンタイムなしでのデプロイメント、ロールバック手順、データベースマイグレーションの調整、デプロイメント自動化を実現できます。 【このスキルを使用する場合】ユーザーが「ブルーグリーン」「カナリアデプロイメント」「ローリングアップデート」「ゼロダウンタイム」「デプロイメント戦略」「ロールバック」「デプロイパイプライン」などに言及した場合。 【このスキルを使用しない場合】CI/CDパイプラインの構文(GitHub Actionsを使用)、コンテナオーケストレーション(Kubernetesを使用)、Infrastructure as Code(Terraformを使用)。

description の原文を見る

Production deployment strategies. Blue-green, canary, rolling update, recreate. Zero-downtime deployments, rollback procedures, database migration coordination, and deployment automation. USE WHEN: user mentions "blue-green", "canary deployment", "rolling update", "zero-downtime", "deployment strategy", "rollback", "deploy pipeline" DO NOT USE FOR: CI/CD pipeline syntax - use `github-actions`; container orchestration - use `kubernetes`; IaC - use `terraform`

SKILL.md 本文

デプロイメント戦略

戦略の比較

戦略ダウンタイムリスクロールバック速度リソースコスト
リクリエートあり遅い(再デプロイ)
ローリングアップデートなし中程度
ブルーグリーンなし即座(切り替え)2倍のリソース
カナリアなし非常に低高速(ルート変更)+10-20%

ブルーグリーンデプロイメント

                    ┌─── Blue (v1) ← 現在のトラフィック
Load Balancer ──────┤
                    └─── Green (v2) ← ここにデプロイ、テスト、切り替え

AWS (ALB Target Groups)

// ブルーからグリーンへトラフィックを切り替え
await elbv2.modifyListener({
  ListenerArn: listenerArn,
  DefaultActions: [{
    Type: 'forward',
    TargetGroupArn: greenTargetGroupArn, // グリーンをポイント
  }],
});

// ロールバック: ブルーに戻す
await elbv2.modifyListener({
  ListenerArn: listenerArn,
  DefaultActions: [{
    Type: 'forward',
    TargetGroupArn: blueTargetGroupArn,
  }],
});

カナリアデプロイメント

# Kubernetes: Argo Rollouts
apiVersion: argoproj.io/v1alpha1
kind: Rollout
spec:
  strategy:
    canary:
      steps:
        - setWeight: 5        # カナリアへ5%のトラフィック
        - pause: { duration: 5m }
        - setWeight: 20
        - pause: { duration: 10m }
        - setWeight: 50
        - pause: { duration: 10m }
        - setWeight: 100       # 完全なロールアウト
      analysis:
        templates:
          - templateName: error-rate
        startingStep: 1        # ステップ1からチェック開始

ローリングアップデート (Kubernetes)

apiVersion: apps/v1
kind: Deployment
spec:
  replicas: 4
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 1    # 最大1つのポッドがダウン
      maxSurge: 1          # 最大1つの余分なポッド

データベースマイグレーション調整

1. v2コード(v1スキーマとの後方互換性あり)をデプロイ
2. フォワードマイグレーション実行(追加のみ:新しいカラム、テーブル)
3. v2が正常に動作することを確認
4. 次のリリースで消去マイグレーション実行(古いカラムを削除)

拡張・契約パターン

-- リリース1: 拡張(新しいカラムを追加)
ALTER TABLE users ADD COLUMN full_name TEXT;
UPDATE users SET full_name = first_name || ' ' || last_name;

-- リリース2: コードがfull_nameを使用し、first_name/last_nameへの書き込みを停止

-- リリース3: 契約(古いカラムを削除)
ALTER TABLE users DROP COLUMN first_name, DROP COLUMN last_name;

ロールバックチェックリスト

# 1. 問題を検出(自動または手動)
# 2. トラフィックを前のバージョンに戻す
kubectl rollout undo deployment/my-app

# 3. ロールバックが成功したことを確認
kubectl rollout status deployment/my-app

# 4. DBマイグレーションが実行された場合、バックワードマイグレーション実行
# (マイグレーションが後方互換性があった場合のみ)

アンチパターン

アンチパターン修正方法
デプロイとマイグレーション同時実行デプロイとマイグレーションを分離
破壊的なDBマイグレーション拡張・契約パターンを使用
レディネスチェックなしレディネスプローブを設定
自動ロールバックトリガーなしエラー率の閾値を設定
手動デプロイCI/CDパイプライン経由で自動化

本番環境チェックリスト

  • ゼロダウンタイム戦略を選択(ローリング/ブルーグリーン/カナリア)
  • ヘルスチェック設定(ライブネス+レディネス)
  • ロールバック手順がドキュメント化され、テスト済み
  • データベースマイグレーションが後方互換性あり
  • エラー率スパイク時の自動ロールバック
  • チームへのデプロイメント通知

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
claude-dev-suite
リポジトリ
claude-dev-suite/claude-dev-suite
ライセンス
MIT
最終更新
2026/5/10

Source: https://github.com/claude-dev-suite/claude-dev-suite / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: claude-dev-suite · claude-dev-suite/claude-dev-suite · ライセンス: MIT