クモのようにコツコツと

フロントエンドエンジニア イイダリョウのブログ。略称「クモコツ」

AWSを理解するために調べたこと(EC2 、Lightsail、EBS、RDS、ELB、S3)

前回に引き続き、AWSについて調べていきます。前回調べたWebサイトホスティングに該当する実際のAWSのサービス「EC2」「RDB」「ELB」「S3」などについて。それではいきましょう!

【目次】

※前回:AWSを理解するために調べたこと(Webサイトホスティング編) - クモのようにコツコツと

ウェブサイトホスティングで主なインフラ要素(p19)

前回も参照していたAWSの「いろは」がよくわかるスライド。

今回はスライドのp19以降を見ていく。

f:id:idr_zz:20190727164036j:plain

ウェブサイトホスティングで主なインフラ要素

  • ウェブ/アプリケーションサーバ
    Amazon EC2 、Amazon Lightsail、Amazon EBS
  • データベース
    Amazon RDS
  • ロードバランサー
    ELB
  • バックアップ
    Amazon S3、Amazon EBS スナップショット

ウェブ/アプリケーションサーバ:Lightsail、EC2、EBS

Amazon Lightsail(p20)

スライドのp20「Amazon Lightsail」

今すぐ使える月額・定額のシンプルなVPS

ほう、LightsailはVPSサーバなんだ。

Amazon Lightsailは、AWSが提供しているVPS(Virtual Private Server:仮想プライベートサーバー)サービスです。
他のAWSのサービスは、機能ごとに1つのサービスとして提供されています。しかしAmazon Lightsailはコンピューティング、ストレージ、データ転送など、WebサイトやWebサービスなどに使うサーバーとして必要な機能を組み合わせ、1つにまとめたパッケージで提供されています。

※参考:Amazon Lightsailとは?EC2との違いとメリット・デメリットを調べてみた | NHN テコラス Tech Blog | AWS、機械学習、IoTなどの技術ブログ

全部のせパッケージセットみたいな。月額が定額なのは従来のレンタルサーバと同じ価格設定でコスト計算がしやすいかもしれない。

VPSについても念の為おさらい

VPS(Virtual Private Server)は、日本語に訳すと「仮想専用サーバー」となります。1台のサーバーを複数のユーザーで共有する点は共用サーバーと同じですが、VPSでは、仮想的に専用サーバーと同様の自由度・性能を利用できるよう設定されています。

※参考:VPSとは?レンタルサーバーと何が違う?分かりやすく解説 | カゴヤのサーバー研究室

1台のサーバを複数のユーザで使うが仮想的に専用サーバのような仕切られた世界を再現しているわけだ。

Amazon EC2(p21 )

次、p21「Amazon EC2 (Elastic Compute Cloud)」

1秒ごとの従量課金で利用可能な仮想サーバ

これが一番よく聞くし、自分にとって一番身近、最初に手をつけるべきサービスになりそう。なおAWSのサービスは同じ頭文字が続くとカウントで表現するようだ(「ECC」ではなく「EC2」といった具合)。

インスタンスとは
AmazonのEC2はインスタンスという単位で、サーバー環境が構築できます。インスタンスとは簡単に言えば、OSを載せた仮想サーバーのことです。また、インスタンスは複数作成して実行することもできます。

※参考:AmazonのAWS EC2とは?はじめての人向けに解説|TECH PLAY Magazine[テックプレイマガジン]

OSを含む仮想サーバを簡単にいくつも作ることができるので、ステージング環境を作りやすそう。

Amazon EBS(p22)

スライドのp22「Amazon EBS(Elastic Block Store)」。Elasticは「柔軟」という意味のようだ。

EC2にマウント可能なブロックストレージ
1つのEBSは最大16TB, 最大32,000IOPSまで性能を確保可能

ストレージということはファイル置き場か。16TB!ん?IOPSとは?

OPSは『インプット・アウトプット Per Second』といって、1秒あたりの処理できるインプット・アウトプットの数

※参考:ストレージの性能指標 IOPSってなに?

1秒あたり32,000回処理できるってなんだかすごい。

EBSボリュームは99.999%の可用性(要は安定度で、1年間ノンストップで動かしても動作しないのは数分以内)を満たすように設計されています。ちなみに99.999%はファイブナインと呼ぶこともあります。

