スポンサードサーチ

ECサイトを運営するAmazonは、クラウドサーバのAWS(Amazon Web Service)というサービスを提供しています。

AWS(Amazon Web Service)には、60ものサービスが用意されていますが、Webサイトやシステム開発で検討する場合には、この中のAmazon EC2から選ぶのが一般的です。

ただ、実際に見積りをしようとすると、さまざまな種類のCPUやメモリ、ストレージなどを組み合わせたインスタンスタイプの種類が多すぎて正直選ぶのが大変です。

そこで、今回はAmazon EC2のインスタンスの種類と選び方について見ていきます。

クラウドサーバとは?

そもそも、クラウドサーバとはなんでしょうか?

クラウドとは、インターネット上にあるさまざまなサービスをインターネット回線を介して利用できるサービスであり、クラウドサーバはこのクラウド形式で提供されるサーバです。

いままでのサーバとの違いは?

クラウドサーバが出る前のサーバは、レンタルサーバにしてもVPSにしていも実際にものが存在するサーバが主流でした。

自社でサーバの運用をしている場合やサーバをレンタルしている会社は、自社のサーバルームやデータセンターと呼ばれる無停電電源装置や耐震設備などが用意された施設の中に、サーバを設置するラックを用意して、サーバの機器を設置して運用を行っています。

この設置しているサーバの機器の中を分割して提供したり、クライアント毎にサーバを用意してレンタルしたりという違いはあっても、利用をする際には実際に物理的に存在しているサーバの機器があり、その領域やサーバを貸し出しています。

このため、物理的に存在しているサーバの容量を増やすには、HDDを買ってきて追加したり、新たなサーバ機器を用意して追加するといった実作業を、サーバルームやデータセンターで行う必要がありますし、急にアクセスが集中したり、サーバマシンに障害が出たりしても、急な対応が難しく、最悪の場合にはサービスが停止したり、HDDの障害でデータが消失してしまうという事も起こりえます。

レンタルサーバとクラウドサーバ
レンタルサーバとクラウドサーバ

一方、クラウドサーバは仮想サーバとも呼ばれますが、複数サーバを1つにまとめて仮想的に1台のサーバを作っています。

このため、データ容量が増えてきた際にストレージの容量を増やしたり、ユーザー数が増えてきたのでサーバスペックを変更したい、急なアクセス集中が発生したのでサーバ構成自体を変更したいといった場合にも、マシンを買ってきたりサーバが設置してある場所に行って作業する必要はありませんし、柔軟にスペックを変更して対応できます。

ただし、クラウドサービスだからバックアップをしないというのはリスクでしかないで書いたように、クラウドサーバだからバックアップを取らないでいい、という事はない点は注意が必要です。

クラウドサーバの種類

クラウドサーバには、PaaS(パース)とIaaS(イアース)の2種類があります。

PaaS(パース)とIaaS(イアース)の違い
PaaS(パース)とIaaS(イアース)の違い

PaaS(パース)

PaaS(パース)とは、「Platform as a Service」の頭文字を取ったもので、サーバやOSなどシステムを構築するためのプラットフォームを利用できるサービスで、代表的なサービスとしてはHerokuやAWS Elastic Beanstalk、Azure App Serviceなどがあります。

PaaS(パース)では、プログラムの開発や実行を行う環境も提供されていますので、サーバの環境構築に頭を悩ますことなく、システム開発にすぐに入ることが出来ます。

IaaS(イアース)

IaaS(イアース)は、「Infrastructure as a Service」の頭文字を取ったもので、従来は機器を設置して構築していたサーバやストレージといったインフラを利用できるサービスで、代表的なサービスとしてはGoogle Compute EngineやAmazon Elastic Compute Cloud (EC2)などがあります。

サーバから設計・開発ができる非常の自由度の高いサービスですが、必ずユーザー側でサーバの構築作業が必要になります。

クラウドサーバのデメリット

このように、メリットの多いクラウドサーバですが、デメリットも存在します。

それは、クラウドサーバはレンタルルサーバやVPSなどに比べて月額の利用コストが高いという点です。

