46
ラトリアスクエア株式会社 友浩 ELB/AutoScaling

[jaws days 2014]ELB/AutoScaling

Embed Size (px)

DESCRIPTION

jaws days 2014 ELB/Autoscalingについて

Citation preview

Page 1: [jaws days 2014]ELB/AutoScaling

ラトリアスクエア株式会社 本⽊木 友浩

ELB/AutoScaling

Page 2: [jaws days 2014]ELB/AutoScaling

本木 友浩と申します。• 1977/06/06 生まれ 36歳

• AB型 ふたご座

• 既婚(子供なし)

• 株式会社ラトリアスクエアで勤務してます。

• Webサイト制作からシステム開発までワンストップで行っていますので、よろしくお願いいたします。

• メインはプログラマですが、営業やディレクションも行います。サーバ管理もやります。

Page 3: [jaws days 2014]ELB/AutoScaling

今日のテーマ

AWS利用前・利用後 私のストレスについて

Page 4: [jaws days 2014]ELB/AutoScaling

今日お話すること• AWS利用前の弊社サービスの問題点

• AWSを利用したサーバ構成

• ELBの概要

• AutoScalingの概要

• ELB/AutoScalingを実際に利用した状況

Page 5: [jaws days 2014]ELB/AutoScaling

弊社サービスの概要• アフィリエイトサービスプロバイダー

• 「アムルメディア」http://amrmedia.jp

• パートナー数:約3,000

• クライアント数:約150

• プロモーション数:約1,000

• PV/1日:35万PV~40万PV

Page 6: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

Page 7: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

ロードアベレージ 常時10前後

Page 8: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

Page 9: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

もはやサービスは 落ちているも同然……

Page 10: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

対応方法は……

Page 11: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

神に祈るのみ!

Page 12: [jaws days 2014]ELB/AutoScaling

サーバ増やさなきゃだよね?

Page 13: [jaws days 2014]ELB/AutoScaling

サーバ増やさなきゃだよね? ロードバランサー設定したほうがよくね?

Page 14: [jaws days 2014]ELB/AutoScaling

サーバ増やさなきゃだよね? ロードバランサー設定したほうがよくね?

ちょっと待って、 そもそもデータセンターにスペースないじゃん!

Page 15: [jaws days 2014]ELB/AutoScaling

!

データセンターのラック追加して……

Page 16: [jaws days 2014]ELB/AutoScaling

!

データセンターのラック追加して…… サーバ発注して……

Page 17: [jaws days 2014]ELB/AutoScaling

!

データセンターのラック追加して…… サーバ発注して……

サーバのセットアップして……

Page 18: [jaws days 2014]ELB/AutoScaling

!

データセンターのラック追加して…… サーバ発注して……

サーバのセットアップして…… データセンターに持って行って設置して……

Page 19: [jaws days 2014]ELB/AutoScaling

やる事、多すぎ! !

|‾‾‾‾‾‾‾‾| |   無理っす!!!   | |________|     ∧∧ ||     ( ゚д゚)||     / づΦ めんどくさいし……

データセンター寒いし……

Page 20: [jaws days 2014]ELB/AutoScaling

ポチっとすればサーバ立ち上がるらしい! サーバ増やし放題らしい!

ロードバランサーなんかも使えるっぽい!

Page 21: [jaws days 2014]ELB/AutoScaling

とりあえずAWSなら 周りに詳しい方がいるので、何かあったら

なんとかなりそう!

Page 22: [jaws days 2014]ELB/AutoScaling

以前のサーバ構成

Webサーバ

DBサーバ

Page 23: [jaws days 2014]ELB/AutoScaling

サーバ構成ELB

AutoScaling

EC2 EC2 EC2 EC2 EC2

EC2

RDS(MySQL)RDS(MySQL)

EC2

Page 24: [jaws days 2014]ELB/AutoScaling

ELB

• Elastic Load Balancing は、複数の Amazon EC2 インスタンス間で、アプリケーショントラフィックの負荷を自動的に分散します。

Page 25: [jaws days 2014]ELB/AutoScaling

ELB

Page 26: [jaws days 2014]ELB/AutoScaling

AutoScaling

• 定義する条件に応じて、Amazon EC2 の能力を、自動的に縮小・拡張することができます。

Page 27: [jaws days 2014]ELB/AutoScaling

AutoScaling• Amazon EC2 群を自動的に縮小・拡張 CPU平均使用量が70%以上になった場合EC2を追加する。 CPU平均使用量が30%以下になった場合EC2を削除する。

• 規模の固定グループを作成して、ある一定の数のEC2が常に稼働している状態を保つ。何らかの障害でEC2が一つダウンしても自動でEC2を追加してくれます。

• Elastic Load Balancing での Auto Scaling Elastic Load Balancer の影響下にあるEC2が設定した条件下で稼働するようにEC2の追加、削除を行う。

Page 28: [jaws days 2014]ELB/AutoScaling

AutoScaling

• AWS SDKAWS SDK for PHPなどの開発キットを使ってコードを書く。

• Management Console Management Console上で設定する。

設定方法

Page 29: [jaws days 2014]ELB/AutoScaling

AutoScalingManagement Console

Page 30: [jaws days 2014]ELB/AutoScaling

AutoScaling登録方法

「launch configurations」より configurationを設定します。 ここで設定するconfigurationの内容で AutoScalingが動作します。

Create launch configurationからEC2のAMI,InstanceTypeなどを設定することができます。

Page 31: [jaws days 2014]ELB/AutoScaling

AutoScaling登録方法

AutoScalingGroupsよりグループを 作成します。

グループ作成時に先ほど設定したconfigulationを選択します。 (グループ作成時にconfigulationを設定することもできます。)

Page 32: [jaws days 2014]ELB/AutoScaling

AutoScaling

細かい登録方法

Page 33: [jaws days 2014]ELB/AutoScaling

AutoScaling

細かい登録方法は ググってください……

Page 34: [jaws days 2014]ELB/AutoScaling

AutoScaling

もろもろ、設定が完了すると……

Page 35: [jaws days 2014]ELB/AutoScaling

AutoScaling

こんな感じの画面になります!

Page 36: [jaws days 2014]ELB/AutoScaling

AutoScaling

Scaling Policiesよりスケールする条件を設定します。 この場合、特定のEC2インスタンスのCPUUtilizationが80%以上の場合 インスタンスを追加し、60%以下になった場合、インスタンスをリムーブす

るように設定しています。

Page 37: [jaws days 2014]ELB/AutoScaling

AutoScaling

AutoScalingGroupの動作ログを確認することができます。

Page 38: [jaws days 2014]ELB/AutoScaling

AutoScaling

Page 39: [jaws days 2014]ELB/AutoScaling

サーバ構成ELB

AutoScaling

EC2 EC2 EC2 EC2 EC2

EC2

RDS(MySQL)RDS(MySQL)

EC2

ロードアベレージ 0.2-1.5 !

Page 40: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリット

Page 41: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリットサービスのスタートアップ時に

サーバ構成を細かく決める必要が無い

Page 42: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリット

スタートアップ時に余分なサーバ資源を 準備しなくても良い

Page 43: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリットちょっと重くなったらELB

Page 44: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリット

!

万が一、突発的な負荷が発生したら… と眠れない日々を過ごしたくないなら

AutoScaling

Page 45: [jaws days 2014]ELB/AutoScaling

まとめAWSのメリット

JAWS-UGという素敵なユーザーグループがある

Page 46: [jaws days 2014]ELB/AutoScaling

以上。 !

ご清聴ありがとうございました。