[jaws days 2014]elb/autoscaling

Post on 03-Jul-2015

390 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

jaws days 2014 ELB/Autoscalingについて

TRANSCRIPT

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

ELB/AutoScaling

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

• AB型 ふたご座

• 既婚(子供なし)

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

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

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

今日のテーマ

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

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

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

• ELBの概要

• AutoScalingの概要

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

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

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

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

• クライアント数:約150

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

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

以前のサーバ構成

Webサーバ

DBサーバ

以前のサーバ構成

Webサーバ

DBサーバ

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

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

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

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

対応方法は……

以前のサーバ構成

Webサーバ

DBサーバ

時間帯によっては

ロードアベレージ 50-60

神に祈るのみ!

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

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

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

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

!

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

!

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

!

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

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

!

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

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

やる事、多すぎ! !

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

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

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

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

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

なんとかなりそう!

以前のサーバ構成

Webサーバ

DBサーバ

サーバ構成ELB

AutoScaling

EC2 EC2 EC2 EC2 EC2

EC2

RDS(MySQL)RDS(MySQL)

EC2

ELB

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

ELB

AutoScaling

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

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

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

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

AutoScaling

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

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

設定方法

AutoScalingManagement Console

AutoScaling登録方法

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

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

AutoScaling登録方法

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

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

AutoScaling

細かい登録方法

AutoScaling

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

AutoScaling

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

AutoScaling

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

AutoScaling

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

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

AutoScaling

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

AutoScaling

サーバ構成ELB

AutoScaling

EC2 EC2 EC2 EC2 EC2

EC2

RDS(MySQL)RDS(MySQL)

EC2

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

まとめAWSのメリット

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

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

まとめAWSのメリット

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

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

まとめAWSのメリット

!

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

AutoScaling

まとめAWSのメリット

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

以上。 !

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

top related