むらじゅん風呂具

ITエンジニアとたまに歌手と司会などで活動する村中淳のブログ

【AWS】Hands-on for Beginners のチェックしたところを調べていく

スケーラブルウェブサイト構築編を復習。
動画を見ずに同じアーキテクチャを作れるようにAWSを身体に馴染ませた。
学べる喜びを深く感じられたのでチェックしたところを調べていく。

EC2 作成時のユーザ データ

設定したユーザ データを実行する場合のユーザ は?と思ったので、
公式ドキュメントを確認。

ユーザーデータとして入力されたスクリプトは、root ユーザーとして実行

だから、sudo入れてなかったのか。

他にどんなことができるかと考えていたが以下のように記載。

より複雑なオートメーションのシナリオに興味がある場合、AWS CloudFormation や AWS OpsWorks のご利用を検討してください。

言われてみればそうか。こっちあるもんね。

EC2 作成時のセキュリティグループ

タイプ:HTTP とした場合に、ソース:任意の場所 としていた。
意図として何かあるのかなあと思ったが公式ドキュメントには以下のように記載。

セキュリティグループが、IPv6 に対して有効な VPC にある場合、[任意の場所] オプションによって 2 つのルールが作成されます。1 つは IPv4 トラフィック (0.0.0.0/0) 用、もう 1 つは IPv6 トラフィック (::/0) 用です。

これは、0.0.0.0/0 になるってことでそれほど深く考えなくても良さそう。

ブラウザ経由のインスタンス接続、他のOSだとどうなる?

RHEL8を選択、同じようにブラウザ経由の接続を試したところ、

f:id:pj124183:20191230143203p:plain

この表示からしばらくしてRetryするも接続できず。
接続時のユーザー名を、[ec2-user] [root] をそれぞれ試すも変わらず。
原因はわからないが、そこまで使うかなという気もするので深追いせず。

Windows Server 2019 ではそもそもメニューがなかった。

f:id:pj124183:20191230152445p:plain

RDSの作成に必要なDBサブネットグループ

DBサブネットグループ = RDSを作成するサブネット群のこと。
マルチAZ化をするためにサブネットを2つ入れていたが、
シングルにできるのか、挙動で確認したいと思ったので、以下を実施。

1.動画で作成したデータベースのマルチAZを[なし]に変更

2.現在のデータベースがあるAZを確認
ap-northeast-1c であることを確認

3.作成したDBサブネットグループ [db-subnet-group] のサブネットを削除

・ap-northeast-1a 、ap-northeast-1c それぞれ削除しようとすると怒られる

f:id:pj124183:20191230150339p:plain

エラーに書いてある通り、DBサブネットグループには少なくとも2つのアベイラビリティーゾーンをカバーするサブネットが必要になる。

AMI作成時の[再起動しない]オプション

チェックしなかった場合、
作成実施したタイミングでコピー元のEC2インスタンスが再起動される。
オプションの補足には以下の記載。

有効な場合、Amazon EC2 はイメージの作成前にインスタンスをシャットダウンしません。このオプションを利用すると、作成したイメージのファイルシステムの完全性は保証できません。

システムの完全性を求める場合はチェックしないほうが良さそうだ。

いったんはこんな感じでおしまい。

手を動かしていくのはやっぱりよい

まずは動画の手順をきちっと認識する。
その上で疑問に浮かんだことの検証、
ドキュメントを見ながら、実際に動かしてみてどうなるか、
挙動を見たほうが自分としては飲み込みがしやすかった。

いまの自分でどれだけできるか。
年末年始もう少し踏み込んでいこう。