こちらはシリーズ記事の後編です。
前編はこちらからどうぞ。
【初心者向け】AWSは怖くない!これだけ読めばAWSのアーキテクチャ図がわかるようになる〜前編〜
前回の続き
ここでちょっと図を整理します。
・3層アーキテクチャの各層の名称を削除
・仮想サーバー(インスタンス)の領域を明確化
世界中にあるAWSのサーバーの中で、どこにあるサーバーを使いたいですか?
AWSは世界各地にの主要な都市(リージョン
)ごとに、複数のデータセンター群(アベイラビリティゾーン
)(イメージ図)があり、それぞれに固有のIDが振られています。
現在、日本を例にとると…
・東京リージョン(ap-northeast-1)
4つのアベイラビリティゾーン(ap-northeast-1a ~ ap-northeast-1d)
・大阪リージョン(ap-northeast-3)
3つのアベイラビリティゾーン(ap-northeast-3a ~ ap-northeast-3c)
※ちなみにap-northeast-2はソウル(韓国)です。
ユーザーがアクセスする場所からサーバーが物理的に近いと、Webアプリのレスポンスの遅延を最小限に抑えられます。そのため、AWSを使う際には、ターゲットユーザーの把握が大事です。
リージョン
・リージョンによって利用料が異なる
・リージョンごとに提供されているサービスが異なる
マルチリージョン
・障害対策やアクセスの分散化のため、複数のリージョンを利用してシステムを構築する構成
アベイラビリティゾーン
・AZと略されることもある
マルチAZ
・早速「AZ」がでてきましたね!
・障害対策やアクセスの分散化のため、冗長化のため、複数のAZを利用してシステムを構築する構成のこと
・AWSが推奨する構成
スケーラブル
・「アクセスが増えたときに、大規模な変更なしにサーバーを増やせます」を一言で言うとこうなる
・AWSのサービスを象徴するような言葉
都市とエリアが決まったなら、土地を決める
都市(リージョン
)とエリア(AZ
)を決めた後は、土地(VPC
)を決めましょう。
VPC
とは、プライベート仮想ネットワークのことで、この中でインスタンスが稼働します。AWSが所持する広大な土地の中で、自分の土地を手に入れられるイメージです。
VPC
・Virtual Private Cloudの略
・プライベートな仮想ネットワーク
・「プライベート」=「外部からのアクセスを遮断」今の状態だとユーザーはWebアプリにアクセスできない
・VPCを構築するためにはネットワークで使用するIPアドレスの範囲をCDIR表記で決めなければならない
リージョン
、アベイラビリティゾーン
、VPC
を図に追加するとこんなかんじ。
自分の土地に家を建てる
VPC
という土地に家を建てたいと思いますが、部屋割り(サブネット
)はどうしましょうか?
まずは居間や客間などのパブリックスペース(パブリックサブネット
)と、寝室や浴室などのプライベートスペース(プライベートサブネット
)に分かれますね。
このようにVPC内でも、インターネットから直接アクセス可能な部分(WebサーバーやAPサーバーにあたる)はパブリックサブネット
、インターネットから直接アクセスできない(DBサーバーにあたる)はプライベートサブネット
に設定にします。
サブネット
・VPCという大きなネットワークを分割したネットワーク
・利用する目的に応じて、VPC内のIPアドレス範囲をCDIR表記で分けて取得できる
・それぞれのサブネットは独立しており、干渉しない
パブリックサブネットとプライベートサブネットをAZごとに図に追加します。
(例)ダミーでVPCとサブネットのIPアドレスの範囲を書くとこんなかんじ(飛ばしてもOK)
リソース名 | サブネットID | IPアドレスの範囲 | ゾーン |
---|---|---|---|
VPC | - | 10.0.0.0/16 | - |
パブリックサブネット_1 | subnet-12345678 | 10.0.0.0/24 | us-east-1a |
パブリックサブネット_2 | subnet-abcdefgh | 10.0.1.0/24 | us-east-1b |
プライベートサブネット_1 | subnet-1a2b3c4d | 10.0.2.0/24 | us-east-1a |
プライベートサブネット_2 | subnet-abcd1234 | 10.0.3.0/24 | us-east-1b |
※各サブネットは同VPC内にする必要があり、'10.0'まで同じであれば同VPCとみなされる
IPアドレスやCDIR表記については説明が足りないので、後で記事を書きたいと思います。
今はVPN
の中に、サブネット
という小部屋があって、それぞれ独立しており、干渉しないということをおさえてもらっていればOKです!
家の中に廊下・ドアをつける
つい先ほどサブネット
はそれぞれ干渉しないと言いましたが、EC2
からRDB
にアクセスができないとWebアプリとして使えません。
そのため、小部屋(サブネット
)しかない家に廊下・ドア(ルートテーブル
)をつけて、小部屋をつなげましょう。
ルートテーブル
・ネットワークの経路を設定する
あ!玄関がない!
VPCとは、プライベートな仮想ネットワークのことでした。「プライベート」=「外部からのアクセスを遮断」ということです。今の状態だとユーザーがWebアプリにアクセスできません。
家に玄関(インターネットゲートウェイ
)をつけることで、外部のユーザーがVPC内のパブリックサブネットにアクセスすることができます。
インターネットゲートウェイ
・パブリックサブネットへの入り口、これがないとWebアプリにユーザーがアクセスできない
ルートテーブル
とインターネットゲートウェイ
を図に追加します。実は、ここでやっとリクエストの処理を表す線を書けます。BeforeとAfterの対比をわかりやすくするため、Before図では線を消しています。
ちなみにルートテーブル
やインターネットゲートウェイ
の紫のアイコンはネットワーク関係のサービスを表します。このような情報はここからわかります。
基本的な流れはここで終わりです。
最後にオプションを決めよう
最後にもうちょっとサービスを足したいと思います。
※RDSはプライマルとサブに分け、サブにはプライマルのデータをコピーして保存するとします。
ここで追加したサービスは以下です。
Elastic Load Balancing
・負荷分散サービス
・大量のアクセスがあった時、複数のサーバーにアクセスを振り分ける
Amazon S3
・データのストレージサービス
まとめ
ここでもう一度、前回の記事の最初のアーキテクチャ図を見てみましょう。記事を読む前よりちょっとは怖くなくなったという人がいたら嬉しいです。
引用元「AWS のアーキテクチャ図を描きたい ! でもどうすれば良いの ?」1
Route 53
・DNS (ドメインネームサービス)
・好きなドメイン名を取得できる
Cloud Front
・静的/動的ウェブコンテンツの配信速度を高速化させることができるサービス
VPN gateway
・外部ネットワークからAWSのVPN内に安全に接続できるサービス
今までの図はこちらから見れます。
前編はこちらからどうぞ。
【初心者向け】AWSは怖くない!これだけ読めばAWSのアーキテクチャ図がわかるようになる〜前編〜
次のステップには何がある?
AWSアカウントを作成してから1年間はほとんどのサービスが無料で使えますので、気軽に取り組んでみてください〜
▼記事を読んでもAWSのことがいまいち分からなかった人はこちら
はじめに押さえておきたい!初学者向け AWS キーワード Top 10※資料は概要欄より取得いただけます
私の推し、AWSの中の人ゆっきーこと高橋敏行氏の解説動画です。このシリーズ記事を書いたのも、この方の動画を見て触発されたからだったりします。この人が宣伝する商品なんでも買ってしまいそうになるくらい説明がうまい。声の抑揚のコントロールが完璧。早すぎたtiktokerでもあります。そりゃあ説明がうまいわけよ。
▼AWSの公式の資料を使って勉強したい人はこちら
AWS ハンズオン資料
▼実際にAWSを使って、システム構築をしてみたい人はこちら
スケーラブルウェブサイト構築 ハンズオン
▼アーキテクチャ図を書きたい人はこちら
AWS アーキテクチャアイコン アーキテクチャダイアグラムを構築するための AWS 公式アイコンセット
アイコンの色の意味やアーキテクチャ図を作成するときのルールがわかるのでおすすめ。
余談
アーキテクチャ図は本当は最新のアイコンで作らないといけなんですけど、draw.ioに最新のものがなかったので、古いもので作っています。この記事、参考になるので、おすすめです!
新 AWS アーキテクチャアイコンで構成図を書いてみた(2023/4/28 にリリースされた新アイコン)