星の鼓動は愛

平凡サラリーマンが副業にコミットしてイケてるオッサンになるためのブログ

AWS環境を構築する1~AWSとネットワーク

猫も杓子もクラウドだ。 しかしプロのシステム担当者のいない企業が、システム開発会社との
情報の非対称性に苦しんでいることは以前も言及した。

danceswithwolves.hatenablog.com

そこで僕は個人事業の事業ドメインを広げるために、Webテクノロジーを勉強することにした。
僕自身が専門の開発者となるわけではないが、例えば開発会社との橋渡しをする場合でも
共通言語として役に立つだろう。
また現代社会においてITやWebは会計や法律、語学などと同様にビジネスパーソンにとっては
必須の知識
といっても過言ではない。
そこで備忘録もかねて、僕自身がネットワークやサーバーを構築し、Webアプリケーションを
動かせるようになる過程ををまとめていきたい。

f:id:danceswithwolves:20160829223824j:plain:w500

物理的ネットワークとAWS

ネットワークやサーバーを構築するにはインターネットと接続する回線やさまざまなサーバー、
それらを接続するハブやルーターなどのネットワーク機器が必要だ。
これまで、それらの機器はオフィスや社内のサーバールーム、データセンターに存在した。
僕も社内システムの調子が悪ければ情報システム担当者に助けてもらったことは何回もある。
しかしAWSAmazon Web Servicesを使うことで、仮想的にネットワークやサーバーを構築できる。

RegionとAvailability Zone

AWSは世界中に分散されたデータセンター群で構成されている。
それぞれの地域に存在するデータセンター群を「Region」と呼ぶ。
アメリカやヨーロッパだけでなく、日本にも東京リージョンがある。
さらにそれぞれのRegionは「Availability Zone(AZ)」に分割されている。
AZが物理的に離れ独立していることで、自然災害などの不測の事態になった時に
リスクが分散されるのである。
例えば23区のAZにサーバーAを、多摩地区にあるAZにサーバーBを設置することで、
仮に23区が洪水で機能停止してもサーバーBは生きていることになる。
(もちろん上記はあくまで例えで、AZがどこにあるかは僕が知るはずはない)

Amazon VPC

Amazon VPC(以下VPC)と呼ばれる領域を作ると、そこにネットワークを作ることができる。
社内ネットワークを作るイメージだ。
具体的には「どのようなIPアドレス範囲を使うか」を指定する作業だ。

IPアドレスはネットワーク上の住所と思っていただきたい。
ある住所の敷地内に、自由にサーバーを立てていくことになる。

サブネット

VPC内にさらにネットワークを分割して利用することが可能だ。
分割したネットワークを「サブネット」と呼ぶ。
例えると敷地内にさらに自分用の領域と親用の領域を作り、
それぞれ家(サーバー)を建てるイメージだ。
親子と家でもプライベートは大事なのだ。

Amazon EC2インスタンス

ところでAWSでは「Amazon EC2(以下EC2)」というサービスを使いサーバーを作る。
構築したサーバーのひとつひとつを「インスタンス」と呼ぶ。
インスタンスを作る時にCPUやディスクの容量など設定できるのだ。
家により大きさや機能も異なるように、インスタンスごとに性能を変えることができる。

ここまでまとめると、VPCという領域内にさらにサブネットという区分けを作り、
それぞれのサブネット内にサーバー(EC2インスタンス)を立てるということだ。
(そのうち図を描きたいけど・・・)

パブリックIPアドレスとプライベートIPアドレス

インターネットと接続するためのIPアドレスを「パブリックIPアドレス」または
グローバルIPアドレス」と呼ぶ。
AWSでは「パブリックIPアドレス」と表記されているので、以下こちらを使用する。

パブリックIPアドレスは全世界で個数が決まっているので、個人で自由に作ったりはできず、
プロバイダやサーバー事業者から貸し出される。これも現実の住所が国が定めているのと似ている。

一方で、個人が自由に設定できる、インターネットでは使われないIPアドレスがあり、これを
プライベートIPアドレス」と呼ぶ。
ひとまず、お上から指定されたパブリックIPアドレスでインターネットに接続する。
そのパブリックIP内で、ネットワーク機器ごとにプライベートIPアドレスを設定するとだけ考えておく。

ここはかなり奥深い話なので、別記事にする予定だ。
というか僕自身もよく理解していないので、勉強中というのが正直なところだ。

今回はここまでにして、次回は実際にVPCやサブネット、EC2を設定し、インスタンス
Webサーバーをインストールして表示するところまで進めていきたい。