参考:Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂版
1. サーバーとは
-
Linux/Windows Serverなど、サーバー用OSをインストールしたコンピュータ
- サーバーにどのようなソフトウェアをインストールするかでサーバーの役割が決定する。
サーバーには複数のソフトウェアをインストールすることもできる。
例)webサーバーソフト + DBソフト = webサーバー兼DBサーバー
2. サーバーの構成
2.1 どのようなサーバーが必要か
| 用途 |
サーバー種類 |
説明 |
| webサイト |
webサーバー |
webの機能のソフトウェアをインストールしたもの |
| データベース |
DBサーバー |
DB機能のソフトウェアをインストールしたもの |
| メール |
メールサーバー |
メールの送受信機能のソフトウェアをインストールしたもの |
2.2 サーバー構築に必要な知識
- サーバーOSのインストール方法
- 各ソフトウェア(※)のインストール方法や設定
(※) 各ソフトウェアの例
| 用途 |
ソフトウェア |
| webサーバー |
Apache, nginx |
| DBサーバー |
MySQL, PostgreSQL |
| メールサーバー |
Sendmail, Postfix |
3. ネットワークの構成
-
TCP/IP(プロトコル)を使用
-
TCP/IPでは、それぞれのサーバーにIPアドレスを振る(他の機器と重複しない)。
- インターネット通信をするには
ルーターを用いる。
- 各サーバーでは
ルーターにデータが流れる構成にする。
- インターネットでは
ドメイン名(例:www.example.jp)を用いてアクセスする。
-
DNSサーバーの設定が必要
3.1 ネットワーク構築に必要な知識
-
IPアドレスに関する知識
-
IPアドレスをどのように定めるか。
-
ルーターを介したインターネットとデータの流れをどのように制御するか。
-
DNSサーバーに関する知識
-
ドメイン名とIPアドレスを結びつける方法。
-
ドメイン名とIPアドレスがどのように相互変換されているか。
3.2 問題を解決する様々なツール・コマンド
3.2.1 ネットワーク関連のコマンド
- ping
- traceroute
- telnet
- nslookup
- dig
3.2.2 流れるデータを覗き見るには
- ネットワークの生のデータ
- HTTPプロトコルに限ったデバッグ
4. 公開 or 隠蔽されたネットワーク
| 公開 |
隠蔽 |
| パブリックサブネット |
プライベートサブネット |
| インターネットに接続され、公開されている。 |
インターネットに直接接続せず、隠されている。 |
| webサーバー |
DBサーバー |
DBサーバーにはNAT(※)を用いる。 |
|
4.1 (※)NAT(Network Address Translation)とは
- 内部だけで通用するアドレスを、外部と通信できるアドレスへ変換する技術。
-
NATを導入すると、「片方向だけの通信を許可する」ことができる。
| アクセスの方向 |
可否 |
| DBサーバからインターネット接続 |
○ |
| インターネットからDBサーバー接続 |
× |
5. AWSのリージョンとアベイラビリティーゾーン
- 世界各地に分散されたデータセンター群のことを
リージョンと呼ぶ。
- それぞれの
リージョンは、「アベイラビリティゾーン(Availabillity Zone : AZ)」に分割されている。
- それぞれの
アベイラビリティゾーンは物理的に距離が離されて独立したファシリティを用いている(耐障害性を高めるため)。
6. ネットワークとAmazon VPC
- AWSでネットワークを作るには
Amazon VPCと呼ばれる領域を作成する。
-
Amazon VPCを作る際、どのようなIPアドレス範囲を使うかを指定する。
-
Amazon VPCを分割したネットワークのことをサブネットと呼ぶ。
-
サブネット内にサーバー(Amazon EC2)を配置することができる。
7. サーバーとAmazon EC2インスタンス
- AWSでサーバーを作るには、
Amazon EC2を用いる。
- 各サーバーの個体は
インスタンス(仮想的なサーバー)と呼ばれる。
- インスタンス作成時には、CPUのスペックやディスク容量を決めることができる。