mcpField
A
aws-infrastructure

aws-infrastructure

github.com/shipshitdevクラウド・DevOps38222 回インストール2 日前に更新
リポジトリ

aws-infrastructure について

AWS インフラの計画と設定を支援するガイダンススキルです。デプロイや運用を担う開発者向けに、ネットワーク、コンピュート、セキュリティ、監視などを扱います。

主な機能

  1. 01EC2 インスタンスとストレージの設定
  2. 02VPC とサブネットの計画
  3. 03セキュリティグループの設定
  4. 04ALB、Route53、ACM の設定
  5. 05CloudWatch のメトリクスとアラーム
  6. 06AWS 運用のベストプラクティス

活用シーン

  1. 01AWS アプリケーション環境の計画
  2. 02アプリ層とデータベース層のアクセス設定
  3. 03ALB 配下の HTTPS 設定
  4. 04AWS リソースの監視アラーム選定

インストール

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

$npx skills add https://github.com/shipshitdev/skills --skill aws-infrastructure

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

同梱ファイルplugin.json

詳細

AWS インフラストラクチャのエキスパート

使用する場面

  • EC2 インスタンスのセットアップと設定
  • VPC とネットワークのセットアップ
  • セキュリティグループの設定
  • Application Load Balancer のセットアップ
  • Route53 DNS の設定
  • SSL/TLS 証明書の管理(ACM)
  • Auto Scaling グループ
  • CloudWatch による監視

EC2 のセットアップ

インスタンスタイプ
  • 開発環境: t3.medium(2 vCPU、4GB RAM)
  • 本番環境(小規模): t3.large(2 vCPU、8GB RAM)
  • 本番環境(中規模): m5.large(2 vCPU、8GB RAM)
ストレージ
  • gp3 SSD ボリュームを使用します
  • 開発環境:最低 20GB
  • 本番環境:必要に応じて 100GB 以上
  • バックアップ用に EBS スナップショットを有効にします
キーペア
  • SSH キーペアを生成またはインポートします
  • 秘密鍵を安全に保管します
  • 可能な場合はアクセスキーではなく IAM ロールを使用します

VPC の設定

基本設定
  • CIDR ブロックを指定して VPC を作成します(例:10.0.0.0/16)
  • パブリックサブネットとプライベートサブネットを作成します
  • インターネットゲートウェイをセットアップします
  • ルートテーブルを設定します
  • 必要に応じて、プライベートサブネット用の NAT ゲートウェイをセットアップします
サブネット
  • パブリックサブネット:ロードバランサー、踏み台ホスト用
  • プライベートサブネット:アプリケーションサーバー、データベース用
  • 高可用性のためにマルチ AZ にします

セキュリティグループ

アプリケーションのセキュリティグループ
Inbound:
- HTTP (80) from ALB security group
- HTTPS (443) from ALB security group
- SSH (22) from bastion/your IP only

Outbound:
- All traffic (0.0.0.0/0)
データベースのセキュリティグループ
Inbound:
- Postgres (5432) from application security group only
- Redis (6379) from application security group only
- SSH (22) from bastion/your IP only

Outbound:
- All traffic (0.0.0.0/0)
ロードバランサーのセキュリティグループ
Inbound:
- HTTP (80) from 0.0.0.0/0
- HTTPS (443) from 0.0.0.0/0

Outbound:
- HTTP (80) to application security group
- HTTPS (443) to application security group

Application Load Balancer

セットアップ
  1. パブリックサブネットに ALB を作成します
  2. ターゲットグループ(EC2 インスタンス)を設定します
  3. ヘルスチェックをセットアップします
  4. リスナーを設定します(HTTP → HTTPS リダイレクト)
  5. ACM の SSL 証明書を関連付けます
ヘルスチェック
  • パス:/health または /api/health
  • プロトコル:HTTP
  • ポート:3001(バックエンド)または 3000(フロントエンド)
  • 正常しきい値:2
  • 異常しきい値:2
  • タイムアウト:5 秒
  • 間隔:30 秒

Route53 DNS

ドメインのセットアップ
  1. ドメインのホストゾーンを作成します
  2. ALB を参照する A レコード(エイリアス)を作成します
  3. www サブドメインの CNAME を作成します
  4. ドメインレジストラーでネームサーバーを更新します
SSL/TLS(ACM)
  1. ACM で証明書をリクエストします(CloudFront/ALB の場合は us-east-1)
  2. DNS で検証します(CNAME レコードを追加)
  3. 証明書を ALB リスナーに関連付けます
  4. 証明書は自動更新されます

CloudWatch による監視

メトリクス
  • EC2:CPU、メモリ、ディスク、ネットワーク
  • ALB:リクエスト数、ターゲットの応答時間、HTTP エラー
  • アプリケーション固有のデータにはカスタムメトリクスを使用します
アラーム
  • CPU 使用率の上昇
  • ディスク容量の不足
  • アプリケーションエラー(CloudWatch Logs 経由)
  • 正常でないターゲットインスタンス

ベストプラクティス

  • アクセスキーではなく IAM ロールを使用します
  • 監査ログ記録のために CloudTrail を有効にします
  • AWS サービスへのアクセスには VPC エンドポイントを使用します
  • 最小権限のセキュリティグループを実装します
  • データベースにはプライベートサブネットを使用します
  • EBS ボリュームの保存時の暗号化を有効にします
  • 自動バックアップ(EBS スナップショット)をセットアップします
  • AWS Cost Explorer でコストを監視します

統合

このスキルは、Postgres のセットアップ(RDS または EC2)用の postgres-ops と、デプロイワークフロー用の /deploy と連携します。

コメント