AWSでよく利用されるサービス上位50選
EC2 (Elastic Compute Cloud)
- 仮想サーバーを提供するIaaSサービス
- ブラックボックス化しがち
- オンプレ→クラウド化する場合の第一候補
- セキュリティグループのインバウンド・アウトバウンド全開放はやめよう
S3 (Simple Storage Service)
- オブジェクトストレージ。静的ファイルやバックアップ用途に最適。
- バケットポリシーが便利
- ストレージクラスでコスト最適化が可能
- パブリックアクセスはSCPなど上位の制御でそもそも行えないようにしよう(インシデント率大抵1位)
RDS (Relational Database Service)
- マネージドなリレーショナルデータベース。
- 常時起動の従量課金(停止しても1週間で自動起動)
- RIやサーバレスの採用でコストを抑えることも可能
-> サーバレスの場合はメトリクス取得のアクセスで最小ACU:0にならない場合も - メンテナンスやバージョンアップ、バックアップなどオペレーションが発生しがち
Lambda
- イベント駆動型のサーバーレス実行環境
- ランタイムなどの管理もアプリ側に寄る
- SAMや3rdParty製のSeverlessFrameworkなども併せて採用される場合も多い
- サーバレス構成の場合によく採用されるが複数のlambdaで処理する構成となることが多いため処理フローがやや複雑化しがち
VPC (Virtual Private Cloud)
- AWS上の仮想ネットワークを構成
- コスト算出が難しいサービスの一つ
- エンドポイントで意外に費用がかかる(無料のタイプもあるがInterface型などが1つにつき1kかかったりする)
-> VPCをTGWで繋げてインターネット通信を統合し、安くさせるなども可能
IAM (Identity and Access Management)
- ユーザーとアクセス権限を管理。
- 呼び方がブレやすい、IAM、SSO、IdC、IICなど
- IAMユーザーの払い出しやアクセストークンの利用はしないようにしよう(インシデント率2位)
- 複数アカウントでの運用やSTSなどの一時クレデンシャルの発行、IAMロールでの認証など仕組みは複雑だが有用なものも多い
- アクセス権限管理は終わりのない仕事
- ポリシーサイズなどの上限に意外に引っかかるので頭にいれておくこと
- 承認フローで権限付与する仕組みを構築・運用できるとベストか
CloudWatch
- 監視、メトリクス収集、アラーム設定。
- ロググループに設定するメトリクスフィルターが見落としやすい -> !sfnの削除でロググループが削除されメトリクスフィルターをトリガーにしていたCWアラームが動かなくなるなど
- インフラ構成のコード化(IaC)。
- いつも現行との差分(ドリフト)やIaCから外れたリソースとの闘い
- CDKと重なる部分もあるが、それぞれメリットがあるので状況、ケースに応じて使い分けれるとベスト
ECS (Elastic Container Service)
EKS (Elastic Kubernetes Service)
DynamoDB
Route 53
CloudFront
SNS (Simple Notification Service)
SQS (Simple Queue Service)
Elastic Beanstalk
ElastiCache
- RedisやMemcachedによるインメモリキャッシュ。
ELB(ALB,NLB)
- ロードバランサー(負荷分散する仕組み)。 ALBはL7、NLBはL4。
CodePipeline
CodeBuild
CodeDeploy
Systems Manager (SSM)
KMS (Key Management Service)
Secrets Manager
Step Functions
Glue
- ETL処理のためのサーバーレスデータ統合サービス。
Athena
Redshift
Cognito
CloudTrail
EFS (Elastic File System)
EventBridge
- サーバーレスイベントバス。マイクロサービス連携に活用。
QuickSight
Config
Backup
- マネージドバックアップサービス。スナップショットや復元対応。
Organizations
SSM パラメータストア
Cost Explorer
Inspector
WAF (Web Application Firewall)
API Gateway
- REST / WebSocket API のフロントエンド。
Amplify
SageMaker