LoginSignup
3
4

More than 5 years have passed since last update.

クラウド開発をしたことがない人向けのAWS導入解説

Last updated at Posted at 2018-11-11

主旨

今日は、クラウド開発(サーバレス)をしたことがない!!という人向けに、
ザクっと、AmazonのAWSクラウドサービスを紹介するぞ。
サーバーありきの開発とは大きく異なるクラウド開発が、どのようなものか伝わると良きかな。

Web公開に使うサービス

S3

これはストレージサービス。DropboxやGoogleDriveのイメージに近い。
しかし、後述するサービスと連携することで静的なWeb資材を配置できるぞ。
すなわち、HTMLやJavaScriptを置くところだ。
※S3自体にも外部公開機能は存在するが、推奨されていない。

CloudFront

これはコンテンツデリバリーサービス。
S3上のHTMLファイルを外部公開できるようにしてくれるぞ。
404などのエラーごとにもバラバラのHTMLを設定できる。

Lambda@Edge

後述するLambdaプログラムをHTML表示前に使うことができる機能。
URLの変更や、認証などに使える。ただし、制限が多いサービスなので注意。
使いたい場合は公式マニュアルを先に読んだ方が良い。

WAF

これはファイアウォール。
一般的な攻撃パターンをブロックするのはもちろん、IP制限などを行うことができる。
とりあえず、開発期間中は特定のIPアドレスだけ設定しておけばOK。
作成した後に、CloudFrontに張り付ける。

Route53

これはドメインネームシステム。自分で買ったドメインはここに登録しておく。
ちなみにドメインは持っていなくても、CloudFrontでランダムなものが使用可能。

動的Webサービス

Lambda

これは、サーバレスなコード実行環境。10年前にはない新しい概念。
サーバーなしで関数の実行をマネージドにしたサービス。
アクセスが多ければ、大量に並列実行できたりする。
Node.jsやPython、Javaなどが使える。後述する方法でHTMLと連携もできる。
実行時間制限15分などを設定する。

API Gateway

これは、アプリケーションの「玄関」。
Lambdaに張り付けると、HTMLから呼べるようになる鍵を発行できる。

CORS

コアーズ(クロスオリジンリソースシェアリング機能)により、
外部ドメインでもAjax通信ができるようになるぞ。

全体

CloudWatch

これはログサービス。
LambdaやらURL監視やら、Webサービスの公開に関するログはここに出る。
メール通知機能などもあるぞ。

IAM

これは権限管理。これも独特な概念。
基本的に各サービスはバラバラに独立している。
なので、どのサービスがどのサービスを呼ぶのかの権利を設定する必要があるのだ。
また、IP制限やストレージのアクセス権利なども設定できるぞ。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4