AWSome Day モジュール1:AWSの概要、グローバルインフラストラクチャとコンピューティング

AWSome Day Online Conferenceのモジュール毎に記事をまとめていきます。
AWSome Day Online Conferenceの全体の概要をまとめた記事はこちらです。

関連記事

AWSome Day Online Conferenceに参加したので、せっかくなのでその内容についてまとめていきたいと思います。 AWSome Day Online Conferenceとは AWSome Day Onlin[…]

AWS logo

今回はモジュール1についてまとめていきます。

モジュール1の概要

モジュール1はAWSの概要、グローバルインフラストラクチャとコンピューティングがテーマです。
最初にクラウドとは何かといった話からAWSの概要と導入によるメリットの説明があります。
その後、AWSのサービスを利用してプログラムを動かすデモが行われます。
デモではAmazon Elastic Compute Cloud (Amazon EC2)を利用したサーバーの構築とプログラムの実行を行うものと、AWS Lambdaを利用したサーバーレスでプログラムを実行を行うものの2つが行われます。

内容の詳細

クラウド・AWSの概要、導入によるメリット

クラウドとは、インターネットなどでアクセスした先の巨大なコンピュータ上でサーバーやストレージなどシステムの構築を行えるサービスのことです。
自前でサーバーを用意して構築を行うオンプレミスとの比較されることが多いです。

クラウド(AWS)の導入のメリット

クラウドの導入には以下のようなメリットがあります。

  1. オンプレミスと違い、サーバーを用意する必要がなく初期費用が抑えられる。
  2. 利用した分だけ料金がかかる従量課金制であり、必要に応じてリソースの増減などが行えるためコストカットになる
  3. オンプレミスの場合は増築などが必要なリソースの増減が設定を変更するだけですぐに行える
  4. インフラの運用・保守をクラウドサービスに任せることができ、高い可用性を確保してくれる

逆にクラウドのデメリットとしては以下が挙げれれます。

  1. 利用できるOSやストレージ・データベースなどはクラウドで提供しているものに限られる。

クラウドはメリットいっぱいですね。
実際、説明を改めて聞くとクラウドの導入が増えている理由がわかります。

AWS基礎知識

さて、クラウドの魅力がわかったところで実際にAWSの説明に入っていきます。
AWS上での運用やプログラムの実行などの具体的な中身に入る前に、前提として知っておくべき知識を押さえておきましょう。
キーワードはリージョンとアベイラビリティゾーン(AZ)です。

アベイラビリティゾーン(AZ)

アベイラビリティゾーン、略してAZとは簡単にいうと世界中に点在するAWSのサーバーが置かれているデータセンターのことです。
AWSを利用する際はどのAZを利用するかを指定するのですが、それぞれのAZは独立して動作しており、かつAWSのポリシーによりそれぞれが一定以上離れた距離に存在するため、複数のAZを使用することで冗長化を行うことが可能となっています。
そして、このAZと関係してくるのがもう一つのキーワードであるリージョンです。

リージョン

リージョンとは、一つの地域にあるAZの集合を表したものです。
一つの地域といっても物理的にはかなり広大な範囲となります。
日本には東京リージョンと大阪リージョンが存在しており、同じように世界中の様々な地域にリージョンが存在します。
サービスを提供する地域と近い地域のリージョンを選択した方が、当然物理的な距離が近いため通信などが速くなります。
AZの説明の際、冗長化するために複数のAZを利用すると記述しましたが、より堅牢に保ちたい場合はリージョンを跨いでAZを利用して冗長化を行う場合もあります。

AWSを利用したコンピューティング

AWSの前提知識を押さえたところでいよいよAWSの中身に入っていきます。
モジュール1ではコンピューティングがもう一つの大きなテーマとなっています。
AWSではクラウド上でプログラムを実行するための様々なサービスが用意されています。
仮想サーバーを構築しコンピューティングを行うためのサービスや、利用者がプログラムのみを用意してサーバーのスケーラビリティや性能などを意識することなく実行することのできるサービスなどがあり、システムによってそれらのサービスを使い分けながら処理を実行することができます。
多くの種類のサービスがありますが、コンピューティングを行う上で主要な2つのサービスについて、説明していきます。

Amazon Elastic Compute Cloud (Amazon EC2)

Amazon Elastic Compute Cloud (Amazon EC2)は仮想サーバーを構築できるサービスです。
仮想サーバーはユーザーの用途に合わせてCPU性能やOS、ストレージの容量、サーバーの個数など様々な設定を行うことができます。
また、システムの変更により設定した内容が合わなくなった場合には設定を変更して起動し直すだけでサーバーの変更が行えます。
EC2は柔軟に設定を行うことができるため、
EC2はサーバーのインスタンスが起動している間だけ料金が掛かるようになっており、利用していない間の料金は一切かかりません。

AWS Lambda

AWS Lambdaはサーバーのスケールや性能などを考えることなく、実行したいプログラムとそのプログラムを実行するタイミングを設定するだけで処理を実行することができるサービスです。
EC2では仮想サーバーを作成するにあたってサーバー環境をある程度自分で設定していましたが、AWS Lambdaの場合はサーバー環境の構築は意識することなくこちらが用意したプログラムに合わせて勝手にAWSがスケールなどを決め実行してくれます。
このように、実行する側がサーバーを意識する必要がないことを「サーバーレス」という言葉で表現しています。
AWS Lambdaを利用するためにはまず実行するプログラムを登録する必要があります。
その後、そのプログラムを実行するトリガーを設定することで、そのトリガーの条件を満たした時に実行されます。
また、コンソールから直接AWS Lambda上のプログラムを動かすことも可能です。
トリガーには様々なことが設定できます。
例えば特定のURLをクリックした瞬間やAWSの他のサービスと連携し、あるサービスの特定のリソースにアクセスが行われた瞬間などです。

AWS Lambdaはプログラムを実行している間だけ料金が掛かるようになっており、実行するプログラムをAWS Lambdaに登録するだけであれば料金はかかりません。

モジュール1まとめ

  • クラウドはオンプレミスと比較してスケール面やコスト面など様々な面でメリットがある。
  • 世界中に点在するAWSのデータセンターをAZ、隣接するAZをまとめた地域ごとのグループをリージョンという。
  • Amazon Elastic Compute Cloud (Amazon EC2)はAWS上で仮想サーバーを構築できるサービスで、利用者に合わせた柔軟な設定ができる。
  • AWS Lambdaはサーバーレスにプログラムの実行が行える。

今回はAWSome Day Online Conferenceのモジュール1の内容をまとめてみました。
AWSは業務で触っていましたが、しっかりと学んだことはなかったのでクラウドとは、といった基礎から学んでまとめ直せたことでかなり理解が深まったと感じています。
次回以降、他のモジュールもまとめていきたいと思います。
ここまで読んでいただきありがとうございました。
それでは、また。