Upload
takuro-sasaki
View
1.211
Download
2
Embed Size (px)
DESCRIPTION
JAWS-UG三都物語2014 初心者向け Elasticity ELB/AutoScaling/EIP
Citation preview
JAWS-UG 三都物語 2014 !
Elasticity あんじょうやりや
2014年7月5日 NRIネットコム株式会社 佐々木拓郎
✦ 本日のアジェンダ
‣ ELB
‣ AutoScaling
‣ EIP
#jawsug
✦ プロフィール
‣ NRIネットコム株式会社
‣ Twitter: @dkfj
‣ Facebook: takuro.sasaki
‣ blog: http://blog.takuros.net/
‣ 好きなAWSサービス: S3,SQS
‣ 本業ともAWSとも全く関係ない技術本を執筆中 (Rubyのクローラー本。8月くらいに発売?)
自己紹介: 佐々木拓郎
Elasticity
Elasticity (イラステシティー)
【名詞】 弾力性、融通性、弾性
つまり便利ということです。
ElasticがつくAWSのサービス
• Elastic Ip
• Elastic Load Balancer
• Elastic Beanstalk
• Elastic Cache
• Elastic Block Store
• Elastic MapReduce
• Elastic Transcoder ⇒名前に困ったら、頭にElasticを付ける傾向があります
コンピュータ処理 Amazon EC2
ストレージ Amazon S3, Glaicer
Amazon EBS
データベース Amazon RDS, DynamoDB
Amazon Simple DB Elasticache, Redshift
コンテンツ配信 Amazon
CloudFront
メッセージ Amazon SNS Amazon SQS
分散処理 Elastic
MapReduce
メール配信 Amazon SES
ワークホース Amazon
Mechanical Turk
認証&請求 AWS IAM
Identity Federation Consolidated Billing
モニタリング Amazon
CloudWatch
スケーリング Auto Scale
ネットワーク&ルーティング Amazon VPC ELB, Route53
AWS DirectConnect
ライブラリ&SDKs Java, PHP, .NET, Python, Ruby
Webインターフェース Management
Console
IDEプラグイン Eclipse,
Visual Studio
デプロイと自動化 Elastic Beanstalk CloudFormation
OpsWorks
AWSのサービス一覧この辺りの レイヤーです
Elastic Load Balancer (ELB)
ELBとは?
AWSのロードバランサー サービス
‣ 負荷分散
‣ スケーラブル
‣ ヘルスチェック機能
‣ AutoScalingとの連携
ELBの概念図
リクエストを受け付けて 割り振る
負荷分散の仕組みDNS
ラウンドロビン
接続状況に 応じて割り振り
AZごとに2台構成がお勧め (MultiAZの場合、4台)
ELBのスケーリング
負荷に応じて、勝手にスケーリング
ヘルスチェック機能
指定したルールに従いバックエンドの サーバのヘルスチェック
‣ PortCheck / HTTP Ping
‣ タイムアウト値
‣ チェック間隔
‣ 成功/失敗回数
AutoScalingとの連携
負荷に応じて、自動的にサーバが増える!!
夢のような機能 ・しかし、銀の弾丸では無い ・増加までのタイムラグ ・ボトルネックの移動 ⇒使いこなせれば、大きな力
AutoScaling
AutoScalingとは?負荷に応じて、自動的にサーバを
増減するサービス
ELB以外とも連携できる
例えば、SQS 処理待ちの数により、サーバを増減
Custom Metricsを使えば、 何でも出来る
AutoScalingの設定
複数のルールの設定が必要
‣ Launch Configuration
⇒起動するインスタンスの情報
‣ AutoScaling Group
⇒対象のネットワークや台数
‣ AutoScaling Policy
⇒増減のルール
1台でもAutoScaling
最低、最大台数を1台に指定 サーバが落ちても、勝手に復活
起き上がりこぼし パターン
AutoScalingのデプロイの戦略どうやって、アプリ・コンテンツを
最新の状態を維持するのか?
AMI再作成パターン
アプリ・リリース後に、AMIを作成。AutoScaling GroupのAMIを入れ替え
BootStrapパターン
起動後に、最新のアプリをデプロイする
他にも
いろいろな方法がある
‣ NFS Sharingパターン
⇒アプリ/コンテンツをNFSサーバで共有
‣ Clone Serverパターン
⇒起動時に他のサーバからコピーするクラウドデザインパターン(CDP)が
参考になります
Elastic IP (EIP)
EIPとは?
インスタンスに割り当て可能なグローバルIP
Elasticity?
付け替え可能
サーバとEIPを 1対1の関係で考えると Elasticではなくなる
Elasticityの例Google Maps APIの利用
• 1IP辺り1日2,500回のリクエスト制限
• 郵便番号(12万件)を、経度緯度に変換したい
• 120,000件/2,500回 ⇒ 48日
• AWSを利用して50台のサーバを使い1時間で完了
!
!
‣ Elasticityは、AWSの華
‣ オンプレミスの設計に引きづられ過ぎるとElasticityが薄れる
‣ Cloud Design Patternを参考に
まとめ
!
‣ AWSマイスターシリーズ
http://www.slideshare.net/AmazonWebServicesJapan/20130612-aws-meisterregenerateelbpublic
http://www.slideshare.net/AmazonWebServicesJapan/awsa
‣ クラウドデザインパターン(CDP)
http://aws.clouddesignpattern.org/index.php/
‣ 参照URL
Amazon Elastic Load Balancing (ELB)の内部構造および拡張・障害時の動き http://blog.takuros.net/entry/20140211/1392112668
参考資料
ご清聴ありがとうございました 後日の質問は、@dkfjまで