個人的なまとめ。

てきとーに何か書きます。

個人的なAWSまとめ

仕事でAWSを使うようになって、ちょっとずつ理解してきたのでまとめておく。

1. セキュリティグループまわり
RDSで作成したDBにEC2インスタンスからアクセスする時に、

mysql -h [RDSのエンドポイント] -P [PORT] -u [USER] -p 

と打ってもログインできない時は、RDSにくっ付いているセキュリティグループの設定が間違っている可能性がある。
インバウンドルールで3306や1521に対してルールが無ければ入れない。
ここが間違っていて、全然入れなくてしばらく時間が掛かった。


2. EC2まわり
EC2で最安なのはt3a.nanoだけど、これはAMD系のCPUを使用しているからt3a系ではなくt3系を使用するようにしている。
t3aは、AMD EPYC 7000 シリーズを使用。
t3は、Xeon Platinum 8000 シリーズ を使用。
詳しくはここ。Amazon EC2 T3 インスタンス | AWS

また、t2よりもt3の方が料金が若干安く、スペックもt3の方が良いのでそっちを利用。
t2やt3の数字はバージョンを表していて、数字が大きいほど最新ということ。

t3.mediumを1ヶ月丸々使用していると、1時間約5円 × 24時間 × 30日で大体3,600円ぐらいになる。
これにEBSの使用料なども入ってくるので、大体4,000円/月という感じになる。
これだと高すぎるので、絶対に使わない時間帯(深夜帯)などは停止させたいので、下記のリンクを元に定期的に停止・実行を行ってくれる仕組みを作った。
dev.classmethod.jp
nanoやmicroなどの小さいインスタンスだと月額がそこまで高い値段にはならないが、medium以上になると結構高い料金になるので、こういうスクリプトはどんどん使うべき。
他にもdynamoDBを使用して停止・実行をするやる方も有るが、個人的にはこっちの方が楽で良い。
何より、EC2インスタンスに設定したタグをTrueからFalseに変更してやるだけで、いつでも定期的に停止・実行を行わなく出来るので、非常に楽。
複数設定して、平日はこう、土日はこうみたいな感じで設定しても良いと思う。

基本的に仕事で使う場合は、踏み台サーバを用意してそこを経由して本番サーバに入っていく。
なので踏み台にだけElastic IPを割り振っておき、本番サーバはVPCのプライベートIPのみを利用するっていう形が基本なのかも知れない。
踏み台は本番サーバに入らない時は停止させて置けばセキュリティ的にも高くなる。


思い出したら追記する。