00
SSH接続でEC2に接続できないときに
IPポート22を介してインバウンドトラフィックを許可するセキュリティグループを設定する
インターネットからのトラフィックをEC2に届ける
インターネットに面した Application Load Balancer は、ALB を指す外部 DNS を使用して、基盤となる EC2 インスタンスを公開する。
EC2をエンドポイントとしてインターネットに面したALBを起動する
01
負荷軽減 ウェブ層のコスト最適化、予想されるトラフィックを処理する
ELB背後のAuto ScalingグループでEC2を起動する
S3n静的コンテンツを指すCloud frontでディストリビューションする
操作ミスによるEC2インスタンスの削除を防ぐ!終了保護の設定方法
disable-api-terminationオプションを指定
高可用性を確保する
可用性(Availability)とは、システムを障害(機器やパーツの故障・災害・アクシデントなど)で停止させることなく稼働し続けること、またはその指標のことをいいます
RDS for PostageSQLデータベースでマルチA-Zを有効化する
Amazon RDS マルチ AZ 配置では、RDS データベース (DB) インスタンスの可用性と耐久性が強化され、プロダクションデータベースのワークロードに適しています。
配信データをアーカイブする
Lambda SNS SQSを使用する
不正侵入検知防御システム(IDS/IPS)を導入したい IPSを使用しインターネットからのトラフィックを保護する
インスタンスorリバースプロキシ層にIDS/IPSエージェントを導入する
WAFの特徴は通信データの内容を機械的に解析できる点であり、従来のファイアウォールやIDS・IPSではブロックしきれなかった、ユーザからのリクエストに応えて動的なページを生成するタイプのWebサイトへの攻撃を防ぐことができます。
2
データベースの読み込み処理を向上させる Auroraのデータベース
リードレプリカを作成すると負荷軽減できる
EBSを使用してEC2でデプロイして暗号化するときにアプリケーションを変更せずに満たす方法
AWSの管理キーで暗号化されたEBSストレージボリュームを使用する
レイテンシーを抑える
クラスタープレイスメントグループ
フロントエンドのロードバランサーのみインターネットに公開する
ロードバランサー層;パブリックサブネット
アプリケーション層:共有プライベートサブネット
APIをバックエンドで構築してウェブページからAPIを呼び出すとエラーになる
API GatewayでCORSを有効にする
ブラウザで実行されているスクリプトから開始されるクロスオリジン HTTP リクエストを制限するブラウザのセキュリティ機能
3
動画ファイルのアップロードを早くする
マルチパートアップロード
VPCのデフォルト
デフォルトサブネットはパブリックサブネット、メインルートテーブルがインターネットゲートウェイにルーティングされている
プロビジョニングや管理を行わずにアプリケーションを出す
API Gateway とLambda
4
Management Consoleの権限不足エラーをデコードする
AWS CLI
STSのDecodeAuthorizationMessage API
5
ALB アプリケーションサーバー データベースからデータベースから構成されたVPCでプリケーションが稼働していて、限られたIPからのみトラフィックを受け入れるには
X-Forwarded-Forヘッダーを使用する
クライアントのIPアドレスを識別することができる
SSH を使用してインスタンスに接続している場合 ログインできない
・秘密鍵ファイルが起動時に割り当てられたEC2キーペアに対応していること
・AMI用の適切なユーザー名で接続していることを確認
UDPベースのアプリケーションのリクエストをルーティングしている際にパフォーマンスを向上させる
Network Load Balancer Global Accelerator
6
Cloud Frontを使用していて更新しても更新されない
Cloud Front でィストリビューションで無効化を実行する→キャッシュを無効にする
2段階認証
SMS MFAを使用した AWS Cognito
7
同じリージョンの複数のazのクラスタで複数のEC2が実行されている。パフォーマンスを向上させるには
拡張ネットワーキング
Amazon HVM AMI
8
9
10
テンプレートに重要なベストプラクティス
ネストされたスタックの操作
ネスト化されたCloud Formationテンプレートをチームに提供する
https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html
11
マイクロサービスを設計する方法
Lambda関数
本番用VPCでEC2インスタンスへのネットワークアクセスログを記録したい
本番用VPCでVPCフローログを有効にする
12
13
AWS 上で Elastic Load Balancing と Auto Scaling を使用してデプロイされたアプリケーションは、負荷が増加すると Auto Scaling は新しいインスタンスを起動するが、他のインスタンスの負荷は減らない。ユーザーエクスペリエンスの低下の原因
ELB はステートフルで、Cookie ベースのセッションを使用するため負荷が減少しない。そのため、以前に確立されたセッションにリクエストを送信し続けている可能性があり、既存のユーザーエクスペリエンスの低下が発生する。
→Classic Load Balancer のスティッキーセッションを設定
ロードバランサーがユーザーセッションを特定のインスタンスに結び付けるように構成します。こうすることで、同一セッション中の同一ユーザーからの全リクエストが同一のインスタンスへ送信されるようになります。
14
インデックスデータ
DynamoDB
IDフェデレーションとロールベースのアクセス制御
IAMロールとAD Connector
15
基盤となる複数のバックエンドサービスに単一のインターフェースを提供することにより、ユーザーインターフェースの機能をその基盤サービスから切り離す。
API Gateway
16
1117
SQSを作成する
CloudFormation
Amazon S3リソースにアクセス許可をする
バケットポリシー
ユーザーポリシー
118
Auto Scalingの終わる順番
インスタンスが最も多いAZ内のインスタンス
119
アプリケーションがデータにアクセスする認証方法
・IAMデータベース認証を有効にする
・AWS認証とクーンを使用するデータベースユーザーアカウントを作成する
プライベートサブネットのインスタンスからインターネットや他の AWS サービスに接続しながら、インターネットからインスタンスへ接続をさせないようにする。
NATゲートウェイ
120
Auroraで読み取り負荷が増えた際に使う
Aurora読み取りエンドポイント
位置情報ルーティングを行う
Route53