AWSまとめ
AWSでサービスを構築する流れというか大枠について、全然知らなかったので、papi_tokei さんに教えていただきました。
話を聞きながらメモをしていたので、箇条書きすぎて意味不明な箇所もあるかと思いますが、ここにのせておきます。
・EC2
Netlifyみたいなものと思っていたら、VPSみたいなもの。Linuxなどが動いていて、SSHでアクセスして使う
・Lightsail
WordPressを簡単に使うなどの用途で使う、従量課金制ではない
LightsailでできることはEC2でもできる
・VPC
EC2やデータベースなどをひとまとめにしたもの。この中ではEC2などのインスタンス同士がローカルネットワーク的につながっている。
サービスごとにこのVPCをわける。
・ELB
ロードバランサー、VPCの入り口
アクセスを各インスタンスにふりわけてくれる
「AWS ELB」で検索すると、このメモに書かれているサービスの構成の、きれいな図がでてきて全体を掴みやすい
データベースはアプリ本体と分けて設置した方がよい(ユーザーの操作などで変わらないもの、変わるものを分ける) → 分けないと、サーバー増強が必要な際にスケールアップしか手段がなくなる
・スケールアップ・スケールアウト
サーバー一台を増強するのがスケールアップ、サーバーの数を増やして対応するのがスケールアウト
・リードレプリカ
AWSでデータベースを作る際、読み込み専用のDBとして、マスターDBと同期された、複数のDBにアクセスをふりわけることができる。そのような設定がある。
・Aurora(データベースサービス、利用料金がちょっと高い)
・マルチマスター(読み込み用だけでなく、書き込み用のデータベースを複数用意したい場合は、このワードで検索するとよい)
・VPC内のサーバーには直接つなげない、踏み台サーバーをつかうことが多い(そのサーバーもEC2でつくる)
セキュリティグループ
踏み台サーバーにアウトバウンドを、操作したいサーバーにインバウンドを、それぞれ設定してつなぐ
最近はSystems Managerで接続する方法もあり、AWSのコンソールにアクセスできればWeb上でSSHログインできる
・IAM
ユーザーアクセスの管理
・AWS料金計算
1時間ごとの利用料 x 24時間 x 365日 + データトラフィックの値段
プロダクション利用不可のプランもある
EC2は停止していてもお金がかかる
事前にあるていど予測したい時は・・
・Cost Explorer
・AWS Budget
設定した予算の何%に達した場合、メールなどでアラートを送るよう設定ができる。思わぬ高額請求になる前に知ることができる。
・CloudWatch
メトリクス(サービスの状態を数値化したもの)
ダッシュボードをつくることで、サービスの状態を確認できる
アラームで、設定した状態を超えた場合はAuto Scaleするなどの設定ができる
・Beanstalk
EC2で難しかった、アプリのデプロイの自動化を簡単にできるようにしたサービス(EC2を便利に使うためのもの)
ここで作られたEC2インスタンスは、EC2の管理ページにならぶ
アプライするとURLが作られる (Netlifyみたいな)
GitHubとも連携できる
(ブルーグリーンデプロイ)