新しいwebプロジェクトに関して、やることを一覧。AWSは90種類以上のサービスがあり自分は一部しか把握していません。。。
これやったほうがいいよというサービスなどあれば教えていただけると嬉しいです。喜びます。
やることを簡単にまとめると
RDS,EC2はプライベートサブネットに配置
webサーバー2台構成で異なるAZに配置
ALBの前にWAFを使用
cloudwatchでダッシュボードやアラート作成
AWSサービス
使用サービス一覧(()内は必要であれば)
CloudTrail VPC IAM EC2 route53 (RDS) (cloudfront) (ACM) WAF Cloudwatch
◆CloudTrail
・awsアカウント全体の操作ログを記録
◆VPC
構成:
・東京リージョン
・サブネットはプライベートサブネットとパブリックサブネットを各2つずつ、かつ各サブネット異なるAZ
・EC2インスタンスとRDSはすべてプライベートサブネットに作成
・クライアントのhttpリクエストは右のような流れ⇒【IGW-WAF-(cloudfront)-alb-ec2 (レスポンスはこの反対)】
・EC2がIGWを通る方法はNAT経由、右のような流れ⇒【EC2-NATGW-IGW】
・新規EC2インスタンスのsshアクセスは踏み台経由、のような流れ⇒【踏み台はユーザーと鍵認証-踏み台からsshコマンドでユーザーとパスワード認証】
・踏み台用VPC作成、プロジェクトごとのVPC作成後お互いにピアリング接続
踏み台VPC作成(踏み台がない新規AWSアカウントのみ、かつDefaultのVPC使うなら不要)
- VPC作成
- サブネット作成(パブリックサブネットを一つ作成)
- IGW作成
- ルートテーブル:ルートタブIGWをアタッチ,サブネットの関連付けタブで明示的にサブネットを当てる
新規プロジェクトのVPC作成
- VPC作成
- サブネット作成,PrivateSubnetをことなるAZで2つ,PublicSubnetを異なるAZで2つ作成=合計4つ作成
- IGW作成
- PCX作成 踏み台VPCと新規プロジェクトのVPCを作成。承認する必要あるので承認する。
- NATゲートウェイ作成 EIP新規割り当て
- ルートテーブル1つ作成 合計2つあるテーブルをPraivateとPublicに分けPraivateをメインにする
- Praivateのルートテーブルのルートタブに作成したPCXとNATを登録、サブネットの関連付けタブで明示的にPrivateSubnetを2つ登録
- Publicのルートテーブルのルートタブに作成したIGWを登録、サブネットの関連付けタブで明示的にPublicSubnetを2つ登録
- 踏み台VPCのルートテーブルにPCXを登録
◆IAM
新規ロールをアタッチ。ポリシーは必要に応じて後でつけるので無し。
- IAMロール作成
◆EC2
構成:
・webサーバーを2つ構成で冗長化(プライベートサブネットで各異なるAZに配置)
・必要に応じてautoscalling、リザーブドインスタンスの権利購入、など
踏み台VPCの構成
- PublicSubnetにインスタンス作成
- 作成したインスタンスにEIPを当てる
新規プロジェクトの構成
- ポートセキュリティの作成 ポート:ssh,http,(https)
インスタンスの作成、プライベートサブネットで各異なるAZに配置、ロールの割り当て、セキュリティグループ割り当て、自動割り当てパブリックIP無効
ALBを作成 Publicサブネット異なるAZに配置、webサーバーを2つ登録、
ALBのロギング設定、セッションの維持、ヘルスチェックの変更
◆route53
- お名前などのサービスからドメインの取得
- route53に取得ドメインを登録
- お名前などドメインをとったサービスからAWSのネームサーバーに変更
- route53必要なサブドメインなど登録 (AレコードにAliasでELBのドメインを登録)
- route53のオプション機能geolocationで国を制限
◆WAF
- プロジェクトごとにあった設定
- 設定後新規プロジェクトのALBに当てる
◆Cloudwatch
- ダッシュボードの作成
- アラートの作成
【AWS自分用メモ】Cloudwatch 監視事項・アラート
amazon linuxの中の設定
◆OS amazon linux
時間の設定
Linux インスタンスの時刻の設定apache,php,phpモジュールなどのインストール
httpd,logrotate,php.iniの設定 (httpdのログとalbのヘルスチェックは分ける)
【AWS自分用メモ】webサーバーに関しての設定公式カスタムメトリクス実装
公式カスタムメトリクス実装