簡易なWEB/APサーバ、DBサーバのWEBアプリケーション環境をAWSで構築する。
出来上がり時のイメージは以下のとおり。
https://qiita.com/chokunari/items/28d160397b26a50d8c11
参考にした書籍
Amazon Web Services 基礎からのネットワーク&サーバー構築
https://www.amazon.co.jp/dp/B06Y5ZSYY4/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1
【ローカル環境】
MacBookPro
MacOS:Mojave 10.14.6
WEBサーバー用インスタンス構築編
手順
- AMIの選択
- EC2ダッシュボードのインスタンスメニューからインスタンスの作成。(VPCを作成したリージョンになっていることを確認。)
- Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Typeを選択。(とりあえずお試しなので無料枠のイメージを使用。)
- t2.micro(無料枠)を選択した状態でインスタンスの詳細の設定へ。(ネットワークの設定を行うため、詳細の設定に進む。)
- ネットワーク設定
- ネットワークに作成済みのVPCを割り当て。
- サブネットに作成済みのパブリックサブネットを割り当て。
- 自動割り当てパブリック IPを有効に設定。(インターネットから接続できるようにするため。)
- プライマリ IPに10.0.1.10を設定。(作成済みのパブリックサブネットに合わせる。10.0.1.1~10.0.1.254までならなんでもOK。)
- ストレージの追加へ。
- ストレージの設定
- デフォルトのままタグの追加へ。
- タグの追加
- タグの追加を押下。
- キーにName、値にWebServerを記載。(識別できるようにするだけなのでキーと値は任意でOK。)
- セキュリティグループの設定へ。
- セキュリティグループの設定
- 新しいセキュリティグループを作成するにチェック。
- セキュリティグループ名にWEB-SG(任意)を設定。
- その他は一旦デフォルトのまま確認と作成へ。
- 起動。
- キーペアを作成
- 新しいキーペアの作成。(既に作成済みの場合はそれを選択。)
- キーペア名をMyKeyに設定。(任意。)
- キーペアのダウンロード。
- インスタンスの作成。
- 作成結果確認
- インスタンスメニューを確認し、インスタンスの状態がrunningになっていれば成功。(runningの状態は課金対象(無料枠を食いつぶす)なので使用していない時は停止しておく。)
- ssh接続確認
- ターミナル起動。
- ssh -i キーペア名.pem ec2-user@パブリックIP でログイン。
- ファイアウォール設定
- セキュリティグループメニューで作成済みのセキュリティグループを選択。
- インバウンドタブをクリック。
- 編集→ルールの追加、タイプはカスタムTCP、ポート範囲は80、ソースは0.0.0.0/0, ::/0、保存。HTTPポートの解放が完了。
- 同じ要領でHTTPSポートの解放をポート443で行う。
- インバウンド(外からサーバにアクセスする向き)はSSH(22)、HTTP(80)、HTTPS(443)のみが解放、アウトバウンド(サーバから外への向き)は全て許可、のファイアウォールが完成。
- WEBサーバーのインストール&設定
- 今回はインフラ構築メインなので省略。
- DNS名前解決の設定
- VPCダッシュボードのVPCメニューで作成済みのVPCを選択。
- アクションボタンからDNSホスト名の編集を選択。
- DNSホスト名の有効化にチェックを入れて保存。
- EC2ダッシュボードのインスタンスメニューでパブリックDNS、プライベートDNSの値が設定されていることを確認。(パブリックDNSはインスタンス起動中のみ値が設定される。また、固定のドメイン・IPにしたい場合はRoute53等でドメインの取得とElasticIPの割り当てが必要。)
ここまででインターネットに繋がるWEBサーバーの構築が完了。
DBサーバー用プライベートサブネット構築編に続く・・・!
https://qiita.com/chokunari/items/4ac215fd0a5d5305dc58