現在使用しているサーバー機器の性能を見直しする際、重要な考え方があります。それがスケールアップとスケールアウトです。こちらの記事では「スケール」の意味や見直しが大切な理由、種類と向き不向きをわかりやすく整理しています。
目次
「スケール」を変えなければならない理由
サーバー機器などの場合、「スケール」には性能の意味があります。CPUやメモリー、SSDなどの記憶容量ほか、回線の速度や太さ(帯域)が代表的な性能です。これらの性能を組み合わせて、インターネット上で各種サービスを提供します。その際利用者にとり価値があることは、快適に使用できることです。限られた予算で、優れた性能を求める理由がここにあります。
サーバー機器などは一度設置したからといって、放っておくことはできません。アクセスされた数によりサーバー機器などの負担は変動します。限界を超えると処理速度が遅くなったり、場合によっては機器が停止することがあるからです。
契約内容や予算次第ですが、そもそも使い始めたら、ずっと同じ性能のまま使い続けなければならないわけではありません。より上位の利用プランに切り替え、性能を向上させなければならない時がどうしてもあります。一般的な場合で例を挙げてみましょう。
- 提供しているWebサービスの人気が急上昇し、利用者が急増している
- マスコミで取り上げられ、アクセス数が一時的に上がることが予想される
- オンラインのセミナーや会議に多数の参加者が見込まれる
特に2020年からは新型コロナウイルス感染症対策で、職場や学校でリモート化が進み、各種Webサービスの利用が急速に拡大しています。この変化に柔軟に対応できるよう、急いでサーバー機器や回線などを強化する必要が出てきました。
一時的なアクセス数の変化に対応する場合もあります。アクセス数のピーク時のみ性能を上げて、ピークを過ぎたら元の性能に戻すことができれば、各種のコストを有効に活用できるでしょう。
それではこの性能(スケール)をどのように変えていくのでしょうか。次章ではその方法について種類ごとに解説します。
スケールアップとスケールアウトの違いとは
前章では、スケール(性能)の向上が必要な理由と現状を説明しました。その改善を実現する手段には、スケールアップとスケールアウトの2つ考え方があります。イメージとしては、冒頭のイラストがわかりやすいと思います。
スケールアップ(scale-up)
「垂直的」に性能を上げることです。1台のサーバー機器の内部で、CPUやメモリー、SSDの記憶容量などを増強することで性能を上げます。
スケールアウト(scale-out)
一方こちらは「水平的」に性能を上げることです。言い換えれば、別のサーバー機器を増やすことで全体の性能を上げます。
このように性能を上げる目的と結果は同じでも、方法が異なります。そのため、どうしても向き不向きが出ます。次の章で詳しく比較し、向いている用途をまとめています。
スケールアップのメリット・デメリット
まずは「垂直的」に性能を上げるスケールアップからです。もう一方のスケールアウトと比較すると、相対的で境界がゆるやかなため、特に目立った点に絞っています。
メリット | ・機器本体での改善のため効果を確認しやすい ・1台の機器が対象のため作業量が少なく手間がかからない |
---|---|
デメリット | ・機器には物理的な制約があるため、性能の向上には限度がある ・作業中は機器を停止させなければならず、停止時間(ダウンタイム)が発生する |
適した利用方法 | ・小規模で簡素なWebサービスを運用する ・データベースを扱うサーバーなど特定の機器を動かす ・性能の切り替えを頻繁に実施しない |
スケールアウトのメリット・デメリット
次に「水平的」に性能を上げるスケールアウトでは、以下の特徴があります。
メリット | ・性能の向上には上限がない(サーバー機器を増やせば増やすほど、全体として高性能になる) ・作業中でも機器の停止は必要ない場合が多く、ダウンタイムが発生いない |
---|---|
デメリット | ・作業量が増える(機器の数だけ設定が必要な場合がある) ・機器を保守する費用が台数分かかる |
適した利用方法 | ・大規模なシステムを運用する ・突発的なアクセス増に対応する ・Webサーバーやアプリケーションを扱うサーバーとして利用する |
スケールアウトの応用例(ロードバランサー)
サーバーへの負荷を分散させる「ロードバランサー」の実現方法として、スケールアウトの考え方が応用されています。例えばWebサービス用を提供中のサーバーに対して、アクセスが一時的に急増する場合、サーバーの台数を増やし(スケールアウトし)負荷を分散させることが可能になりました。
ロードバランサーについて、カゴヤのサーバー研究室では以下の記事で概要を説明しています。
ロードバランサーとは、その名の通りサーバーにかかる負荷を、平等に振り分けるための装置のことを指します。これによって1つのサーバーにかかる負担を軽減したり、停止状態を防ぐことができたりします。ここではロードバランサーの仕組みについて分かりやすくご紹介します。 ロードバランサーとは? ロード(load、負荷)+バランサー(Balancer、平衡を保つためのもの)で、サーバーやネットワークに関連する用語…
カゴヤ・ジャパンでは、「FLEX」サービスのオプションとしてサービスを提供しています。
専用ロードバランサー
https://www.kagoya.jp/dedicated/flex/option/66.html
まとめ
スケールアップとスケールアウトを適度に使い分けたり組み合わせたりして、無理のないサーバー機器などを運用が重要です。
カゴヤ・ジャパンでは以下のような関連サービスを提供し、利用者の無駄なコストを削減するお手伝いをしています。検討されてみてはいかがでしょうか。
IaaS – 様々なビジネスニーズに応える柔軟なスペックと自由な構成
https://www.kagoya.jp/cloud/iaas/
開発・検証・プログラミング学習に。無駄なコストもかけたくないあなたにおすすめのVPS
カゴヤのVPSは初期費用無料でアカウント登録さえしておけば、必要なときだけ日額課金でサーバーを立ち上げ可能!料金は使った分だけ。