Practice Test #2 (AWS Certified Developer Associate - DVA-C01) CodeBuild→buildspec.yml
CodeDeploy→appspec.yml
修正がapigatewayに反映されていない→redeploy
他のaz使っていたEBSをアタッチできない→EBSはゾーンリソースなのでコピーとかして対象azにもっていかないと無理
ElasticBeanstalkで常に最新かつ最大のキャパシティを維持してデプロイする→immutable
immutableでは現在のインスタンスの上で動いているアプリを入れ替えていくのではなく、完全に新しいインスタンスに最新を展開して、そのまま入れ替える
起動したEC2が基本的なモニタリングしか有効になっていない→マネコンの起動テンプレートからEC2を起動したからの可能性が高い
CodeDeployでデプロイの成功を確認するためのフックイベント→ValidateService
DynamoDBで複数テーブルをトランザクションで書き込む→TransactWriteItems
IOPSの最大はIOPS:GiB=50:1
200GiBだと最大IOPSは200*50=10000IOPS
200GiBで15000IOPSは不正なリクエストである
CodeBuildのログをAthenaで分析する→CloudWatchLogsのS3インテグレーションでS3にログを蓄積する
S3に大容量の動画データを直接アップロードが失敗する
multi-part upload
dynamoのread capacity
1read per sec/4kbのアイテム
10read per sec/6kbが要件の場合
20unit必要
lambdaでデータの暗号化/復号化処理をする
KMSでは4kbまでのデータであれば直接KMSに送って暗号化できる
より大きいデータの場合はエンベロープ暗号化
Regional and zonal Reserved Instances
料金に差はない
capacityを調節する必要がある場合はzonal reserved instance
Dynamodbで常に最新の値を読み込む
ConsistentRead
DynamoDBで想定していないアイテムの上書を防ぐ
Conditional Writes(条件付き書き込み)
同じ主キーを持つアイテムまだない場合のみPutItemを成功させたいなど
lambdaバックエンドがレイテンシのボトルネックにならないようにトラフィックスパイクに備えたい
lambdaは自動でスケールするけどスケーリングする最中はレイテンシが遅くなる
トラフィックのピークを見越して同時実行性をプロビジョニングしておく
lambda provisioned concurrency
Application Auto Scaling
SESでThrottling – Maximum sending rate exceeded.Error
lambdaでdockerイメージを実行する
コンテナはlambda runtime apiを実装していること
ECRとlambdaは同じawsアカウントであること
CFで有効なパラメータ
code:text
String – A literal string
Number – An integer or float
List<Number> – An array of integers or floats
CommaDelimitedList – An array of literal strings that are separated by commas
AWS::EC2::KeyPair::KeyName – An Amazon EC2 key pair name
AWS::EC2::SecurityGroup::Id – A security group ID
AWS::EC2::Subnet::Id – A subnet ID
AWS::EC2::VPC::Id – A VPC ID
List<AWS::EC2::VPC::Id> – An array of VPC IDs
List<AWS::EC2::SecurityGroup::Id> – An array of security group IDs
List<AWS::EC2::Subnet::Id> – An array of subnet IDs
ApproximateNumberOfMessagesVisibleはSQSのメトリクス
Dynamodb tableをs3にバックアップする
DynamoDB on-demandバックアップではAWSが管理するS3にバックアップされるのでユーザーは直接アクセスできない
S3に直接バックアップしたい場合はDataPipeline/EMR/Glueを使用する
kinesis data streamsでProvisionedThroughputExceeded exception
shardを増やす
GP2SSDでの最大IOPSは5.3TiB
SQSで遅延キューを使ってメッセージの配信を遅らせることができる
最大15分遅延できる
RDSでIAM認証ができる
RDS MySQL
RDS PostGreSQL
AWS CodeDeployは、以前にデプロイされたアプリケーションのリビジョンを、失敗したインスタンスの新しいデプロイとして再デプロイすることにより、デプロイをロールバックする
CodeDeployで失敗した時にロールバックするのは、失敗したインスタンスに対して昔のリビジョンを再デプロイする
新しいインスタンスをつくりなおすとかではない