AWS DVA試験対策問題集を解いていて知らない用語を調べたのでメモしておきます。
Amazon API Gateway
APIの作成、公開、保守を行うフルマネージドサービス。
- integrationLatency
API Gatewayのメトリクスの1つ。バックエンドにリクエストを中継してからレスポンスを受け取るまでの時間。 - responceLatency
API Gatewayのメトリクスの1つ。クライアントからリクエストを受け取ってからクライアントにレスポンスを返すまでの時間。 - 統合タイプ
AWS: バックエンドにAWSサービスを設定。統合リクエスト、統合レスポンスの設定が必要
AWS PROXY:バックエンドにAWSサービスを設定。統合リクエスト、レスポンスの設定なし
HTTP:バックエンドにHTTPエンドポイントを設定。統合リクエスト、レスポンスの設定が必要
HTTP PROXY:バックエンドにHTTPエンドポイントを設定。統合リクエスト、レスポンスの設定なし。クライアントとバックエンドが直接対話する形
MOCK:リクエストをバックエンドに渡さず、クライアントに応答する - 使用量プラン
1秒当たりのリクエスト数(レート)や特定期間のリクエスト数(クォータ)を設定しアクセス回数を制限できる。
AWS ECS(Elastic Container Service)
フルマネージドなコンテナオーケストレーションサービス。
- 動的ポートマッピング
ALBなどのロードバランサーと組み合わせて実施可能。ポートを上書きして、同じインスタンスで複数タスクを実施できるようになる。 - タスク定義
docker-compose.ymlのようなもの。複数コンテナを定義できる。 - タスク配置戦略(起動タイプがEC2のときのみ)
binpack:使用中のコンテナインスタンスを最小限に抑えるコスト優先の配置
random:ランダムに配置
spread:タスクに指定された値(AZまたはEC2インスタンス)に基づいて均等に配置
AWS Elastic Beanstalk
自動でアプリケーションをデプロイする環境を構築してくれるサービス。
- .ebextensions
ファイル拡張子を .config とする YAML または JSON 形式のドキュメントをこのフォルダの配下に配置してデプロイすることでロードバランサーやX-Rayなどの環境設定ができる。 - デプロイポリシー
All at once:全インスタンスに同時にデプロイ
Rolling:複数のバッチに分割しデプロイ
Rolling with additional batch:複数のバッチに分割しデプロイするが、デプロイ中新しいインスタンスを追加しキャパシティを維持。
Immutable:別のオートスケーリンググループを作成し新しいインスタンスにデプロイ
Blue-Green Deployment:別の環境に新しい環境をデプロイしてDNSを切り替え
Amazon Cognito
アプリケーションの認証、認可をしてくれるサービス
- ユーザープール
ユーザーの管理と認証を実施する。認証が成功するとユーザープールトークンを発行する。 - IDプール
他のAWSサービスの認可を実施する。ユーザープールトークンとIDプールトークンを交換し、ユーザーは認可されたサービスにアクセスできる。様々なIdPを指定可能。
AWS Secrets Manager
データベースの認証情報を管理し、APIを通してシークレット情報を提供する。
- Secrets Manager
RDS、Auroraの統合に使用できる。シークレットを自動的にローテーション可能で有料のサービス。 - Secrets Manager Parameter Store
設定データを管理するためのサービス。データベース認証情報、パスワード、ライセンスコード等様々なデータを保管できる無料のサービス。
Amazon DynamoDB
key-value型のフルマネージド、サーバレスのデータストアサービス
- 読み込みキャパシティユニット(RCU)
1ユニットで4kBまでのデータに対して1回/秒の強い整合性のある読み取りまたは2回/秒の整合性のある読み取りを実施できる。 - 書き込みキャパシティユニット(WCU)
1ユニットで1kBまでのデータに対して1回/秒の書き込みを実施できる。 - アトミックカウンタ
他の書き込みリクエストに干渉することなく無条件に増減されるカウンタ。UpdateItemの更新式を使用して実装する。 - グローバルセカンダリインデックス(GSI)
パーティションキーまたはソートキーが元のテーブルとは異なってもよい。元のテーブルとは別のパーティションに保存され、テーブル全体に対してクエリを実行できる。テーブル作成後でも作成できる。 - ローカルセカンダリインデックス(LSI)
パーティションキーは元のテーブルと同じにしてソートキーのみが異なるもの。同一パーティションに作成されるためパーティションをまたがってクエリが実行されることはなく、テーブルの作成時にしか作成できない。強い結果整合性をサポートする。
Amazon ElastiCache
フルマネージドなインメモリデータストアサービス。
エンジンとしてRedisとMemcachedがある。下のリンクの通り、基本的にRedisのほうができることが多い。
Redis とMemcached | AWS
Memcached はシンプルに、また Redis は幅広いユースケースをサポートする豊富な機能をお届けできるように作られています。違いを理解して、ご自分に適したエンジンを選択してください。
- Memcached
key-valueストア形式で保存。シンプルなデータに向いている。 - Redis
レプリケーションやトランザクションに対応している。柔軟なデータ構造が設定でき複雑なデータに向いている。 - 書き込みスルー戦略
データがデータベースに書き込まれると常にキャッシュのデータを更新する戦略。対の戦略として必要なときにのみキャッシュにデータを読み込む遅延読み込み戦略もある。
AWS CodeDeploy
ソフトウェアのデプロイを自動化するサービス
- AppSpecファイル
デプロイ方式を設定するYAMLファイル - ApplicationStopイベントフックの実行順序
ApplicationStop→DownloadBundle→BeforeInstall→AfterInstall→ApplicationStart→ValidateService
AWS X-Ray
アプリケーションのリクエストに関するデータを収集して分析するサービス。
- AWS_XRAY_DAEMON_ADDRESS
XRAYを使用するときに設定するデーモンリスナーのホストとポート番号を示す環境変数 - AWS_XRAY_CONTEXT_MISSING
セグメントが開いていないときにXRAYがデータを記録しようとしたときの動作を決定する環境変数 - サンプリングリクエスト数
=リザーバ+(リクエスト数-リザーバ)×固定レート
リザーバ:1秒あたりにサンプリングする固定のリクエスト数
固定レート:リザーバの上限に達したときにサンプリングするパーセンテージ - 主なAPI
BatchGetTraces:IDで指定したトレースのリストを取得する。
GetTraceSummaries:フィルター式を利用して特定の時間の利用可能なトレースIDのリストを取得する。完全なトレースを取得するには、トレース ID を BatchGetTraces に渡す。
AWS CloudFormation
インフラストラクチャをコードで扱うことで、AWSリソースのモデル化、プロビジョニングを実施するサービス。
以下がよく使用されるテンプレートセクション。Resourcesのみ必須。
- AWSTemplateFormatVersion テンプレートのバージョン
- Description コメント
- Metadata 追加情報
- Parameters 作成時にテンプレートに渡す入力情報
- Rules テンプレートに渡された入力情報を検証する
- Mappings キーと値の関連する値のマッピング
- Conditions and、orなどの組み込み関数を使用してリソースを作成する条件を指定
- Resources スタックリソースとそのプロパティを指定
- Outputs スタックのプロパティについて出力
また4種類のヘルパースクリプトがある。
- cfn-init
EC2へのパッケージのインストールやファイルの作成、サービスの開始に使用できる。 - cfn-signal
CreationPolicy または WaitCondition でシグナルを送信するために使用し、EC2などのリソースが作成されたときにシグナルをcloudformationに送信する。 - cfn-hup
リソースのメタデータ変更を検知して、指定の動作を実施できる。 - cfn-get-metadata
特定のリソースなどのメタデータを取得できる。
コメント