[読了]Amazon Web Services基礎からのネットワーク&サーバー構築 -改訂4版-
こんにちは!
今回は『Amazon Web Services基礎からのネットワーク&サーバー構築 改訂4版』を読み終えたので、その感想をシェアしたいと思います。
筆者はWebアプリ側の駆け出しエンジニアで、インフラの知識がほとんど無いです。インフラについてと、ついでにAWSの基本から実践まで一通り学びたかったので、この本を選びました。
さっそく見てみよう!
内容の要約
『「自分でネットワークやサーバーを構築できるようになる」。これが本書の目的です。』
説明文にこう書かれているように、AWSに限定せず、そもそものネットワーク初心者でも概念からわかるような内容が書かれています。
一般的なブログサービスを自分で構築するには何のサーバーが必要か?というところから始まります。WebサーバーとDBサーバーは、どう構築すればいいのか?どうやったらネット上に公開できるのか?IPアドレスって何?といった一連の基本的なネットワークの概念が学べます。
またAWSに関しては、じゃあそのインフラをAWS上で構築するにはどう操作するのか?の流れでハンズオンが進みます。この画面のここを操作して、ここを見て、と細かく指示が書かれているので、操作するうえで迷うことなく進められます。セキュリティの重要性についても触れており、Webサーバーはネット上に公開して、DBはアクセスできないようにするための仕組みの解説と、それを実現するためにAWSでは何を設定すればよいのか?が解説されています。
具体的には…
①VPC(Virtual Private Cloud)
自分のネットワークを構築するための領域のことです。VPCを利用することで、ネットワークを細かく分割し、セキュリティを高めることができます。このVPCの中でさらに、パブリックサブネットとプライベートサブネットに領域を分けて、それぞれでネットに公開する/非公開にするの設定ができます。
この領域を分けることで、外部からのアクセスを制限しながら、内部リソースの管理を行うことができます。本書ではパブリックサブネットにWebサーバーを配置し、プライベートサブネットにはDBサーバーを配置します。パブリックサブネットに配置されたWebサーバーはインターネットに公開されて、相互に通信ができます。一方でプライベートサブネットに配置されたサーバーは、インターネットと接続ができません。
ただ、同じVPCに存在しているので、WebサーバーからDBサーバーに接続することはできます。一度SSHでWebサーバーに接続し、WebサーバーからDBサーバーに接続することで、自分のPCからリモートでDBサーバーの操作を可能にします。(この際、Webサーバーを踏み台としてDBサーバーに接続するので、Webサーバーを「踏み台サーバー」と呼びます。)
ただDBサーバーがネットに接続できないと、MariaDBのインストールなども手間がかかります。そこで使用されるのがNATゲートウェイです。
②NATゲートウェイ
NATゲートウェイは、プライベートIPアドレスをNATゲートウェイのもつパブリックIPアドレスに変換し、インターネットとの接続を行います。これにより、プライベートサブネット内のリソースがインターネットにアクセスできるようになりますが、逆に外部からはプライベートサブネット内のリソースに直接アクセスできないようになります。これにより、インターネット接続を維持しつつもセキュリティを強化することができます。
感想と評価
おすすめ度:★★★★★ 満点!
AWSの解説本というよりは、作成したいインフラをAWSで構築するにはどうしたらいいのか?という、インフラ構築がメインの解説になっている点が非常に良かったです。
また全体的に図解が多く、完全な初心者でも理解しやすいです。ハンズオンの箇所は画面のスクリーンショットがあることはもちろん、サーバー間のデータのやりとりの図解なども豊富にあり、概念の理解を容易にしてくれています。
例えば、SSHでリモートサーバーに接続する手順についての解説が非常に丁寧です。SSHの基本的な概念から、実際の接続方法、鍵ペアの作成と利用方法まで、一連の流れが詳細に説明されています。これにより、初心者でも安心してリモートサーバーの操作を行うことができます。
現場の手順書に「SSHで接続して」「telnetコマンドを利用して」「踏み台サーバーはこれ」と記載してあった通りに実行していたので、SSHとは何か?telnetコマンドで何が行われているのか?踏み台サーバーとは何か?という点が勉強できたのは非常に良い副産物でした。
セキュリティのために使用するNATゲートウェイに無料枠が無かったので実行してはいませんが、実際構築する際は本書を読めば難しいと感じることなく構築できると思います。
おすすめしたい人
具体的には、以下のような人におすすめです。
- IT業界に興味があり、初めてネットワークやサーバーの構築に挑戦したい人
- 既にプログラミングの基礎を持っているが、インフラについての知識を深めたい人
- 現在の業務でAWSを利用しているが、もっと効率的に利用したいと考えている人
個人的に、下記項目に引っ掛かりを覚える人に参考になると思いました。
- Apacheを自分のWebサーバーに導入してみる
- キーペアを作成してWebサーバーにSSHで接続してみる
- DBサーバーは外部からアクセスできないようにして、内部からはネットに接続できるように設定する
まとめ
この本はAWSに限らず、インターネットの仕組みを学ぶ上で非常に役立つ一冊でした。特に、ネットワークやサーバーの基礎知識から、実際のAWSの設定方法まで、一貫して学ぶことができる点が非常に良かったです。AWSの基礎を復習したくなったらこの本を参考にし、さらにスキルを磨いていきたいと思います。
実際にAWSを利用したプロジェクトに参画し、学んだ知識を実践で活かしていきたいです。今後の学びが楽しみです。
もしこの内容が役に立った、または他に知りたいことがあるという方がいれば、ぜひコメントや質問をお寄せください。今後も役立つ情報をどんどん発信していきますので、お楽しみに!
それでは、また次回の記事でお会いしましょう!
Discussion