📦

AWSを学習してみた

に公開

AWSってそもそも何がいいのか?

https://aws.amazon.com/jp/free/?gclid=CjwKCAjwkeqkBhAnEiwA5U-uM7a5h6G8QO3SER2sE6e2c7STQIcn4Y7r5goP-YpSVce3-JbYdDcGgBoCflIQAvD_BwE&trk=94c18984-27d1-4395-8dae-cdbf523f1ae5&sc_channel=ps&ef_id=CjwKCAjwkeqkBhAnEiwA5U-uM7a5h6G8QO3SER2sE6e2c7STQIcn4Y7r5goP-YpSVce3-JbYdDcGgBoCflIQAvD_BwE:G:s&s_kwcid=AL!4422!3!568105078079!e!!g!!aws&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free Tier Types=*all&awsf.Free Tier Categories=*all

AWSとは、amazonが作った、amazon web serviceの略ですね。Webアプリケーション、機械学習、IOTの開発に対応しているクラウドサービスで、200を超えるサービスを提供しているそうです!

📶インフラを作る例で説明すると

ネットワークやサーバーの構築をするには、物理的な機材であるルーターやサーバーを用意して、配線で繋げる必要があります。イメージはこんな感じです。

でもこれ、個人でやるとすごくお金がかかります。で、最近流行りのクラウドはその悩みを仮想環境を構築して解決してくれます。物理的にネットワークやサーバーを構築するのではなくて、仮想的に作るってことですね。
サーバーの構築だと、VPCとEC2があれば、動かすだけのものなら、簡単に作れます。これが、Sakura VPSだったら、結構大変です😇

AWSのいいところ

コンソールを操作して、ボタンをぽちぽち押せば、ファイヤーウォールの設定とかやってくれます。これがオンプレミスだと、ターミナルの操作が必要なので、結構大変でした💦

😅VPCとEC2について解説

🛜VPCとは?

https://aws.amazon.com/jp/vpc/features/
わかりすく説明すると、自由にカスタマイズできる仮想ネットワークを作り出すことができます。これを物理的な機材で実現しようとすると、ルートやサーバーにRunケーブルを繋いだりしないといけませんが、クラウドを使えばそんな知識がなくても、ネットワークを作ることができます。

簡単と言っても、IPアドレスの設定が必要だったりと、ネットワークの知識が求めれます。サブネットマスクなるもの知らないといけませんので、今勉強しております。
https://it-biz.online/it-skills/subnet/

で、このサブネットを作ったらインターネットに繋ぐために、インターネットゲートウェイが必要です。
https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/VPC_Internet_Gateway.html
これは、短く説明すると、自分で作った仮想ネットワークに、インターネットの回線を引き込むものだそうです。
この作業で、ポイントとなるのは、VPCのアタッチという作業をするところですね。この辺は最新の書籍や動画を見ながらやった方がいいですね。

アタッチとは何か?
ネットの情報を引用

アタッチ」とは、接続する・付属する・取り付ける等の意味合いがあり、反対語の「デタッチ」は切り離す・分離する・外すといった対称的な意味を持っています。 クラウドサービスにおけるアタッチ/デタッチとは、仮想マシンのボリューム(データディスク)を追加(割り当て)/削除する際に使用されます。

🤖EC2とは?

https://aws.amazon.com/jp/ec2/
仮想空間に作られたサーバーってイメージですね。普通はモニターのないLinuxのパソコンを使いますが、用意するのは大変です。AWSが用意してくれているクラウドにあるものを我々は借りて、サーバーとして使うことができます。
EC2で作成したサーバーをたまに聞く、「インスタンス」と呼びます。AWSのインスタンスと聞いたら、仮想サーバーってことですね。
これに、NginxやApacheをインストールして、PHPやRubyで使用します。私は、Sierにいたときは、PythonとNginxを使ってましたね。

https://www.apache.org/
https://www.nginx.co.jp/

今紹介したのは、Webサーバーという分類に入ります。詳しく知りたいな〜という人は、こちらのサイトを参照するとよさそうです。
ミドルウェアというものがありまして、Webサーバー、DBサーバー、アプリケーションサーバーの3つに別れています。

https://e-words.jp/w/ミドルウェア.html

学習に使用した書籍と動画

世界の青木さんの動画は、IAMユーザーの設定や請求の通知設定についてまで紹介されていました。この講座はおすすめですね。仮想デバイスの設定はこの動画見ないと覚えれませんでした。
https://www.udemy.com/course/aws-basic-monpro/

しまさんという最近私が、AWSの動画でよく見ている人のこの講座は、VPCでネットワークの構築と、EC2にNginxをインストールして起動するのが学べたので、最初にやるのはおすすめかもしれないですね。ネットワークの知識についても学べます。
https://www.udemy.com/course/essential-networking-with-aws/

書籍だと、昔買ったYouTuberがお勧めしていたこちらの書籍が参考になりました。何度もVPCでネットワークの構築とEC2でサーバーの構築をやっていると、書いてあることわかるようになりました。私、本より動画派なので、実は、ざっと読んで最近まで読んでなかったです。CIDR表記について、詳しく解説されているので、IPアドレスについて学ぶことができます。
https://www.amazon.co.jp/Amazon-Web-Services基礎からのネットワーク&サーバー構築改訂4版-大澤-文孝/dp/4296202049/ref=sr_1_7?__mk_ja_JP=カタカナ&crid=37RRCSKM5IOCV&keywords=aws&qid=1687919691&sprefix=aw%2Caps%2C211&sr=8-7

Discussion