テックブログ

AWS Auto Scaling について、簡単な紹介

こんにちは、ytakamuraです。
今回はAWSで利用可能なオートスケール、AWS Auto Scalingについて
EC2で利用する想定で簡単に紹介していきたいと思います。

オートスケールについて

オートスケールとは指定した閾値(サーバの負荷など)に従い、
自動的にサーバの台数を自動で調整する機能となります。
AWS では今回紹介するEC2だけではなく、ECSやDynamoDB、
Auroraなどにも対応しています。

メリット

オートスケールを利用するメリットとしてまず考えられるのが、
自動で調整してくれる点です。
後程紹介しますが、閾値としてサーバの負荷やリクエスト数を設定しておけば、
予想していなかったアクセスや負荷の増加に対しても自動でサーバ台数を
増加して対応してくれます。
また、閾値に従って落ち着いた後はサーバ台数の削減も自動で行ってくれます。
こちらが認識、対応しなくても自動的に調整してくれる点は非常にありがたいですね。

調整という部分では費用面のメリットもあります。
必要になったらサーバが増え、不要になったら消えるので、
常に複数台サーバを稼働させていたりするのと比較して費用が抑えられます。

利用する閾値について

オートスケールを実行する閾値としてよく使われるものは、
サーバの負荷とロードバランサ(ELB)へのリクエスト数の2つです。

サーバのCPU使用率が50%を超えたら、ロードバランサへの
平均リクエスト数が100を超えたら等、環境に応じて設定できます。
閾値に達した場合の挙動についても1台増やすだけでなく、
複数台増加させることも可能です。
しっかりとサーバを削減する際のルールも作成しておかないと、
落ち着いた後も増加したサーバが残ってしまうので注意です。

CPU使用率やリクエスト数を一定に保つなんて設定も可能です。
こちらの設定の場合は、指定した値を保てるようサーバ増加のルールと
サーバ削減のルールをAWSがセットで作成してくれます。

また、少し特殊な設定として特定の時間を指定することも可能です。
うちのサイトはいつも17時台はアクセスが増える等の場合は、
16時40分に2台増やし、18時10分に2台減らすなんて設定ができます。
アクセスが増える時間が分かっている場合はこの設定の方が安心ですね。

デメリット

いい点ばかり紹介するのもよくないのでデメリットについても紹介します。

急激な負荷やアクセスの増加への対応が難しい点はデメリットと考えられます。
閾値を超えた場合サーバを増やすという設定になりますが、この処理には閾値を
超えた後にサーバを作成するタイムラグが存在します。
そのため、急激にアクセスが来た際などは処理が間に合わず、
サイトが見れなくなるなどの障害が発生してしまうことがあります。

サーバが増えて減るという点でのデメリットもあります。
オートスケールでサーバが増えた後、落ち着いた際には削除されます。
そのため、サーバ自身に何らかのデータを保存するような環境では、
サーバの削除時にデータが消失してしまうということが考えられます。
オートスケールを利用する環境では、データの共有や外部への保存などを
行っていないと思わぬ事故につながる可能性があります。

おわりに

今回はAWSで利用可能なオートスケール、AWS Auto Scalingについて
あまり細かい部分には触れず簡単に紹介してきました。

分かっている人には退屈な記事だったかもしれませんが、
あまり触ったことがない人や初めて触る人の取っ掛かりに
なってくれれば嬉しいです。

それではまた。

AWS構築・保守・運用代行に困ったらネットアシストにご相談ください

この記事をシェアする

  • facebook
  • twitter
  • hatena
  • line
URLとタイトルをコピーする

実績数30,000件!
サーバーやネットワークなど
ITインフラのことならネットアシストへ、
お気軽にご相談ください