Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Auto Scaling でサーバーを 安定稼動させたい

shida
May 29, 2012

Auto Scaling でサーバーを 安定稼動させたい

24時間365日安定稼動
急にアクセスが増えても大丈夫
できるだけ安くしたい
そういう顧客のニーズにEC2のauto scalingで応えるための
サーバー構成やアーキテクチャについての発表

shida

May 29, 2012
Tweet

More Decks by shida

Other Decks in Technology

Transcript

  1. Auto Scaling でサーバーを 安定稼動させたい 志田 裕樹 2012.05.29

  2. 自己紹介 • 三鷹市下連雀1丁目在住 • FLATz久末君と友達 • Railsとか、 Zen Cartとか、 MTとか

    • pgcafeは2,3回来たことあります
  3. よくいただく要望 • 24時間365日安定稼動 • 急にアクセスが増えても大丈夫 • できるだけ安くしたい 人間が張り付くのは無理 AWSのauto scaling

    で自動的に解決したい
  4. Auto Scaling とは • 監視対象は? – CPU, Disc IO, トラフィック,

    ELBからみたLaytencey, … – Custom Metricsを何でも監視対象にできる • それがいくつになったら? – 5分平均でCPU使用率 20%以上になったら、とか • どのAMIで? • どのサーバータイプで? – Small, large,.. • 何台を? – 1度に5台とか、1台ずつとか (一度増やしたら次は5分後とか) • 増やす?、減らす?
  5. scaling group 2 ELB Apache cron Apache Apache scaling group

    1 Min: 1 Max: 1 Health Check: ELB 起動時に自分にEIP付与 Min: 0 Max: 10 Scale in: ELBのLaytency2以下 Scale out: ELBのLaytency5以上 Health Check: ELB MySQL scaling group 3 Min: 1 Max: 1 Health Check: EC2 起動時に自分でEIP付与 Cronマシンから接続性を定期チェック し、接続できなければterminate 現状の構成
  6. scaling group 2 ELB Apache cron Apache Apache scaling group

    1 MySQL(master:3306) MySQL(slave:3307) scaling group 3 scaling group 4 MySQL (slave) MySQL (slave) Min: 0 Max: 10 Scale in: SC3のCPU XX以下 Scale out: SC3のCPUXX以上 Health Check: EC2 起動時SC3のMySQL:3307 を停 止し、rsyncしてsalveとして起動 server-idもSC3側のプログラムか ら取得 起動時 rsync もっとスマートな方法ない でしょうか? ^^; 今後の構成