mcpField
M
migration-readiness

migration-readiness

github.com/aws-samplesクラウド・DevOps276544 回インストール5 週間前に更新
リポジトリ

migration-readiness について

migration-readinessは、アプリケーション、インフラ、依存関係を分析し、AWSへの移行準備状況を評価するワークフローです。調査後に移行戦略とリスクを評価し、明示的な確認を得るまで各チェックポイントで停止します。

主な機能

  1. 01アプリケーション構成とインフラを調査
  2. 02サービス、データフロー、移行ウェーブを整理
  3. 03阻害要因と高リスク依存関係を特定
  4. 047 Rsで移行戦略を評価
  5. 05準備状況の各領域とリスクを評価

活用シーン

  1. 01AWS移行に向けたワークロードの準備状況を評価
  2. 02コードやインフラの移行阻害要因を発見
  3. 03コンポーネント別の戦略とリスク一覧を計画
  4. 04段階的なチェックポイントで準備状況を確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aws-samples/sample-well-architected-skills-and-steering --skill migration-readiness

インストール後、Claude Code で/migration-readinessを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

metadata.json
evals/
evals.json
triggering.json

詳細

移行準備状況の評価

ステップ 1:コンテキストの収集

ユーザーに次の内容を尋ねます。

どのワークロードの移行を計画していますか?次の情報を共有してください。

  • ワークロード名と分析対象のコードパッケージ/ディレクトリ
  • 現在の環境(オンプレミス、他のクラウド、コロケーション)
  • ビジネス上の推進要因(コスト、俊敏性、コンプライアンス、ハードウェアのサポート終了など)
  • タイムラインの制約(任意)

コンテキストがすでに提供されている場合、またはコードベース内にいる場合は、そのまま次に進みます。

ステップ 2:アプリケーションスタックの検出

コードベースを分析し、現在のアプリケーションスタックを把握します。

必ず次の項目を調査します。

  • プログラミング言語とランタイム(バージョン、AWS サービスとの互換性)
  • フレームワークとライブラリ(Web フレームワーク、ORM、メッセージング)
  • データベース技術(リレーショナル、NoSQL、検索、キャッシュ)
  • ミドルウェアとメッセージブローカー
  • 外部サービスへの依存関係(API、SaaS 統合)
  • 構成管理(構成ファイル、環境変数、シークレット)
  • OS への依存関係とシステムレベルの要件
  • ビルドおよびパッケージングシステム(Maven、npm、pip、Docker)

各コンポーネントについて、次の内容を記録します。

  • ファイルパスと行番号
  • テクノロジーとバージョン
  • AWS の同等サービスまたは移行パス
  • 移行の複雑さ(単純なリホスト、変更が必要、書き換えが必要)
  • 他のコンポーネントへの依存関係

次の項目は必ずブロッカーとしてフラグを付けます。

  • クラウドに同等のものがない OS 固有の依存関係
  • ライセンス上の制約があるプロプライエタリソフトウェア(Oracle、特定の Windows 機能)
  • ハードウェア固有の依存関係(FPGA、特定の CPU 命令、USB ドングル)
  • アプリケーションコードにハードコードされた IP アドレスまたはホスト名
  • ローカルファイルシステムへの依存関係(共有ネットワークドライブ、ローカルストレージ)

ステップ 3:インフラストラクチャの検出

既存のインフラストラクチャ構成を分析します。

必ず次の項目を調査します。

  • サーバー構成(CPU、メモリ、ストレージ要件)
  • ネットワークトポロジー(VLAN、ファイアウォール、ロードバランサー、DNS)
  • ストレージシステム(SAN、NAS、ローカルディスク、ファイル共有)
  • データベース構成(エンジン、バージョン、サイズ、レプリケーション)
  • モニタリングおよびアラートシステム
  • バックアップおよび DR 構成
  • セキュリティ制御(ファイアウォール、IDS/IPS、WAF、証明書)
  • 既存の IaC(Terraform、Ansible、Chef、Puppet)があれば、その内容

各インフラストラクチャコンポーネントについて、次の内容を記録します。

  • 現在の構成
  • AWS の同等サービス
  • 移行アプローチ(リホスト、リプラットフォーム、リファクタリング)
  • データ量と転送に関する考慮事項

ステップ 4:依存関係のマッピング

すべての内部および外部依存関係をマッピングします。

必ず以下を調査してください。

  • サービス間通信(プロトコル、ポート、パターン)
  • データベース接続(接続文字列、コネクションプーリング、複数の利用者)
  • 共有データベースまたはデータストア(複数のサービスによる書き込み/読み取り)
  • 外部 API 統合(サードパーティサービス、パートナー API)
  • ネットワーク依存関係(レイテンシの影響を受けやすい接続、VPN トンネル)
  • バッチジョブの依存関係(スケジュール、実行順序)
  • 認証/認可の依存関係(LDAP、AD、SSO)

以下を示す依存関係図を必ず作成してください。

  • すべてのサービスとその接続
  • データフローとプロトコル
  • 外部依存関係
  • 移行ウェーブのグループ分け(同時に移行する必要があるもの)

