本日勉強したことをメモします。
S3のストレージクラスの使い分け
試験問題で日時のジョブを実行する場合のS3ストレージクラスを選択する場合、基本的に標準クラスが正解。 S3-IAやGlaicerなどはデータ取得に時間がかかるため。
データを保存する場所のコスト
データを保存しておく場合、DynamoDBに置くよりもS3に置いた方が安いため、アプリからDynamoDBに書き込んだ後S3にデータを移してDynamoDBの方は消しておくという方法もある。
SQSでコストを抑える方法
DynamoDBにデータを書き込むアプリの場合、SQSキューを使うことで書き込み処理をバッファしたり、プロビジョンド書き込みスループットを削減する効果がある。
Auto Scaling Groupで起動するインスタンスにユニークな証明書を埋め込む
Auto Scaling Groupで起動する各EC2インスタンスにx.509のインスタンスIDを持つユニークな証明書を埋め込むには以下の方法がある。
・Auto Scaling GroupでAWS Certifiacate Managerに新しいインスタンスを起動した通知を送り、ACMを使って証明書を作成する。
EIPが必要ない場合
オンプレミスからAWSにアプリケーションを移行する際 、移行先のVPCがオンプレミスのサーバーとプライベートIPで接続できるならEIPは必要ない。
クライアント側のHTTPS通信の設定
クライアント側でHTTPS通信を設定するには以下のような設定が必要になる。
・ELBをTCPリスナーで443ポートに設定し、ウェブサーバーをその後ろに置く。
・ウェブサーバーにEIPを設定し、ウェブサーバーのIPをRoute53レコードセットのエンドポイントにして、それぞれのウェブサーバーにヘルスチェックを行う。
IDS/IPS対策について
IDS/IPS対策は以下のように設定する。
・VPC内にある各インスタンスにIDS/IPSエージェントを埋め込む。
・Webサーバーの前にリバースプロキシレイヤーを置き、IDS/IPSエージェントを各リバースプロキシサーバーに埋め込む。
特定のIPアドレスからのアクセスを拒否する場合
特定のIPアドレスからのアクセスを拒否する場合は、セキュリテイグループではなくNACLを使う。
セキュリテイグループはデフォルトで全ての通信が拒否されている、かつポートアクセスを拒否することはセキュリティグループではできないため。
Proxy Protocolについて
ELBはProxyプロトコルをサポートしている。クライアントのIPアドレスを取得する場合はProxyプロトコルが必要になる。