マジで何も知らないけどAWSの勉強をする 3~5日目
更新をサボりましたが勉強はやっています!アハハ!
今日でようやくDay4までの受講が終わりました…
今回からちゃんと毎回受講内容のリンクを貼るようにします。礼儀としてね!
前回まではだらだらと受講した内容や考えたこと、困ったことを書いていたんですが
そのまんま受講内容を垂れ流すのも良くないかなってのと
それでは僕の理解にも繋がりにくいというのもありますので
試しに下記のようにまとめてみたいと思います。
- その回でやったこと
- その回で困ったこと
- その回で学んだこと
それでは、Day3-Day4までをまとめます。
1.Day3-4でやったこと
★VPCを使ってネットワークを構築する★
講師の方が設計してくださった内容に沿って
AWS内でネットワークを構築し、
各サービスの機能やセキュリティの設定方法、ネットワークの設計指針について学習しました。
使用したサービスはEC2とVPCが主となります。
まずはVPCを使ってどこからどこまでのIPを借りるか、
つまりネットワークの広さを定義しました。
例によってAvailabilityZone(AZ)は複数に跨っています。
続いてVPC内にサブネット(一つのAZ内で、VPCの一部を区切って作成するネットワーク)を2つ作成します。
サブネット毎に異なるルートテーブル(アクセス許可表的なもの)を設定できるので
片方はプライベート、片方はパブリックとし、それぞれにEC2インスタンスを配置します。
プライベートサブネットにはデータベース(DB)サーバとしての機能を、
パブリックサブネットにはWebサーバとしての機能を持たせます。
DBサーバはWebサーバとは通信できるようにしておく必要があるので、
特定のセキュリティグループに属するインスタンス(?)からの通信を許可するよう設定する。Webサーバをそのセキュリティグループに割り当てておく。
プライベートサブネットにDBサーバを配置するのは、
DBにひょいひょいアクセスされて情報を盗まれるのを防ぐためです。
この辺は基本情報の試験でも問われるところですね!知ってる知ってる!
ただし、DBサーバも機能更新等のために外部に接続したいケースはあります。
VPC外に飛び出していくために、NAT GateWayというのを設定しておく。
これを使うことで、外部との通信経路を確保できる。
NAT GW自体は外部と接続するために固定のIPを持っている必要があるので
ElasticIPを取得して設定する。
文字だけだとめっちゃ分かりづらいですね!
そのうち復習編として図解を作れたらいいなあ
2.Day3-4で困ったこと
・Linuxまじで分からん
これはずっと付きまとってる問題なんですけど、
Linuxの操作マジで分かんないんですよね。
でも、AWSの機能とかサービスの概要、設計思想については
その辺の知識無くても分かるといえば分かるので
並行して勉強はするものの、とりあえずは気にしないことにしました。
・MySQLもマジで分からん
基本情報の時にSQLはちょこっと勉強したんですけど、
完全に忘れてるんですよね。これもとりあえずは気にしません。
ただ、業界の所謂デファクトスタンダード(?)ともいえるサービスについて
今の仕事で使わないとはいえ全く知らないのってやばいなと思いました…
外部の方と交流の機会を持つようにして、
自分にハッパをかけていこうと強く思いました。
3.Day3-4で学んだこと
・リージョンとAZについて
リージョンは複数のAZによって成り立つ。
AWSを活用するうえでは、可用性を重視してこれらの関係性について理解しておかないといけない。
・サブネットとVPC
VPCはあるリージョンの中でネットワーク領域を確保し、
サービスの構築を可能にするために使用する。
例えるなら農場を作るためにでっかい土地を買うサービス。
サブネットは同一VPC内の各AZ毎にネットワーク領域を作成し、
様々な機能(EC2とか)を利用できるようにするサービス。
買った土地の中に畑を作る感じ。一つの畑がダメになっても、他の畑が生きてれば大丈夫、って状態を作る。
・ルーティングテーブル
サブネット同士、サービス同士の結び付け方を決める。
畑と畑をつなぐ農道。
・セキュリティグループとACL
セキュリティグループはサブネット毎の、ACLはVPC内全体で共有の、
入出ルールを定義する。所謂ファイアウォール。
畑別の立ち入りルールと、農場全体の立ち入りルール。
こんなところです!
最後は肥しの匂いが漂う比喩ばかりでしたが、まあ良しとします。
おそらく間違っているところもあるはずなので
後々修正 or 別の日に更新ができればなと思います。
眠いので今日はこの辺で終了!