DEVELOPER’s BLOG
技術ブログ
サーバーサイジングのポイント
はじめまして、AUCシステム部の田村です。
業務でサーバー構築を行う際は、AWS等クラウドサービスを利用するのがすっかり当たり前になりました。
新規構築したシステムを配置するため、インスタンスを契約しようとするとき、AWS 料金表を見ていてもどれを選べばよいのかよく悩みます。
AWS 料金表(EC2オンデマンド)
https://aws.amazon.com/jp/ec2/pricing/on-demand/
私がサーバー選びをする際に実施しているポイントや苦労した点について複数回にわたってまとめたいと思います。
サイジングとは?
インターネットで調べてみると、下記のように説明されていました。
サイジングとは、システムやその構成要素について、必要とされる規模や性能を見極めて用意したり、状況に応じて適切な規模に削減あるいは増強を行うこと。
『IT用語辞典 e-Words http://e-words.jp/w/%E3%82%B5%E3%82%A4%E3%82%B8%E3%83%B3%E3%82%B0.html 』
サイジングの方法
サイジングは、大きく3つの作業に分かれます。
1.利用規模の想定
2. 利用規模を満たすスペックのサーバー選定
3.運用後の値と想定値を比較し、スペックの見直しを行う
利用規模の想定
私は、利用規模を想定するとき下記の観点で、洗い出しを行っています。
コンテンツのデータ量の決定
システムに対して1回アクセスした際に発生するデータの量を決定します。
・1ユーザーがアクセスした際に利用するデータ容量
例えば、WebページならHTMLのファイルサイズ、画像コンテンツの容量などです。
・1ユーザーが登録するデータ(テキスト、画像)の容量
利用数の想定
対象とする母数に対して、何%のユーザーがこのシステムを利用するか、想定します。想定が難しい場合は、何ユーザーまで利用できるようにするか、見込の値を決定します。
・ 1ユーザーが1ヶ月間に平均で登録する回数
・1ユーザーが1ヶ月間に平均で閲覧する回数
システムに必要なデータ量、性能の決定
『コンテンツのデータ量の決定』と『利用数の想定』ができれば、そこから『システムに必要なデータ量、性能』が決定できます。
私はこれをExcelに項目ごとにまとめ、一ヶ月間に必要なスペックを算出しています。
利用規模を満たすスペックのサーバー選定
システムに必要なデータ量、性能が決定したら、いよいよサーバー選定です。
AWS等クラウドサービスの料金表には、どのグレードのサーバーだとどれくらいの性能があるのか項目ごとに詳細に記載されています。これを参考にして、『システムに必要なデータ量、性能』を満たすサーバーを決定していきます。
https://aws.amazon.com/jp/ec2/instance-types/
性能が決定したら、今度は料金の計算です。AWSの場合、Web上で見積を行うツールが無料で公開されています。必要なサーバーをマウスで追加していき、必要な性能を入力すれば、自動的に料金を計算してくれます。
http://calculator.s3.amazonaws.com/index.html?lng=ja_JP
また、見積算出ツール内の『保存して共有』をクリックすれば、専用のURLが発行されるため、簡単に共有することができます。
運用後の値と想定値を比較し、スペックの見直しを行う
実際にサーバーを運用すると、常に想定通りの構成になるとは限りません。実際のデータ量、利用数を測定し、再度『システムに必要なデータ量、性能』を見直します。
AWS等のクラウドサービスは、運用開始後にサーバーの性能を簡単に変更できるところが魅力です。
次回は、1つシステムを想定してサイジングを行って行きたいと思います。