【おーとすけーりんぐ】

オートスケーリング とは?

💡 混雑に合わせて自動で増減する「伸び縮みする店員数」
📌 このページのポイント
オートスケーリング 低負荷時 CPU使用率: 25% サーバー 1 サーバー 2 モニタリング 閾値監視 CPU > 70%で増加 スケールアウト ! スケールイン 高負荷時 CPU使用率: 85% S1 S2 S3 S4 新規 S5 新規 既存サーバー 追加サーバー
オートスケーリングの仕組み
ひよこ ひよこ

オートスケーリングって何のためにあるの?

ペンギン先生 ペンギン先生

ECサイトのセール期間を想像してみて。普段は1台のサーバーで足りるのに、タイムセールの瞬間だけ何十倍ものアクセスが来る。そのために常時10台のサーバーを動かし続けるのはもったいない。オートスケーリングは混雑時だけ自動で台数を増やしてくれるんだよ。

ひよこ ひよこ

スケールアウトスケールアップって何が違うの?

ペンギン先生 ペンギン先生

スケールアウトサーバーの「台数」を増やすこと。スケールアップサーバーCPU・メモリなどの「スペック」を上げること。クラウドではスケールアウト(台数増加)の方が主流で、オートスケーリングといえば大体これを指すよ。

ひよこ ひよこ

スケールアウトするとき、増えたサーバーにどうやってアクセスが振り分けられるの?

ペンギン先生 ペンギン先生

ロードバランサーが間に入って自動で振り分けてくれるんだ。新しいサーバーが起動したらロードバランサーにそのIPを登録して、そこからリクエストが流れてくる仕組みになっている。

ひよこ ひよこ

オートスケーリングでサーバーが増えるとき、増えたサーバーが「完全に準備できる前」にトラフィックが来てしまうことってない?

ペンギン先生 ペンギン先生

これはオートスケーリングの設計で本当に重要なポイントで、「ウォームアップ期間」の問題なんだ。サーバーが起動してOSが立ち上がっても、アプリのJVMやキャッシュの準備が整うまで数十秒かかることがある。その状態でリクエストが来ると遅延やエラーになる。AWSのTarget Tracking Scaling Policyには「インスタンスのウォームアップ秒数」を設定できて、その間は新しいインスタンスをスケール計算に含めない仕組みがある。ヘルスチェックのパスと、アプリの「実際に使える状態」は別物というのを意識しないといけないんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「オートスケーリング」って出てきたら「負荷に合わせてサーバーを自動で増やしたり減らしたりする仕組みのことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Auto Scaling」 = 自動でスケール(規模調整)する
💬 Scaleは「規模」の意味。Auto(自動)でScaling(規模調整)する、という直訳通りの名前だよ
← 用語集にもどる