AWSについて学習したこと<その1>

f:id:endoakak:20200725102930j:plain

AWSについて2, 3日ほどかけてざっくり勉強しようかと思っています。

経緯

どうしてそうなったかというと、

アプリを作ったのなら、使ってもらえるように公開したい

HerokuでもいいけどAWSでデプロイする方が良さそう

一つ目のアプリはカリキュラムなりQiitaなりの指示通りにやってデプロイすることはできたけど、何をやっているのか理解していなさすぎてなんだか気持ち悪い

どういうものなのか、基礎的なことは知った上で使いたい

という流れで、AWSって何?というレベルから、どういうことができるものなのかわかるぐらいにはなろうと思いました。

完全に理解しきるのではなくなんとなく概要を掴むのを目標に、時間をかけすぎないように気をつけようと思います。

勉強したことのメモという感じで書いていきます。

AWSの基本的なこと

AWS

Amazon Web Servicesの略。Amazonが提供しているクラウドサービス。

クラウドサービス

インターネットで接続して使用できるサービス

ルートユーザー

全ての機能を管理できるユーザーアカウント。AWSのアカウントを作成すると、ルートユーザーのアカウントが作成される。

IAMユーザー

使用できる機能をあらかじめ設定できるアカウント。全ての機能を使えるルートユーザーで頻繁にアクセスするのはセキュリティ上好ましくないので、IAMユーザーを作成する。複数人で管理するときなども便利。

CloudWatch

AWSの請求額が設定した値を超えたらメールでお知らせする機能。

リージョン

AWSのサービスが提供される地域。東京とか、香港とか、オハイオとか。特別理由がなければ東京でOK。

アベイラビリティーゾーン

独立したデータセンターのこと。一つのリージョン内に複数のアベイラビリティゾーンがある。東京には3種類。災害などで一つがダウンしても、サービスがストップしないという利点。

ネットワーク関連

VPC

AWS上に仮想ネットワークを作成することができるサービス。

サブネット

VPCで作成したネットワークを分割するもの。ネットワークを区切る利点は、インターネット接続の有無によってパブリックサブネットとプライベートサブネットに分けられることと、複数のアベイラビリティゾーンに配置できること。

IPアドレス

インターネット上の住所。ネットワーク部とホスト部に分けられる。

CIDR表記

IPアドレスの後ろにスラッシュとビット数を表示して、IPアドレスのネットワーク部を示す表記。

255.255.255.255/24だったら、前から24ビット、つまり3つ目の255までがネットワーク部を表し、4つ目の255がホスト部を表す。

ルーター

IPアドレスの宛先を管理しているもの。あるIPアドレスが自身のネットワークなのか別のネットワークのものかを判断し、次の宛先を示す。

ルートテーブル

IPアドレスとターゲット(次のルーター)を設定しておく表。VPCと各サブネットについて作成。

宛先のIPアドレス ターゲット
10.0.10.0/16 local
0.0.0.0 インターネットゲートウェイ

localは自身のネットワークであることを示す。0.0.0.0はデフォルトルートと言って、設定していないもの全てを意味する。この場合、10.010.0/16以外の全て。インターネットにつなぎたいときはターゲットをインターネットゲートウェイにする。

インターネットゲートウェイ

VPC(サブネット)とインターネットをつなぐ仮想のルーター