Blogical

AWS/Salesforceを中心に様々な情報を配信していきます(/・ω・)/

Amazon EC2についてまとめてみた。

こんにちは。ロジカル・アーツ福島です。今回はAWSを使うにあたって絶対に外すことができないEC2についてブログでまとめていきたいと思います。

EC2とは

まず、Amazon EC2とは数分で利用可能となる従量課金(時間~秒単位)で利用可能な仮想サーバーのことです。サーバーの追加・削除、マシンスペック変更も数分でできます。払いだされたサーバー内のOSは管理者権限で操作が可能になります。また、OSまでは提供されているタイプを選択することで自動設定され、OSより上のレイヤーを自由に設定することができます。※独自のAmazon Machine Image(AMI)にOS設定を作成し、保存して再利用が可能です。

AWSでは地域や国ごとにリージョンと呼ばれる大きな単位を作成し、複数のリージョンにシステムを分散配置することで耐障害性を高めています。この各リージョンごとにアベイラビリティゾーン(AZ)と呼ばれる複数の独立した場所があります。このAZは物理的、ソフトウェア的に自立しているデータセンターの集合の単位になっていて、現在東京など24の地理的リージョン、77のAZで運用されています。 EC2は任意のリージョン並びにAZを選択して起動することができます。※リージョンによって選択できるインスタンスの種類および価格が異なります。*1

EC2では、利用する単位をインスタンスと呼び、任意のAZにインスタンスを立ち上げてサーバーとして利用します。

EC2のメリット

EC2にはこのようなメリットがあります。

(サーバ調達の)スピード

オンプレミスサーバに比べて圧倒的に早くサーバを使用することができます。概要でも述べましたが、オンプレサーバのようにサーバをあらかじめ準備する必要がありません。EC2ではほんの数分でサーバを立ち上げて使用することができます。

冗長化

システムを多重化し、単一障害点をなくすことで、ある構成要素で障害が発生しても処理を引き継げるようにすることで稼働率を高めることができるようになります。この冗長化する手間がかからないのも、EC2の魅力的なポイントです。 サーバーをローカルで作成する場合、サーバー設定だけではなくネットワーク設計も必要になります。 EC2では、仮想ネットワークでネットワークを構築するサービスが提供されており、インスタンスと組み合わせることによって、簡単に短時間でサーバーの冗長化が可能です。 また、この冗長化構成のなかでスペック変更、サーバ台数の増減が柔軟にできます。サーバーをローカルで構築する場合に懸念されることの1つとして、ハードディスクやメモリ不足があります。

例えば、データベースサーバーを長年運用していると、データを削除しない限りはデータ容量が増え続けます。そのためデータを保持し続けるには、ハードディスクを増設するという対応が必要です。この場合もサーバー構築時と同様に、増設するハードディスクやメモリを購入してセットする必要があります。 一方、AWS EC2を使えば、画面上で設定するだけでハードディスクやメモリの増設が簡単に行えます。 *2 f:id:logicalarts:20201016091429p:plain

(冗長構成イメージ AWS AutoScaling試してみたより)

EC2のセキュリティ

EC2のセキュリティには以下のようなものがあります。

セキュリティグループ

EC2インスタンスへのトラフィックを制限するファイアウォール機能のことです。デフォルトでは全トラフィックが閉じた状態であるため、必要な受信アクセスに対してアクセスルールを定義する必要があります。そのため、EC2インスタンスあたり必ず1つは定義する必要があります。これらのルールをひとまとめにしたテンプレートをセキュリティグループと呼びます。 f:id:logicalarts:20201008132633p:plain

( Amazon EC2を始めるのに必要な10のことより)

鍵認証(KeyPair)

EC2インスタンス上のOSに対する安全な認証を提供する機能のことです。鍵認証はユーザ名・パスワードの認証よりも安全な認証方式で、AWSでは公開鍵のみ保持し起動時に公開鍵をコピーします。秘密鍵はユーザにて適切に保管し管理します。 f:id:logicalarts:20201008132637p:plain   (Amazon EC2を始めるのに必要な10のことより)

EC2の料金

 EC2はインスタンス利用料のほか、ストレージ利用料、データ転送量が主にかかります。しかし、利用計画に合わせたプランを選択することで、EC2にかかるコストを最適化することができます。*3 f:id:logicalarts:20201008132626p:plain

(Amazon EC2を始めるのに必要な10のことより)

オンデマンドインスタンス

初期費用なしで、使用した分だけの従量課金制(秒単位/時間単位)のため利用期間に制限はありません。Amazon EC2のデフォルトの購入形式です。主な用途として開発・テスト環境のような決められた時間帯にしか使われないサーバや、キャンペーン時などの一時的なWebサイトなどに使われます。

f:id:logicalarts:20201016094050p:plain

Amazon EC2だけじゃない!最高のコスト効率を手に入れるためのスポットインスタンス使いこなし術より)

リザーブインスタンス

