Successfully reported this slideshow.

20131102 AWSを実用するために - AWSらしいコスト削減 - jaws-ug osaka#09

1,481 views

Published on

  • Be the first to comment

20131102 AWSを実用するために - AWSらしいコスト削減 - jaws-ug osaka#09

  1. 1. AWSを実用するために - AWSらしいコスト削減 - JAWS-UG Osaka 第9回勉強会 <Beginners & ServiceProviders> 2013.11.02 桶谷 拓也
  2. 2. Who am I ? • 桶谷 拓也(おけたに たくや) • 業務系エンジニア 無職 update!! • JAWS-UG Osaka • AWS認定ソリューションアーキテクト - アソシエイト • Tw:@okeee0315 / Fb:okeee0315 • Like:CloudFormation / SQS/Queuing Chain/Self Registration • クラウド/HTML5/Node.js
  3. 3. ハッシュタグ #jawsug Original Update by stevegarfield / http://www.flickr.com/photos/stevegarfield/
  4. 4. アジェンダ ‣さらっとおさらい ‣AWSで必要になるコスト ‣安い?高い? ‣仮想マシンをなんとかしよう ‣さらなるコスト削減
  5. 5. さらっとおさらい
  6. 6. Amazon Web Services RDS EC2 S3
  7. 7. Amazon Web Services RDS EC2 S3 Elasticity
  8. 8. Amazon Web Services RDS EC2 S3 VPC IAM ELB
  9. 9. Amazon Web Services RDS EC2 S3 VPC IAM ELB Elasticity + Information Security
  10. 10. Amazon Web Services RDS EC2 S3 VPC IAM ELB CloudFormation
  11. 11. Amazon Web Services RDS EC2 S3 VPC IAM ELB CloudFormation Elasticity + Information Security + Programmable
  12. 12. これで AWSデビューできるぜ! Original Update by mozillaeu / http://www.flickr.com/photos/mozillaeu/
  13. 13. AWSが良いのはわかった。 で、なんぼ?
  14. 14. 続きはこちらで http://bit.ly/JAWSO09
  15. 15. ということで続きです。 前回のSlideは http://bit.ly/iegg-01
  16. 16. AWSで必要になるコスト Original Update by stopnlook/ http://www.flickr.com/photos/crazyneighborlady/
  17. 17. What's Cost ? ‣ 開発 ‣ 保守運用 ‣ ソフトウェア購入 ‣ インフラ ...etc
  18. 18. What's Cost ? ‣ 開発 ‣ 保守運用 ‣ ソフトウェア購入 ‣ インフラ ...etc AWSは全て に影響する
  19. 19. AWSの課金ポイント ‣ 仮想マシン EC2, RDS ‣ ストレージ S3, EBS ‣ 通信
  20. 20. AWSの課金ポイント ‣ 仮想マシン EC2, RDS ‣ ストレージ S3, EBS ‣ 通信 仮想マシンが 総額の7,8割
  21. 21. AWSの課金ポイント ‣ 仮想マシン EC2, RDS ‣ ストレージ S3, EBS ‣ 通信 ココを減らす ことが最優先
  22. 22. 仮想マシンの課金ポイント ‣ 数(台数) ‣ 稼働時間 ‣ インスタンスタイプ
  23. 23. 仮想マシンの課金ポイント ‣ 数(台数) ‣ 稼働時間 ‣ インスタンスタイプ $0.35 / h のインスタンスタイプを10台、1ヶ月稼働さ せると  $0.35 × 10台 × (24h × 30d) = $2,520
  24. 24. 仮想マシンの課金ポイント $0.35 / h のインスタンスタイプを10台、1ヶ月稼働さ せると  $0.35 × 10台 × (24h × 30d) = $2,520 1年間だと $2,520 × 12m = $30,240
  25. 25. 安い? 高い? Original Update by byJoeLodge / http://www.flickr.com/photos/joe57spike/
  26. 26. $30,240/年で何ができる か? ‣ 約300万円 ‣ いいPC 10台(30万 10台) とか ‣ それなりのサーバー 3台(100万 3台)
  27. 27. クラウドは安いんじゃないの? Original Update by vauvau / http://www.flickr.com/photos/vauvau/
  28. 28. AWSは安い、という幻想 ‣ 安くない ‣ 高くはないかもしれない ‣ 安く、出来る
  29. 29. AWSは安い、という幻想 ‣ 安くない ‣ 高くはないかもしれない ‣ 安く、出来る安く、出来る
  30. 30. 仮想マシンを何とかしよう ‣ 最初に行うことは分析 ‣ まずは己を知る ‣ 本当に必要な部分を見極める
  31. 31. 仮想マシンを何とかしよう ‣ 数(台数)、稼働時間、インスタンスタイプ ‣ 不要なインスタンスは止める ‣ 不要な時間は止める ‣ 不要な性能は減らす
  32. 32. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中
  33. 33. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 !?
  34. 34. あるある その① ‣ 何に使用しているかわからないEC2インスタンス ‣ 何故か起動している ‣ 元々あったから
  35. 35. あるある その① ‣ 何に使用しているかわからないEC2インスタンス ‣ 何故か起動している ‣ 元々あったから そんなインスタンスは問答無用で Terminate!
  36. 36. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中
  37. 37. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 開発用って24/365 の必要ある?
  38. 38. あるある その② ‣ 開発で使用しているインスタンスが24/365で起動 ‣ 早朝、深夜、休みの日もしっかり起動 誰がそんな時間に開発するんだっ! 開発する時だけ起動しるっ!
  39. 39. あるある その② ‣ 開発用は9:00∼18:00のみ起動するように ‣ 土日も起動しない ‣ 必要な場合は手動、他は自動がベスト ‣ 24h → 8h で コストが1/3に
  40. 40. あるある その② ‣ 時間指定でのインスタンス起動/停止はOpsWorksで提 供されている ‣ AWS CLI for /F %i in ('aws ec2 describe-instances --filters "Name=tag- key,Values=Stack" "Name=tag-value,Values=development" "Name=instance-state-name,Values=running" --profile profile1 ^¦ jq .Reservations[].Instances[].InstanceId') do (aws ec2 stop- instances --instance-ids %i --profile profile1)
  41. 41. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中
  42. 42. 分析してみる WebServer(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 パターン1
  43. 43. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 パターン2
  44. 44. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 最初から WebServer2台?
  45. 45. あるある その③ ‣ 最初から無駄に大きな構成 ! 構成は需要に合わせて拡大して いけばいい!
  46. 46. あるある その③ ‣ クラウドなのでElasticityに ‣ Auto Scaling ‣ 可用性、SLAとのバランス
  47. 47. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中
  48. 48. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 監視Server?
  49. 49. あるある その④ ‣ 何でもかんでもEC2 ‣ オンプレミスからの そのまま の移行 ! オンプレミス脳を捨てよ!
  50. 50. あるある その④ ‣ AWSで提供されているEC2以外のサービスを上手く活 用する ‣ 必要な要件を見極める ‣ ServiceProviders に相談 ‣ JAWS-UG の活用
  51. 51. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 CloudWatch を使う
  52. 52. CloudWatch ‣ AWSのリソースを監視するサービス ‣ サービスごとに定義された監視項目(メトリクス) ‣ メトリクスに対してアラームを設定出来る ‣ アラーム時に通知を送ることが出来る
  53. 53. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中
  54. 54. 分析してみる ALL Server(開発) WebServer(開発) DBServer(開発) AppServer(開発) 監視Server WebServer(本番) WebServer(本番) DBServer(本番) AppServer(本番) 用途不明 全てm1.large, 24/365稼働中 この時点で 約1/3に
  55. 55. $30,240/年が1/3になると ‣ 約200万円のコスト削減 ‣ その分を開発に回してサービスの拡充 ‣ 開発環境をより良く
  56. 56. みんなHappy!! Original Update by dborman2 / http://www.flickr.com/photos/dborman2/
  57. 57. さらなるコスト削減 Original Update by dborman2 / http://www.flickr.com/photos/dborman2/
  58. 58. さらなるコスト削減 ‣ Reserved Instance ‣ Spot Instance ‣ Region ‣ Non EC2
  59. 59. Reserved Instance ‣ Instance の予約購入 ‣ 予約金を先に払うことで時間課金を軽減 0 17.5 35 52.5 70 n 月 n+1 月 n+2 月 n+3月 オンデマンド リザーブド
  60. 60. Reserved Instance ‣ 長期に渡ったInstanceの稼働に適している ‣ 1年間 or 3年間 ‣ サービスイン後、様子を見ながらRIを購入
  61. 61. Spot Instance ‣ オークション形式 ‣ Spot 価格 < 入札価格の時にInstanceが起動 ‣ 入札価格は上限を入力 ‣ Spot 価格は変動する(最近高騰中)
  62. 62. Spot Instance ‣ なんか試したいとき ‣ いつでもいいけど実行したいバッチ処理 ‣ 入札価格をオンデマンドと同じに
  63. 63. Region ‣ Region毎に時間単価が変わる ‣ 東京は高い ‣ オレゴン、バージニアが安い
  64. 64. Region ‣ 距離が離れればサービスの応答が遅れる ‣ 応答性が求められない部分で使用する
  65. 65. Non EC2 ‣ EC2(RDB)を用いないシステム構成 ‣ S3による静的サイトホスティング ‣ KVS(SimpleDB、DynamoDB)の活用
  66. 66. Non EC2
  67. 67. 間に合わなかったので次回! Original Update by jlodder / http://www.flickr.com/photos/jlodder/
  68. 68. Original Update by stevendepolo / http://www.flickr.com/photos/stevendepolo/ Question?

×