さらに、レンタルサーバのサーバ運用は、サービス提供会社が行っているため、ユーザー側ではサーバについては基本的に頭を悩ませることはありませんが、クラウドサーバの場合には初期構築から運用、セキュリティ対応やバックアップについてはユーザー側で行うのが一般的で、保守運用費用が別途必要になってきます。

このように、クラウドサーバは自由度が高い分、作業内容は別として専用サーバと同様の保守運用作業が発生する事を必ず想定する必要があります。

Amazon EC2 インスタンスの種類

見てきたようにクラウドサーバは非常にメリットが多いため、今では数多くのユーザーが利用しています。

その中でも、Amzonが提供するAWSを使っているユーザーも多いと思います。

AWSは、AWS:クラウド製品で見るとわかるように、60ものサービスが用意されていますが、Webサイトやシステム開発で検討する場合には、この中のAmazon EC2から選ぶのが一般的です。

ただし、このAmazon EC2だけ見ても、用意されているインスタンスタイプの種類が多すぎて、どれを選べばいいのか困ってしまいます。

AWSのAWS Pricing CalculatorAWS Pricing Calculatorで見積りができるので、こちらからConfigure Amazon EC2に進んで具体的に見ていきましょう。

リージョンを選択できる

Amazon EC2の場合、2020年10月23日現在で29のリージョンから選べます。

リージョンによって選択できるインスタンスの種類ならびに価格が異なりますので、安いリージョンとインスタンスを選ぶことも可能です。

ただし、日本でサービスをするのであればデフォルトで選択されているAsia Pacific(Tokyo)を使うのが無難です。

インスタンスのネーミングポリシー

Configure Amazon EC2で「名前でインスタンスを検索します。」を選択すると、選べるインスタンスのリスト出てきますが、「t4.nano」や「m6g.medium」といった名前がずらっと並んでいます。

「nano」や「medium」はサーバスペックの松竹梅的なものだというのは理解できると思いますが、t4やm6gというのは見ただけでは意味がわかりません。

これは選択できるプロセッサとアーキテクチャを表しており、Amazon EC2 インスタンスのネーミングポリシーは以下のようになっています。

インスタンスのネーミングポリシー
インスタンスのネーミングポリシー

インスタンスファミリー

インスタンスファミリーは、汎用、コンピューティング最適化、メモリ最適化、高速コンピューティング、ストレージ最適化の5種類に分類されています。

AWS:Amazon EC2 インスタンスタイプによると、それぞれ以下のインスタンスファミリーに分かれています。(旧世代のインスタンスについてはこちら)

カテゴリインスタンス
汎用a1,t4g,t3,t3a,t2,M6g,m5,m5a,m5n,m4
コンピューティング最適化c6g,c5,c5a,c5n,c4
メモリ最適化r6gr5r5ar5nr4x1w,x1.z1d
高速コンピューティングp3,p2,Inf1,g4,g3,f1
ストレージ最適化i3.i3en,d2,h1

また、基本的にInterel Xeon Processor、AMD EPYC Processor、AWS Graviton Processor(armのプロセッサ)の3つがあります。

a1

インスタンスファミリーにaがついているa1は、AWS Graviton Processorを搭載していることを指しています。

インスタンス追加機能

インスタンス追加機能にaがついているt3aやm5a、r5aは、AMD EPYC Processorを搭載していることを指しています。

インスタンスサイズのルール

インスタンスサイズは、次のようなネーミング順で大きくなります。

  • nano
  • micro
  • small
  • medium
  • large
  • xlarge
  • 2xlarge
  • 4xlarge

サイズが大きくなるに従って、vCPU、メモリのサイズが倍もしくはインスタンスサイズ名の係数に応じて倍増、価格もそれに比例して増加するようになっています。

どのインスタンスタイプを選べばいいのか?

インスタンスのネーミングポリシーとインスタンスサイズを見てきましたが、インスタンスを選ぶ際には汎用インスタンスをベースに見ていくのがいいでしょう。

汎用のインスタンスファミリー m5,m5a,m5n,m4から選ぶ

インスタンスファミリーで汎用と名前が付いているだけあって、m5,m5a,m5n,m4はバランスがいいインスタンスになっています。

