Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Auto Scaling でサーバーを 安定稼動させたい
Search
shida
May 29, 2012
Technology
1
250
Auto Scaling でサーバーを 安定稼動させたい
24時間365日安定稼動
急にアクセスが増えても大丈夫
できるだけ安くしたい
そういう顧客のニーズにEC2のauto scalingで応えるための
サーバー構成やアーキテクチャについての発表
shida
May 29, 2012
Tweet
Share
More Decks by shida
See All by shida
受託開発で ビジネスづくりを楽しむ
shida
0
2.3k
受託アジャイルでの契約書作り請求や、外注パートナーへの支払いスキームまで
shida
0
830
スクレイピングの安定運用のために苦労したところ、工夫したところ
shida
4
1.9k
DevLOVEリンスタカフェ vol.7
shida
1
110
DevLOVE リンスタカフェ vol2 成長を促すKPIが見つからん
shida
0
54
現場の開発者でもできるユーザー中心かつ 仮説検証型の企画アプローチ
shida
0
2.6k
ユーザーが「それいいね!」と言うまで
shida
0
3k
ハイブリッドアプリの 受け入れテスト自動化
shida
0
190
SkypインタビューとKA法による分析
shida
4
860
Other Decks in Technology
See All in Technology
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
470
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
150
ソフトウェアエンジニアリングの知見を活かして データ基盤をいい感じにする on Snowflake [MIERUNE BBQ #10]
mtpooh
2
150
Matterport を使ってクラスメソッド各拠点のバーチャルオフィスツアーを作成してみた
wakatsuki
0
160
AOAI Dev Day LLMシステム開発 Tips集
hirosatogamo
15
3.7k
ゆめみのアクセシビリティの現在地と今後
ryokatsuse
3
290
LLMアプリケーションの評価の実践と課題 ~PharmaXにおける今後の展望~
pharma_x_tech
2
160
RAGのサービスをリリースして1年3ヶ月が経ちました
segavvy
4
920
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
データベース研修 DB基礎【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
210
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.3k
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
46
7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
12
3.8k
The Cost Of JavaScript in 2023
addyosmani
31
4.7k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
662
120k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
[RailsConf 2023] Rails as a piece of cake
palkan
35
4.4k
Teambox: Starting and Learning
jrom
130
8.6k
What's in a price? How to price your products and services
michaelherold
239
11k
Transcript
Auto Scaling でサーバーを 安定稼動させたい 志田 裕樹 2012.05.29
自己紹介 • 三鷹市下連雀1丁目在住 • FLATz久末君と友達 • Railsとか、 Zen Cartとか、 MTとか
• pgcafeは2,3回来たことあります
よくいただく要望 • 24時間365日安定稼動 • 急にアクセスが増えても大丈夫 • できるだけ安くしたい 人間が張り付くのは無理 AWSのauto scaling
で自動的に解決したい
Auto Scaling とは • 監視対象は? – CPU, Disc IO, トラフィック,
ELBからみたLaytencey, … – Custom Metricsを何でも監視対象にできる • それがいくつになったら? – 5分平均でCPU使用率 20%以上になったら、とか • どのAMIで? • どのサーバータイプで? – Small, large,.. • 何台を? – 1度に5台とか、1台ずつとか (一度増やしたら次は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 現状の構成
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 もっとスマートな方法ない でしょうか? ^^; 今後の構成