#AWS

161 件の記事

Lambda コールドスタート対策 — プロビジョンド同時実行のコスト判断
読了 6分

Lambda コールドスタート対策 — プロビジョンド同時実行のコスト判断

Lambda コールドスタートの構造と対策をコストの観点で整理します。初期化フェーズが遅延を作る仕組み、パッケージ削減や SnapStart のような無料に近い対策、プロビジョンド同時実行の二重料金構造($0.0000041667/GB 秒の常時料金 + 割引された実行単価)、使用率 60% を超えるとオンデマンドより安くなる逆転の分岐点、スケジューリングと判断の手順まで扱います。

AWS データ転送料金の全体整理 — どこで課金され、どこが無料か
読了 5分

AWS データ転送料金の全体整理 — どこで課金され、どこが無料か

AWS の請求書で最も読みにくい項目であるデータ転送料金を区間別に整理します。受信は無料で送信は課金という大原則、インターネット送信 $0.09/GB、同一 AZ 無料と AZ 間の双方向 $0.01/GB、リージョン間転送、NAT Gateway とパブリック IPv4 のように転送に上乗せされる追加料金、VPC エンドポイントによる回避と削減の手順まで扱います。

CloudFront 導入のコスト損益 — 入れると安くなる場合とならない場合
読了 5分

CloudFront 導入のコスト損益 — 入れると安くなる場合とならない場合

CloudFront を前に置くと料金が下がるのかを計算で整理します。EC2、S3 直接転送 $0.09/GB と CloudFront $0.085/GB の単価差、オリジンから CloudFront への転送が無料という構造、常時無料 1TB の効果、小さいレスポンスが大量に出るワークロードでリクエスト料金が本体になる落とし穴、キャッシュヒット率が損益を分ける理由と導入判断の手順まで扱います。

GitHub Actions 講座 #7 AWS デプロイと OIDC — アクセスキーなしの資格情報
読了 5分

GitHub Actions 講座 #7 AWS デプロイと OIDC — アクセスキーなしの資格情報

アクセスキーを secrets に保存する方式が抱える流出とローテーションの問題を整理し、ワークフローが短期トークンで AWS のロールを引き受ける OIDC 連携の動作原理を、トークン交換の流れで説明します。AWS 側の信頼構成と sub クレームの制限、configure-aws-credentials アクションと id-token 権限の設定、S3 静的サイトのデプロイ例まで完成させ、デプロイパイプラインの資格情報問題を片付けます。

Terraform 実践 #10 ドメイン・HTTPS・完成 — Route 53、ACM 検証、CloudFront と provider alias
読了 5分

Terraform 実践 #10 ドメイン・HTTPS・完成 — Route 53、ACM 検証、CloudFront と provider alias

Route 53 のホストゾーンをデータソースでつなぎ、ACM 証明書をリソース 3 つの DNS 検証イディオムで発行して、ALB に HTTPS リスナーとリダイレクトを取り付けます。CloudFront 用の証明書のために provider alias で us-east-1 を併用する方法を扱い、OAC で閉じた S3 バケットを配信する CDN とエイリアスレコードまでつないで、10 本のアーキテクチャを完成させます。

Terraform 実践 #8 ECS Fargate デプロイ — タスク定義、サービス、同じ ALB の後ろでの切り替え
読了 5分

Terraform 実践 #8 ECS Fargate デプロイ — タスク定義、サービス、同じ ALB の後ろでの切り替え

user_data 方式の限界を整理し、コンピューティング層をコンテナに世代交代させます。ECS クラスターと Fargate タスク定義、execution role と task role の区別、ip タイプのターゲットグループを持つサービスを作り、同じ ALB の後ろで EC2 とコンテナを並べて動かしながらリスナーの切り替えで乗り換えるところまで、コードで進めます。

Terraform 実践 #7 IAM のコード化 — インスタンスロール、最小権限、GitHub Actions OIDC
読了 4分

Terraform 実践 #7 IAM のコード化 — インスタンスロール、最小権限、GitHub Actions OIDC

aws_iam_policy_document データソースで信頼ポリシーと権限ポリシーを書き、インスタンスプロファイルで EC2 にロールを付与して、SSM Session Manager 接続とシークレット読み取りを完成させます。最小権限をリソース ARN 単位まで絞る方法と、GitHub Actions がアクセスキーなしで AWS のロールを引き受ける OIDC 連携まで、コードで作っていきます。

Terraform 実践 #6 シークレット管理 — SSM vs Secrets Manager、write-only 引数
読了 5分

Terraform 実践 #6 シークレット管理 — SSM vs Secrets Manager、write-only 引数

シークレットの保管先として SSM Parameter Store と Secrets Manager をコストと機能で比較して選択基準を立て、Terraform 1.11 の ephemeral リソースと write-only 引数で DB パスワードが plan にも state にも残らない構成を作ります。アプリケーションがシークレットをランタイムに読む流れまで設計し、前回の平文問題を構造的に解決します。

Terraform 実践 #5 RDS と S3 — データ層のコード化と安全装置
読了 4分

Terraform 実践 #5 RDS と S3 — データ層のコード化と安全装置

DB サブネットグループとセキュリティグループのチェイニングで隔離した PostgreSQL RDS をプライベートサブネットに作成し、gp3 ストレージとバックアップ、prevent_destroy の安全装置まで設定します。静的アセット用の S3 バケットをパブリックアクセスブロック付きで構成し、一時的に変数へ置いた DB パスワードが state に平文で残る問題を確認して、次回の課題として引き継ぎます。

Terraform 実践 #4 ALB と Auto Scaling — launch template、ターゲットグループ、スケーリングポリシー
読了 4分

Terraform 実践 #4 ALB と Auto Scaling — launch template、ターゲットグループ、スケーリングポリシー

単一の EC2 インスタンスをロードバランサーの後ろの Auto Scaling グループに昇格させます。インスタンス定義を launch template に移し、ALB とターゲットグループ、リスナーをつないだうえで、CPU のターゲット追跡スケーリングポリシーまで設定します。検証用の単一インスタンスをコードから削除して IaC のリソース削除の流れを確認し、ブラウザで最初のレスポンスを受け取ります。

Terraform 実践 #3 EC2 とセキュリティグループ — SG チェイニング設計と user_data による起動
読了 5分

Terraform 実践 #3 EC2 とセキュリティグループ — SG チェイニング設計と user_data による起動

セキュリティグループを CIDR ではなくセキュリティグループ参照でつなぐチェイニング設計を ALB、EC2 の 2 層で構成し、最新の AL2023 AMI をデータソースで照会して、user_data で Web サーバーまで起動する EC2 インスタンスをプライベートサブネットに配置します。SSH ポートを開けない理由と、Session Manager での接続計画まで整理します。

Terraform 実践 #2 VPC ネットワークのコード化 — 2 AZ のサブネット、ルーティング、NAT ゲートウェイ
読了 5分

Terraform 実践 #2 VPC ネットワークのコード化 — 2 AZ のサブネット、ルーティング、NAT ゲートウェイ

myapp インフラの土台である VPC をコードで構築します。パブリック・プライベートサブネットを 2 つの AZ に for_each で作り、インターネットゲートウェイとルーティングテーブルでトラフィックのルートを定義し、プライベートサブネットのアウトバウンドを担う NAT ゲートウェイを費用の割り切りとともに配置します。ネットワークの output まで整理して、次回のコンピューティング層を受け入れる準備を済ませます。