以下は必ず高リスクとして示してください。

  • 同時に移行する必要があるコンポーネント間の密結合(影響範囲が拡大します)
  • 複数のサービスからアクセスされる共有データベース(移行順序の制約)
  • 移行中にハイブリッド環境をまたぐことになる、レイテンシの影響を受けやすい統合
  • 移行できないオンプレミスシステムへの強い依存関係(ハイブリッド接続が必要)

---STOP--- チェックポイント:検出と依存関係のマッピングが完了しました。移行戦略を決定する準備ができています。

アプリケーションスタック({X} 個のコンポーネント)、インフラストラクチャ構成、依存関係をマッピングしました。{Y} 個のブロッカー、{Z} 件の高リスク依存関係(共有データベース、レイテンシの影響を受けやすい統合)、および移行ウェーブのグループ分けを特定しました。

各コンポーネントの移行戦略(7 Rs)の決定と、柱ごとの準備状況の評価に進めてもよろしいですか?

ユーザーが明示的に確認するまで、この時点から先に進まないでください。

ステップ 5:移行戦略(7 Rs)の決定

各コンポーネントについて、コードの証拠に基づいて適切な戦略を評価します。

戦略使用する状況コードの指標
Rehost迅速な移行、変更を最小限に抑える標準的な OS、コンテナ化可能、OS 固有の依存関係がない
Replatform移行時に小規模な最適化を行うセルフマネージド DB → RDS、セルフマネージドキャッシュ → ElastiCache
Refactorクラウドネイティブのメリットが必要分解すべきモノリス、ステートフル → ステートレス
RepurchaseSaaS に置き換えるAWS/SaaS 相当の製品がある商用ソフトウェア
Retireもはや必要ない未使用のコード、非推奨のサービス
Retain移行の準備ができていない強い依存関係、コンプライアンス上のブロッカー
RelocateVMware ワークロードVMware 固有の構成

各推奨事項はコードの証拠に基づいて必ず正当化してください。

ステップ 6:柱ごとの準備状況の評価

各柱について、準備状況(準備完了/条件付きで準備完了/未準備)、証拠(ファイル:行)、ギャップ、必要な対応を提示してください。

オペレーショナルエクセレンスの準備状況
  • IaC がありますか?(CloudFormation、Terraform、CDK、Ansible)
  • CI/CD パイプラインは整備されていますか?AWS を対象にできますか?
  • モニタリングは移植可能ですか、それとも特定のツールに依存していますか?
  • 運用手順は文書化されていますか?
セキュリティの準備状況
  • リージョンやサービスの選択に影響するコンプライアンス要件はありますか?
  • シークレットはどのように管理されていますか?(ハードコード、ボールト、構成ファイル)
  • 代替手段が必要なネットワークセキュリティ上の依存関係はありますか?
  • ID 管理は AWS IAM/Identity Center と互換性がありますか?
信頼性の準備状況
  • 現在の可用性はどの程度ですか?目標は何ですか?
  • 複製すべき HA の仕組みはありますか?
  • 移行中に許容できるダウンタイムはどの程度ですか?
  • バックアップ/復旧手順はテスト済みですか?
パフォーマンス効率の準備状況
  • レイテンシの影響を受けやすい統合はありますか?
  • ハードウェア固有の依存関係はありますか?
  • 現在のパフォーマンスベースラインはどのようになっていますか?
  • 切り替え中に維持すべき SLA はありますか?
コスト最適化の準備状況
  • 現在の TCO はどのくらいですか?(ハードウェア、ライセンス、運用、設備)
  • ライセンスへの影響はありますか?(BYOL、ライセンス込み、再購入)
  • 既存の契約または前払いのコミットメントはありますか?
サステナビリティへの対応状況
  • 移行によってリソースの使用量を削減できますか?
  • Graviton/サーバーレスを活用できる余地はありますか?
  • マネージドサービスでセルフマネージドのインフラストラクチャを置き換えられますか?

ステップ 7:リスク評価

各リスクを、影響度 × 発生可能性で評価します。

影響度:軽微(スケジュールの遅れ、軽微な手戻り)|中程度(大幅な手戻り、ハイブリッド環境の長期化)|重大(移行の失敗、データ損失、長期にわたる停止)

発生可能性:低(適切に計画すれば可能性は低い)|中(具体的な緩和策がなければ起こり得る)|高(現在の状況を踏まえると起こる可能性が高い)

影響度発生可能性リスクレベル
重大高クリティカル
重大中高
重大低高
中程度高高
中程度中中
中程度低中
軽微高中
軽微中低
軽微低低

---STOP--- チェックポイント:リスク評価が完了しました — 最終的な移行評価を作成できます

移行に関する {N} 件のリスクを評価しました。リスクの内訳:クリティカル {X} 件、高 {Y} 件、中 {Z} 件、低 {W} 件。全体的な準備状況:{Ready / Conditionally Ready / Not Ready}。重大な阻害要因と緩和策を特定しました。

移行計画とコスト比較を含む、移行準備状況の完全な評価を作成しますか?

ユーザーが明示的に確認するまで、この先に進まないでください。

