Successfully reported this slideshow.
Your SlideShare is downloading. ×

CTO Night & Day Morning Session "Auto Scaling & Spot Instances Deep Dive"

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 47 Ad

More Related Content

Slideshows for you (20)

Advertisement

Similar to CTO Night & Day Morning Session "Auto Scaling & Spot Instances Deep Dive" (20)

More from akitsukada (20)

Advertisement

Recently uploaded (20)

CTO Night & Day Morning Session "Auto Scaling & Spot Instances Deep Dive"

  1. 1. Amazon  EC2 Spot  Instances  &  Auto  Scaling Deep  Dive (Morning  Session) Amazon  Web  Service  Japan  K.K. Solutions  Architect Akihiro  Tsukada(@akitsukada)
  2. 2. AWS  Black  Belt  Tech  Webinar  2015 • 今後の配信予定 12⽉月は「新サービス紹介⽉月間」です! – 12/02(⽔水)AWS  IoT – 12/09(⽔水)AWS  WAF – 12/16(⽔水)Amazon  EC2  スポットインスタンス &  Auto  Scaling – 12/22(⽕火)AWS  Black  Belt  年年の瀬座談会 -‐‑‒ Black  Belts • イベントスケジュール http://aws.amazon.com/jp/event_̲schedule/
  3. 3. AWSでの担当 スタートアップのお客様 モバイル系ソリューション AWS  Mobile  Hub Amazon  Cognito サーバレスアーキテクチャ 低コストアーキテクチャ エンジニア的な属性 Ruby,  iOS OOP,  SOLID,  KISS 好き ジャッキーチェン 妻と娘 塚⽥田 朗弘 @akitsukada
  4. 4. はじめに
  5. 5. 今⽇日の⽬目的 Auto  ScalingとEC2スポットインスタンスの 仕様を理理解する それぞれに適したワークロードを理理解する コストカットの規模感を把握する
  6. 6. アジェンダ Amazon  EC2 EC2  スポットインスタンス Auto  Scaling Q  &  A
  7. 7. Amazon  EC2
  8. 8. Amazon  Elastic  Compute  Cloud  (EC2) • 特徴 (http://aws.amazon.com/jp/ec2/) – 必要な時に必要なだけ1時間単位の従量量課⾦金金で 利利⽤用できる仮想サーバリソース – 世界11箇所のリージョンで利利⽤用可能 – 様々なスペック・OSを選択可能 • 価格体系 (http://aws.amazon.com/jp/ec2/pricing/) – インスタンス利利⽤用料料($0.02/hour  〜~) – データ転送量量(OUT  $0.14/GB  )   仮想クラウドサーバ
  9. 9. Amazon  EC2 購⼊入オプション オンデマンドインスタンス スタンダードな時間課⾦金金型インスタンス リザーブドインスタンス 1年年間または3年年間の予約をすることで最⼤大75%の割引 スポットインスタンス 使われていないEC2インスタンスに⼊入札して利利⽤用 最⼤大90%以上の⼤大幅割引 Dedicated  Hosts お客様専⽤用の物理理サーバーを確保
  10. 10. Auto  Scaling • 特徴 (http://aws.amazon.com/jp/autoscaling/) – Amazon  EC2インスタンス群を⾃自動的にス ケール – 耐障害性の向上(インスタンスの異異常を検知 して、新しいインスタンスを起動) – EC2インスタンスの起動料料⾦金金の最適化 • 価格体系 (http://aws.amazon.com/jp/autoscaling/pricing/) – Auto  Scaling⾃自体の利利⽤用は無料料 – Auto  Scalingによって起動されるEC2インス タンスの起動料料⾦金金 • Spotインスタンスとしても起動可能 EC2インスタンスを負荷またはスケジュールに応じて⾃自動増減 Auto Scaling group Desired   Capacity 必要に応じて 追加される Capacity 起動設定 • インスタンスタイプ • AMI • Spot⼊入札価格 など
  11. 11. EC2  スポットインスタンス
  12. 12. Amazon  EC2  スポットインスタンス 余っているEC2インスタンスを低価格で有効活⽤用していただ く仕組み 最⼤大90%以上の割引価格でEC2インスタンスを使⽤用可能 スポット⼊入札アドバイザー、Spot  Fleet、Spot  Blockなど の強⼒力力な周辺ツール Amazon  EMR、Auto  Scalingとの併⽤用が容易易 $1 $
  13. 13. 最近のスポットインスタンスの進化 2015/04 2015/08 2015/10 Spot  Fleet  APIのリリース スポット⼊入札アドバイザーのリリース Spot  Fleet  APIがModify  Fleetに対応 2015/10 マネジメントコンソールがSpot  Fleetをサポート 2015/10 Spot  Blockのリリース
  14. 14. 概念念の整理理 EC2スポットインスタンス(Non  Block) Spot  Fleet Spot  Block
  15. 15. 概念念の整理理 – EC2スポットインスタンス(Non  Block) EC2購⼊入オプションの⼀一つで、スポットインスタンスの 基本となる考え⽅方 管理理コンソールおよびRequestSpotInstances APIで利利 ⽤用できる スポット価格が⼊入札価格を上回るとターミネートされる EC2インスタンスを使う機能の⼀一部(Auto  Scaling、 EMRなど)は、オプションとしてスポットインスタン スの適⽤用を選択できる
  16. 16. 概念念の整理理 – Spot  Fleet EC2スポットインスタンスを効率率率よく利利⽤用するための⽀支 援機能 管理理コンソールおよびRequestSpotFleet APIから利利⽤用 複数のスポットプールにそれぞれ異異なる価格を⼊入札した り、各プールのスポット価格が変動した際の処理理を⾃自動 化したりできる インスタンスの配分戦略略として、最も低価格なスポット プールを優先して使う、極⼒力力多くのスポットプールを分 散して利利⽤用するといった戦略略が選択できる
  17. 17. 概念念の整理理 – Spot  Block スポットインスタンスのオプションではあるが、指定した 時間中(1〜~6時間)はターミネートされないという機能 スポットインスタンスをAPIでリクエストする際、 blockDurationMinutesを指定するとSpot  Blockのリクエ ストになる 管理理コンソールは未対応 このスポット価格は通常のスポット市場とは別体系 スポットインスタンスというより、超短期間かつ途中停⽌止 してもよいリザーブドインスタンスに近い Auto  Scaling、EMR、Spot  Fleetとは併⽤用できない
  18. 18. EC2  スポットインスタンス 基本仕様
  19. 19. EC2  スポットインスタンスの基本ルール リージョン、Availability  Zone、インスタンスタイプ*ごとに、リ アルタイムに変動する「スポット価格」が存在する スポットプールと⼊入札価格を指定し、スポットリクエストする 落落札できた(≒⼊入札価格がスポット価格を上回った)場合、イン スタンスが起動する 実際に課⾦金金されるのは⼊入札価格でなくスポット価格。Spot   Blockリクエストの場合は落落札時の価格で固定。 ⼊入札価格がスポット価格を下回った場合、Spot  Blockリクエスト でない場合は強制ターミネートされる 強制ターミネートされた場合、1時間未満の時間は無料料 ターミネートの2分前から通知を受け取ることができる *リージョン+AZ+インスタンスタイプの単位を「スポットプール」と⾔言う。
  20. 20. 落落札アルゴリズム Web参照 http://docs.aws.amazon.com/ja_̲jp/AWSEC2/latest/UserGuide/how-‐‑‒spot-‐‑‒ instances-‐‑‒work.html
  21. 21. EC2  スポットインスタンス(Non  Block) スポット価格と課⾦金金チャート
  22. 22. スポットリクエスト(Non  Block)と課⾦金金 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.01 $0.24 $0.30
  23. 23. 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.01 $0.24 $0.30 ②⼊入札額>スポット価格 となったので インスタンス起動 スポットリクエスト(Non  Block)と課⾦金金
  24. 24. 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.01 $0.24 $0.30 ②⼊入札額>スポット価格 となったので インスタンス起動 1h 1h ③1時間 単位の課⾦金金 スポットリクエスト(Non  Block)と課⾦金金
  25. 25. 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.01 $0.24 $0.30 ②⼊入札額>スポット価格 となったので インスタンス起動 1h 1h ③1時間 単位の課⾦金金 ④⼊入札額<スポット価格 となったので インスタンス終了了 スポットリクエスト(Non  Block)と課⾦金金
  26. 26. 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.01 $0.24 $0.30 ②⼊入札額>スポット価格 となったので インスタンス起動 1h 1h ③1時間 単位の課⾦金金 ④⼊入札額<スポット価格 となったので インスタンス終了了 <1h ⑤強制終了了時の1時間 未満の利利⽤用分は⾮非課⾦金金 スポットリクエスト(Non  Block)と課⾦金金
  27. 27. Spot  Block スポット価格と課⾦金金チャート
  28. 28. スポットリクエスト(Spot  Block)と課⾦金金 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.24 $0.30 ③指定した時間が 過ぎたので終了了 6h ②指定した時間中 は課⾦金金額固定
  29. 29. スポットリクエスト(Spot  Block)と課⾦金金 単価 時間 スポット価格 ⼊入札額 課⾦金金額 ①リクエスト 投⼊入 $0.24 $0.30 ③⼿手動でBlock終了了 6h ②指定した時間中 は課⾦金金額固定
  30. 30. Spot  Fleet デモ
  31. 31. ⼊入札戦略略 コスト最⼩小型 オンデマンド ⽣生存優先型 Spot  Fleet  API Diversified Lowest  Cost
  32. 32. スポット⼊入札アドバイザー(2015/08〜~) スポットプールごとに、価格の安定度度を表⽰示してくれる https://aws.amazon.com/jp/ec2/spot/bid-‐‑‒advisor/
  33. 33. Auto  Scaling
  34. 34. Auto  Scaling  Concepts Launch  Configuration • Auto  Scaling  Groupは、 EC2  instanceを起動す るとき Launch   Configuration(起動設 定) を参照する • Launch  Configuration には、AMIやインスタン スタイプに関する情報が 含まれる Scaling  Plan • いつどのようにスケール するかをスケーリングプ ランに定義する • スケーリングプランには、 負荷/SQSベースの動的 なスケーリングと、スケ ジュールベースのス ケーリングがある Auto  Scaling  Groups • EC2インスタンスはAuto   Scaling  Groupで管理さ れる • Auto  Scaling  Groupは EC2インスタンスの最小 数、最大数、希望台数 (オプション)を定義して 作成する
  35. 35. Benefits  of  Auto  Scaling • コスト効率率率: • Automatically   adapt  capacity   to  demand • 可⽤用性: • Counteract   failures  of   instances  or   AZs • 柔軟に調整可能: • With   bootstrapping   &  lifecycle   hooks
  36. 36. 3  types  of  Auto  Scaling Metrics  Based SQS Scheduled  Action
  37. 37. Scaling  on  a  SQS
  38. 38. Scaling  on  a  Metrics CloudWatch
  39. 39. Scaling  on  a  Schedule Elastic Load Balancing Auto Scaling group cron-­like  syntax  for   recurring  scaling   events Schedule   individual  events   (up  to  135  events   per  group) Auto  Scaling CLI  &  SDK  only! Not  available  in  AWS  management  console Set  min  /  max /  desired capacity Elastic Load Balancing
  40. 40. Instance  Lifecycle Scale Out   Event Instance  launching:   Pending InService TerminatingTerminated Scale In   Event Health check   failed
  41. 41. Bootstrapping • サーバの初期化は全て⾃自動化されている必要がある -‐‑‒ 全て設定済みのAMI(“Golden  Image”)を使うか -‐‑‒ 基礎的な設定済みのAMI  +  追加の設定スクリプト -‐‑‒ Via  Userdata (EC2起動時のフックスクリプト) -‐‑‒ Via  Chef/Puppet/Ansible/… -‐‑‒ Using  AWS  CodeDeploy • …
  42. 42. Bootstrapping #!/bin/bash yum –y update; yum install –y ruby; yum install –y aws-cli; cd /home/ec2-user; aws s3 cp s3://aws-codedeploy-us-east-1/latest/ ¥ install . --region us-east-1; chmod +x ./install; ./install auto;

×