長期利用(1年/3年)する代わりに大幅なディスカウント価格で使えるインスタンスです(最大75%引)。支払いは全額前払い、一部前払い、前払いなしの3つのオプションから選べます。ただし、全額前払いの場合、途中解約しても払い戻しはありません。主な用途としては、あらかじめ最低限の台数が必要なWebサーバや、アプリケーションサーバ、常時起動しておく必要があるデータベースサーバなどがあります。

 リザーブインスタンスには、StandardタイプとConvertibleタイプの2種類のタイプがあります。

・Standardタイプ  

リージョンやAZを指定してインスタンスを購入できます。同じインスタンス構成であれば(ファミリー、OSなど)、購入時に指定したリージョン内、またはAZ内でインスタンスの配置変更が可能ですが、それ以外の場所に変更する場合は変更手続きが必要になります。

・Convertibleタイプ

あらかじめ指定したインスタンス構成(ファミリー、OSなど)に依存せず、柔軟に構成変更ができます。(ただし作成時の価格と同等以上) 柔軟に変更ができるためStandardタイプよりは割引率は低めです。

f:id:logicalarts:20201013115508p:plain

Amazon EC2だけじゃない!最高のコスト効率を手に入れるためのスポットインスタンス使いこなし術より)

Saving Plans

リザーブインスタンス同様に、1年または3年の期間に特定の量の処理能力(USD/時間で測定)を使用する契約を結ぶことで適用されるものです。最大72%の節約になります。これはAmazon EC2だけでなく、AWS Fargate、AWS Lambdaに適用できます。

f:id:logicalarts:20201014114427p:plain

Amazon EC2だけじゃない!最高のコスト効率を手に入れるためのスポットインスタンス使いこなし術より)

スポットインスタンス

  Amazon EC2の空きキャパシティを活用し、最大90%割引になる割引率が最も高いインスタンスです。変動するEC2インスタンスのスポット価格(マーケット価格)に対し希望の価格で入札するオークション形式で購入します。ただしAWSが利用することになったり、購入時の価格よりスポット価格が上回った場合など使用が強制終了する可能性があります。そのためスポットインスタンスは、処理が中断されても特に支障なく再実行ができるシステムに適用されます。また、スポットインスタンスは必要に応じてスポットブロックとスポットフリートの2種類のオプションを選択することができます。

・スポットブロック

スポットインスタンス利用時にあらかじめ決められた時間の起動を保証するオプション(最大6時間)。割引率は通常のスポットインスタンスよりも低いですが、処理途中における想定外の強制終了を回避できます。

・スポットフリート

あらかじめ指定した性能キャパシティを満たすようにスポットインスタンスを構成するオプションです。スポット価格の高騰で指定したスポットインスタンスが使用不可になった場合でも代替構成で全体の性能キャパシティを維持します。

f:id:logicalarts:20201013115516p:plain

Amazon EC2だけじゃない!最高のコスト効率を手に入れるためのスポットインスタンス使いこなし術より)

これらのインスタンスの価格を比較した表が以下になります。(Linux、リージョンは東京、リザーブインスタンスに関しては契約期間1年、全額前払いを前提にしています。金額は1時間あたりで、単位はUSDです。)

オンデマンドスポットインスタンスリザーブインスタンス(スタンダード)リザーブインスタンスコンバーチブル
t2.mircro0.01520.0080.0100.011
i3.2xlarge0.7320.21960.4660.532
a1.midium0.03210.00860.0190.025

(AWS EC2 料金より作成 注釈2参照)

まとめ

簡単にですが、Amazon EC2についてまとめてみました。簡単に素早く冗長化構成ができるEC2には様々なインスタンスタイプが存在します。インスタンスタイプそれぞれに特徴がありますが、どのインスタンスタイプを選んだとしてもEC2インスタンスとしての品質に違いはないので、コスト効率のいいインスタンスタイプを選択し、スケーラブルで低価格なインフラを選びをしていきましょう!

参考

参考にしたサイトは以下になります。

Amazon EC2を始めるのに必要な10のこと

https://pages.awscloud.com/JAPAN-event-OE-At-least-10-Amazon-EC2-2020-reg-event-CP_508.html

[AWS Black Belt Online Seminar]Amazon Elastic Compute Cloud (Amazon EC2)

https://d1.awsstatic.com/webinars/jp/pdf/services/20190305_AWS-Blackbelt-EC2.pdf

[AWS Black Belt Online Seminar]Amazon EC2 スポットインスタンス

https://d1.awsstatic.com/webinars/jp/pdf/services/20190306_AWS-Blackbelt-EC2Spot.pdf

Amazon EC2 スポットインスタンス再入門

https://d1.awsstatic.com/webinars/jp/pdf/services/20190318-JAWSUG-EC2spotinstance.pdf

Amazon EC2だけじゃない!最高のコスト効率を手に入れるためのスポットインスタンス使いこなし術

https://pages.awscloud.com/rs/112-TZM-766/images/AWS-27_AWS_Summit_Online_2020_CMP01.pdf

Amazon EC2インスタンスタイプの選び方ガイド

https://pages.awscloud.com/rs/112-TZM-766/images/C2-07.pdf

AWS AutoScaling試してみた (冗長化構成画像)

qiita.com

*1:10月15日現在 aws.amazon.com

*2:docs.aws.amazon.com

*3:Amazon EC2の料金について詳しくはこちら

aws.amazon.com