ステップ 8:評価を作成する

# Migration Readiness Assessment: {Workload Name}

## Executive Summary
- **Date**: {date}
- **Packages Analyzed**: {list}
- **Recommended Strategy**: {primary strategy}
- **Overall Readiness**: {Ready / Conditionally Ready / Not Ready}
- **Estimated Effort**: {T-shirt size with justification}
- **Key Risks**: {top 3}
- **Critical Blockers**: {count and brief description}

## Application Stack Summary
| Component | Technology | Version | AWS Equivalent | Strategy | Complexity |
|-----------|-----------|---------|---------------|----------|------------|
| {name} | {tech} | {ver} | {aws service} | {7R} | {Low/Med/High} |

## Dependency Map
{PlantUML diagram showing service dependencies, data flows, and migration wave groupings}

## Readiness Scorecard
| Pillar | Readiness | Score (1-5) | Key Blocker | Action Needed |
|--------|-----------|-------------|-------------|---------------|
| Operational Excellence | {status} | {score} | {blocker} | {action} |
| Security | {status} | {score} | {blocker} | {action} |
| Reliability | {status} | {score} | {blocker} | {action} |
| Performance Efficiency | {status} | {score} | {blocker} | {action} |
| Cost Optimization | {status} | {score} | {blocker} | {action} |
| Sustainability | {status} | {score} | {blocker} | {action} |

## Critical Blockers
{For each: ID, description, evidence (file:line), impact on migration, resolution approach, effort}

## Risks and Mitigations
| Risk | Evidence | Risk Level | Migration Impact | Mitigation | AWS Service |
|------|----------|------------|-----------------|------------|-------------|
| {risk} | {file:line} | {level} | {impact} | {mitigation} | {service} |

## Pre-Migration Checklist
{Ordered by priority — what must be done before migration starts}
- [ ] {action with evidence of why it's needed}

## Migration Plan

### Phase 1: Mobilize (Weeks 1-2)
| Task | Dependencies | AWS Service | Evidence |
|------|-------------|-------------|----------|
{Landing zone, connectivity, tooling setup}

### Phase 2: Migrate (Weeks 3-6)
| Wave | Components | Strategy | Data Volume | Downtime Window |
|------|-----------|----------|-------------|-----------------|
{Component migration waves based on dependency analysis}

### Phase 3: Optimize (Weeks 7-8)
| Optimization | Component | Expected Benefit | AWS Service |
|-------------|-----------|-----------------|-------------|
{Right-sizing, managed services, serverless, Graviton}

## AWS Services for Migration
| Category | Service | Purpose | Relevant Components |
|----------|---------|---------|-------------------|
| Server | AWS MGN | Rehost EC2 | {components} |
| Database | AWS DMS | Replicate with minimal downtime | {components} |
| Data | DataSync / Snowball | Large-scale transfer | {components} |
| Schema | AWS SCT | Schema conversion | {components} |
| Network | Direct Connect / VPN | Hybrid connectivity | {components} |
| Governance | Control Tower | Multi-account | All |

## Cost Comparison
| Category | Current (monthly est.) | AWS Estimated | Delta | Notes |
|----------|----------------------|---------------|-------|-------|
| Compute | {estimate} | {estimate} | {delta} | {basis} |
| Storage | {estimate} | {estimate} | {delta} | {basis} |
| Networking | {estimate} | {estimate} | {delta} | {basis} |
| Licensing | {estimate} | {estimate} | {delta} | {basis} |
| Operations | {estimate} | {estimate} | {delta} | {basis} |

## Next Steps
{Top 5 concrete actions the team should take this week to prepare}

ステップ 9:次の対応を提案する

評価を提示した後、次の項目を提案します。

次の対応を行いましょうか?

  • AWS ランディングゾーンのアーキテクチャを設計する
  • 特定のデータベース向けに詳細なデータ移行計画を作成する
  • 特定のコンポーネントの AWS コストを詳細に見積もる
  • 移行前のテスト戦略を策定する
  • ハイブリッド接続アーキテクチャを設計する
  • 移行先の AWS アーキテクチャ向けに IaC を作成する

評価の指針

  • すでにコンテナ化され、CI/CD と IaC が導入されているワークロードは、準備が「おおむね整っています」— AWS 固有の最適化とデータ移行計画に注力してください
  • すべての阻害要因とリスクには、必ずコード上の根拠が必要です — 実際の依存関係を確認せずに「ライセンスリスク」を指摘しないでください
  • 移行戦略の推奨事項は、コード分析に基づいて正当化する必要があります(推測に基づいてはいけません)
  • 「判断できません」は、コードから確認できない実行時の特性(例:実際のデータ量、ネットワーク遅延の要件)に対して有効です
  • 共有データベースについては、必ず移行順序の制約を指摘してください — これが移行の複雑さを招く最大の原因です
  • 静的分析に基づくコスト見積もりは概算です — 不確実性を明示し、正確な見積もりには AWS Pricing Calculator の利用を推奨してください
  • 移行準備が整っている点(コンテナ化、ステートレス、IaC がすでに存在すること)を明確に示してください

コメント