新しいIntel Advanced Vector Extension (AVX-512) 命令セットを内蔵した最大 3.1 GHz の Intel Xeon® Platinum 8175 プロセッサが搭載されており、1vCPUあたり4GiBのメモリ搭載比率になっていますので、以下のように選択がしやすいものになっています。

  • m5.large vCPU:2、メモリ (GiB):8GiB
  • m5.xlarge vCPU:4、メモリ (GiB):16GiB
  • m5.2xlarge vCPU:8、メモリ (GiB):32GiB
  • m5.4xlarge vCPU:16、メモリ (GiB):64GiB
  • m5.8xlarge vCPU:32、メモリ (GiB):128GiB
  • m5.12xlarge vCPU:48、メモリ (GiB):192GiB
  • m5.16xlarge vCPU:64、メモリ (GiB):256GiB
  • m5.24xlarge vCPU:96、メモリ (GiB):384GiB

普段の負荷は低く特定時のみ負荷があがるような場合はt2、t3、t3a

t2、t3、t3aインスタンスは、ベースラインのCPUパフォーマンスに加えて、負荷に応じて高いレベルまでCPU性能がバーストする機能を持ったインスタンスです。

ベースラインのCPU性能を下回っている時には、インスタンスは一定の割合でCPUクレジットを貯めておくことができ、突発的に負荷が高まったとき(バースト時)に貯めたCPUクレジットを消費して対応できる、というものです。

このため、普段のアクセスは低いが、月の特定日やある時間だけ負荷が集中する、といった傾向があるWebサイトなどに向いている感じでしょうか。

高い機能要件が必要な場合にはc6g,c5,c5a,c5n,c4

AWS:Amazon EC2 インスタンスタイプによると、コンピューティング最適化になっているc6g,c5,c5a,c5n,c4は、低いコンピューティングあたりの価格率でコスト効率性が高い優れたパフォーマンスを実現し、以下のような業務に向いています。

バッチ処理ワークロード、メディアトランスコード、高性能ウェブサーバー、ハイパフォーマンスウェブサーバー、ハイパフォーマンスコンピューティング (HPC)、科学モデリング、専用ゲームサーバーおよび広告サーバーエンジン、機械学習推論などのコンピューティング集約型アプリケーションに最適です。

AWS:Amazon EC2 インスタンスタイプ

多数の小規模インスタンスを使う場合にはa1

a1は、AWSカスタムのサーバー向けARM Neoverseコアを搭載したカスタムビルドの AWS Graviton プロセッサで、他インスタンスファミリと比較して最大45%のコスト削減が期待できるため、マイクロサービスや、Webサーバ、キャッシュサーバなど、多数の小規模インスタンスを使う用途だとコストパフォーマンスが良くなります。

mをベースにアクセス数や処理内容、コストに応じて選択

Amazon EC2 インスタンスは多くの種類がありますが、結局はmをベースにして選べばあまり迷う事はありません。

あとは、アクセス数や処理内容、コストに応じてインスタンスサイズを選ぶのが無難です。

もちろん、Amazon RDSを加えたり、ロードバランサーを入れて複数構成にするなどは別になりますが、その場合でもこちらの考え方をそのまま適用できますので、Amazon EC2の選定に悩んだ時にはこちらを参考にしてみてください。

ITのことで、お困りではありませんか?

ITは、コンサルティングからプロジェクトを全体を見据えて実施しなければ上手くいきません。
リソース・シェアリングは、ITのコンシェルジュとして、クライアントにとっての最適解をご提案するコンサルティングから構築・運用・解析までをワンストップで対応できるITコンサルティング会社です。
ITに関してお困りのことがあればお気軽にご相談ください。

ITプロジェクトで最適解を探すなら
御社にとって最適なWebサイト構築をするなら
失敗しないWebシステム開発をするなら
WordPressを活用したいなら
ECサイトを構築したいなら
越境ECサイトを構築したいなら
企業間取引向けECサイトを構築したいなら
マーケットプレス型ECサイトを構築したいなら
課題や事例から最適解を探すなら
リソース・シェアリングの実績
お問合せ

スポンサードサーチ