0. はじめに
こんにちは!!watnow副代表の神宮です!
watnowのチーム開発イベントで開発中のプロダクトのバックエンドをAWSにデプロイすることになったので、
初学者ながら、デプロイしたAWSの構成についてまとめようと思います!
個人開発レベルのwebアプリでしたら、汎用的な構成だと思うので、参考になれば幸いです!
「awsとはなんぞや?」という方むけに、チーム開発イベントでデプロイした際のaws構成を説明し、awsの雰囲気を掴んでもらうことが目的です!
間違い、誤解を招く表現がありましたら、ご指摘いただけると幸いです!
プロダクトのバックエンドの技術構成
- FastAPI
- postgreSQL
- docker
1. そもそもAWSとは
一言で言うと
「インターネット経由で、Amazonがコンピュータを貸してくれるサービス」です!
awsを利用しない場合
Webサービスやアプリを作るために、企業はサーバーを購入し、自社で管理する必要があります。サーバーにケーブルを繋いだり、osをインストールしたり、故障したら部品の交換をしたり、サーバーの準備、管理には莫大なコストが必要となります。
awsを利用した場合
pcからawsの管理画面を開き、クリックするたけでサーバーの準備が整います。
もしサーバーが物理的に壊れたとしても、全てAmazonが対応してくれます。
まとめ
awsを利用することで、サーバーの準備や管理にかかる手間のほとんどを省くことができるということです!
2. 全体構成図
3. 各サービスの役割
3-1. VPC(Virtual Private Cloud)
一言で
- AWS上に確保したインターネットから隔離されたネットワーク
詳細
- もし、VPCを用意しない場合、データベースやサーバーがインターネット上の誰からでもアクセス可能な状態になります。
- ex) 大事な顧客情報が保存されたデーターベースが誰からもアクセスできる状態になる
- しかし,インターネットから接続できないと困るので、IGWが存在します
3-2. サブネット
一言で
- VPC内の部屋割りのようなもの
詳細
- VPC内で、「インターネットにつながる場所」と「つながない場所」を分けるために使用されます。
2種類のサブネット
- パブリックサブネット
- インターネットにつながる場所
- webサーバーなどを設置する
- プライベートサブネット :
- インターネットにつながない場所
- データーベース等を設置する
詳細
- 上述した通り、VPCはそのままではインターネットとはつながりません。
- VPCにこのIGWを取り付けることで、外の世界(ユーザーなど)との通信が可能になります。
3-3. IGW(Internet GateWay)
一言で
- インターネットとつながるための玄関
詳細
- 上述した通り、VPCはそのままではインターネットとはつながりません。
- VPCにこのIGWを取り付けることで、外の世界(ユーザーなど)との通信が可能になります。
3-4. EC2(Elastic Compute Cloud)
一言で
- Amazonが貸してくれるコンピューター
詳細
- LinuxなどのOSが入ったサーバーを簡単に立ち上げることができます。
3-5. RDS(Relational Database Service)
一言で
- Amazonが用意してくれるリレーショナルデーターベース
詳細 - 通常、データーベースを使うにはサーバーを用意し、ソフトをインストールし、設定を行う必要があります。
- そのような手間を肩代わりしてくれるのがRDS
4. 最後に
お疲れ様です!拙い文章ですが、読んでいただき、ありがとうございました!
技術記事は今回含めて2回しか書いたことがないため、文章を考えることが難しかったですが、新鮮で楽しかったです!
この記事を通して、awsの雰囲気を少しでも掴めましたら幸いです!
本当は、awsにデプロイする際の手順まで書きたかったのですが、間に合いませんでした🙇♀️
気が向いたら、追記させていただきます!
2025年もあと少しですが、最後まで健やかに楽しみましょう〜!!🎄🎄