※参考:クラウド上のハードディスク「Amazon EBS」はメリットがいっぱい! | 「ポテパンスタイル」

99.999%(ファイブナイン)とはすごい安定性だ。

データベース:Amazon RDS(p23)

スライドp23「Amazon RDS (Relational Database Service)」

フルマネージドのRDBMSサービス
MySQL、Oracle、SQLServer、PostgreSQL、MariaDB、Aurora から選択可能

リレーショナルデータベースおさらい。

「RDB」は「Relational Database(リレーショナルデータベース)」の略で、日本語に訳すと「関係データベース」となります。RDBはデータを複数の表として管理し、表と表の間の関係を定義することで、複雑なデータの関連性を扱えるようにしています。

※参考:RDB(リレーショナルデータベース)とは | NoSQLとの違い・変化するデータベース事情 - 経営企画・マーケティング | ボクシルマガジン

Amazon RDSは、DBを“サービスとして提供”しています。つまり、あらかじめセットアップされた状態で提供され、パッチ適用やバックアップもAWSが運用してくれます。ユーザはDBを使うだけでいいんですよ
さらにDBのスケールアップやスケールアウトも簡単にできます。DBの拡張はオンプレミスだとかなり大変なので、このメリットも大きいですよね

最初からセットアップされているので構築が不要。前回調べたスペックの上げ下げ(スケールアップ、スケールアウト)も簡単。

従来の方法「オンプレミス」とは…

オンプレミスとは、サーバーやソフトウェアなどの情報システムを使用者(ビジネス利用の場合は企業)が管理する設備内に設置し、運用することを指します。自社運用ともいいます。

※参考:オンプレミスとは | クラウド・データセンター用語集/IDCフロンティア

いわゆる自社サーバ。ラックトップにサーバ本体がズラッと積まれて、24時間動き続けて、扇風機や空調で冷やしている、みたいなイメージ。

ロードバランサー:Amazon ELB(p24)

スライドp24「ELB (Elastic Load Balancing) 」。

AWSクラウド上のロードバランシングサービス

前回調べたロードバランサー(負荷分散)。

ロードバランサーの役割
大きく分けて二つの機能があります。

  1. 複数台webサーバーを複数台用意し、負荷を分散させることができます。
  2. メンテナンスや障害時には切り離しを行うことができます。

※参考:【超入門】負荷分散をAWSのロードバランサーを使ってやってみよう - Qiita

複数台のサーバでアクセス集中対策を取る他、障害時に生き残ったサーバに切り替えることもできる。

バックアップ:Amazon S3(p25)

スライドp25「Amazon S3(Simple Storage Service)」

データ保存・バックアップ用途に向くオブジェクトストレージ 自動的に三箇所以上のDCに隔地保管 設計上のデータ耐久性は、99.999999999%

先ほどのEBSと同様、ストレージ(ファイル置き場)か。耐久性が「99.999999999%」イレブンナイン!さらにすごい。

EBSとS3の違いはなんだろう。

下記の記事によるともう一つのストレージサービス「EFS」も加えた比較でEFS→EBS→S3と行くにつれてスループットが遅くなる代わりに料金が安くなっている。

サービス EFS EBS(汎用SSD) S3(標準)
スループット 数GB/Sec 1GB/sec 最も遅い
同時アクセス 複数AZの複数EC2 単一EC2 複数AZの複数EC2
1GBあたりの料金 0.33USD 0.10USD 0.023USD

スループットとはざっくりいうと処理速度のこと。

スループット (throughput)とは一定時間にどれくらいのお仕事を処理できるか?のこと。要するに処理能力のことです。

※参考:スループット (throughput)

最後に

ということで、前回にざっと掴んだWebサイトホスティングの流れがAWSの中ではどのサービスに当たるのかを掴むことができました。EC2などよく聞くサービス名に加え、ホスティングをする上で必須になるサービスとの位置付けもイメージできました。

ブラックベルトスライドはp24でp74のうちのまだ半分も行ってません(笑)なんて濃ゆいスライドなんだwここから先はさらに詳細になっていきEC2の導入などになっていきます。引き続き、わからない単語を一緒に調べながら進めていきたく。それではまた!