Submit Search
Upload
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
•
0 likes
•
871 views
M
Masafumi Noguchi
Follow
MasterCloud #4 2017.8.10 https://mastercloud.connpass.com/event/61736/
Read less
Read more
Software
Report
Share
Report
Share
1 of 44
Download now
Download to read offline
Recommended
マルチクラウド環境でモビンギはどのようにコンテナを動かしているか
マルチクラウド環境でモビンギはどのようにコンテナを動かしているか
Masafumi Noguchi
OpenShift 3で、DockerのPaaSを作る話
OpenShift 3で、DockerのPaaSを作る話
Kazuto Kusama
AWS Amplify 入門
AWS Amplify 入門
Hideaki Aoyagi
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
CCCEU Feedback
CCCEU Feedback
Go Chiba
Google Cloud Messaging for Android ことはじめ(Eclipseから動かしてみる編)
Google Cloud Messaging for Android ことはじめ(Eclipseから動かしてみる編)
kojiokb
Google Cloud Messaging for Android ことはじめ(もっと簡単に動かしてみる編)
Google Cloud Messaging for Android ことはじめ(もっと簡単に動かしてみる編)
kojiokb
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
Hideaki Aoyagi
Recommended
マルチクラウド環境でモビンギはどのようにコンテナを動かしているか
マルチクラウド環境でモビンギはどのようにコンテナを動かしているか
Masafumi Noguchi
OpenShift 3で、DockerのPaaSを作る話
OpenShift 3で、DockerのPaaSを作る話
Kazuto Kusama
AWS Amplify 入門
AWS Amplify 入門
Hideaki Aoyagi
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
CCCEU Feedback
CCCEU Feedback
Go Chiba
Google Cloud Messaging for Android ことはじめ(Eclipseから動かしてみる編)
Google Cloud Messaging for Android ことはじめ(Eclipseから動かしてみる編)
kojiokb
Google Cloud Messaging for Android ことはじめ(もっと簡単に動かしてみる編)
Google Cloud Messaging for Android ことはじめ(もっと簡単に動かしてみる編)
kojiokb
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
Hideaki Aoyagi
LocalStack
LocalStack
chibochibo
Jupiter notebookをawsに構築しよう
Jupiter notebookをawsに構築しよう
Mugen Fujii
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShift
Y K
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
takanori suzuki
Istio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud Foundry
Kazuto Kusama
Vagrantと網元で開発環境を作ってみよう
Vagrantと網元で開発環境を作ってみよう
Takuma Morikawa
第六回Jenkins勉強会
第六回Jenkins勉強会
Kohsuke Kawaguchi
Azure serverlesssummit2018
Azure serverlesssummit2018
Tsukasa Kato
Live配信のワークフロー takusuta tech conf #1
Live配信のワークフロー takusuta tech conf #1
yoshinori sugiyama
各社のFaaSを比較してみる
各社のFaaSを比較してみる
ryosuke matsumura
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた
pyar6329
ここ最近のJenkins新機能
ここ最近のJenkins新機能
Kohsuke Kawaguchi
The Internal of Serverless Plugins
The Internal of Serverless Plugins
Terui Masashi
サーバー&インフラ勉強会 Vol.1 いとー
サーバー&インフラ勉強会 Vol.1 いとー
krs_mizuno
Cloud Foundry構成概要 111018
Cloud Foundry構成概要 111018
Uemura Yuichi
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
kojiokb
Grunt入門
Grunt入門
Tsuyoshi Maeda
Infrakit Docker_Tokyo_meetup
Infrakit Docker_Tokyo_meetup
Yuji Oshima
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Tsuyoshi Maeda
なぜcybozu.comは選ばれるのか
なぜcybozu.comは選ばれるのか
Cybozucommunity
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
de:code 2017
More Related Content
What's hot
LocalStack
LocalStack
chibochibo
Jupiter notebookをawsに構築しよう
Jupiter notebookをawsに構築しよう
Mugen Fujii
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShift
Y K
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
takanori suzuki
Istio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud Foundry
Kazuto Kusama
Vagrantと網元で開発環境を作ってみよう
Vagrantと網元で開発環境を作ってみよう
Takuma Morikawa
第六回Jenkins勉強会
第六回Jenkins勉強会
Kohsuke Kawaguchi
Azure serverlesssummit2018
Azure serverlesssummit2018
Tsukasa Kato
Live配信のワークフロー takusuta tech conf #1
Live配信のワークフロー takusuta tech conf #1
yoshinori sugiyama
各社のFaaSを比較してみる
各社のFaaSを比較してみる
ryosuke matsumura
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた
pyar6329
ここ最近のJenkins新機能
ここ最近のJenkins新機能
Kohsuke Kawaguchi
The Internal of Serverless Plugins
The Internal of Serverless Plugins
Terui Masashi
サーバー&インフラ勉強会 Vol.1 いとー
サーバー&インフラ勉強会 Vol.1 いとー
krs_mizuno
Cloud Foundry構成概要 111018
Cloud Foundry構成概要 111018
Uemura Yuichi
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
kojiokb
Grunt入門
Grunt入門
Tsuyoshi Maeda
Infrakit Docker_Tokyo_meetup
Infrakit Docker_Tokyo_meetup
Yuji Oshima
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Tsuyoshi Maeda
What's hot
(20)
LocalStack
LocalStack
Jupiter notebookをawsに構築しよう
Jupiter notebookをawsに構築しよう
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
コンテナ運用基盤 with OpenShift
コンテナ運用基盤 with OpenShift
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Ruby で zabbix agent の loadable module を作れる loadable module を C言語 + mruby で作った
Istio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud Foundry
Vagrantと網元で開発環境を作ってみよう
Vagrantと網元で開発環境を作ってみよう
第六回Jenkins勉強会
第六回Jenkins勉強会
Azure serverlesssummit2018
Azure serverlesssummit2018
Live配信のワークフロー takusuta tech conf #1
Live配信のワークフロー takusuta tech conf #1
各社のFaaSを比較してみる
各社のFaaSを比較してみる
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた
ここ最近のJenkins新機能
ここ最近のJenkins新機能
The Internal of Serverless Plugins
The Internal of Serverless Plugins
サーバー&インフラ勉強会 Vol.1 いとー
サーバー&インフラ勉強会 Vol.1 いとー
Cloud Foundry構成概要 111018
Cloud Foundry構成概要 111018
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Google Cloud Messaging for Android ことはじめ(サンプルコードを動かしてみる編)
Grunt入門
Grunt入門
Infrakit Docker_Tokyo_meetup
Infrakit Docker_Tokyo_meetup
Babelで先取り次世代javascript
Babelで先取り次世代javascript
Similar to MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
なぜcybozu.comは選ばれるのか
なぜcybozu.comは選ばれるのか
Cybozucommunity
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
de:code 2017
【AWS×Deployment】TechTalk #5
【AWS×Deployment】TechTalk #5
幸夫 茅根
20111129 熊本情産協(無料クラウドをビジネスに活かせ)
20111129 熊本情産協(無料クラウドをビジネスに活かせ)
dekakin
Fluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in Tokyo
Kyosuke Inoue
AWS SUMMIT TOKYO 2012 - BASCULE SESSION
AWS SUMMIT TOKYO 2012 - BASCULE SESSION
Mariko Nishimura
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
Amazon Web Services Japan
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
Tomotsune Murata
ネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConView
Rakuten Group, Inc.
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
SEGADevTech
SORACOM Conference "Discovery" 2018 | B3. IoT活用のはじめ方 〜IoTシステムを迅速に構築する手法
SORACOM Conference "Discovery" 2018 | B3. IoT活用のはじめ方 〜IoTシステムを迅速に構築する手法
SORACOM,INC
de:code 2019 Cloud トラック 総まとめ! 完全版
de:code 2019 Cloud トラック 総まとめ! 完全版
Minoru Naito
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Takashi Someda
Google App Engine Java 入門
Google App Engine Java 入門
tantack
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
拓将 平林
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
GoAzure
Micronaut on Azure 試してみた
Micronaut on Azure 試してみた
拓将 平林
「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜
「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜
Teruo Adachi
Mobigi ALM HandsOn - 初級編
Mobigi ALM HandsOn - 初級編
Mobingi
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
史識 川原
Similar to MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
(20)
なぜcybozu.comは選ばれるのか
なぜcybozu.comは選ばれるのか
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
[DO13] 楽天のクラウドストレージ使いこなし術 Azure と OSS で少しずつ進めるレガシー脱却
【AWS×Deployment】TechTalk #5
【AWS×Deployment】TechTalk #5
20111129 熊本情産協(無料クラウドをビジネスに活かせ)
20111129 熊本情産協(無料クラウドをビジネスに活かせ)
Fluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in Tokyo
AWS SUMMIT TOKYO 2012 - BASCULE SESSION
AWS SUMMIT TOKYO 2012 - BASCULE SESSION
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
[AWS Summit 2012] 事例セッション #2 Bascule Meets AWS! クラウドが加速させる デジタルクリエイションの世界
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
ネットワーク分散型フレームワークConView
ネットワーク分散型フレームワークConView
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
SORACOM Conference "Discovery" 2018 | B3. IoT活用のはじめ方 〜IoTシステムを迅速に構築する手法
SORACOM Conference "Discovery" 2018 | B3. IoT活用のはじめ方 〜IoTシステムを迅速に構築する手法
de:code 2019 Cloud トラック 総まとめ! 完全版
de:code 2019 Cloud トラック 総まとめ! 完全版
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Google App Engine Java 入門
Google App Engine Java 入門
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
Azureのサーバーレスで限界を超えよう~スマートスピーカースキル開発を題材に~
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
Micronaut on Azure 試してみた
Micronaut on Azure 試してみた
「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜
「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜
Mobigi ALM HandsOn - 初級編
Mobigi ALM HandsOn - 初級編
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
Unityゲームにオンラインランキングとゴースト機能を追加しよう!
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
1.
MobingiALM で スポットインスタンスを いい感じに手なづけている裏側の話 Masafumi Noguchi 2017.8.10
MasterCloud #4
2.
自己紹介 ・野口雅史(Masafumi Noguchi) ・Mobingi, Inc. ・github.com/ngratin ・Mobingi
blog - https://labs.mobingi.com ・Slack group - https://slack.mobingi.com
3.
Mobingi ALM (Saasサービス) ・アプリケーションをクラウドで動かすことを簡単に。 ・インフラ/アプリケーション実行環境の構築、継続的 なデプロイの自動化。 ・アプリケーション実行環境はDocker
を利用。 ・お客様はアプリケーションの開発に集中出来る。
4.
5.
6.
についてのお話 (スポットブロック、スポットフリートではなく通常の スポットインスタンスのお話です)
7.
とは?
8.
Amazon EC2 の購入オプション オンデマンド
通常の従量課金(長期契約、前払いなし) リザーブド 1~3年間の利用予約 オンデマンドの最大75%割引 スポット 未使用のインスタンスに入札し利用 オンデマンドの最大90%割引 Dedicated Host 専用物理サーバ
9.
Amazon EC2 の購入オプション オンデマンド
通常の従量課金(長期契約、前払いなし) リザーブド 1~3年間の利用予約 オンデマンドの最大75%割引 スポット 未使用のインスタンスに入札し利用 オンデマンドの最大90%割引 Dedicated Host 専用物理サーバ
10.
料金例 (2017.8.9 10:30時点,
東京リージョン, Linux, 1時間当たりの単価) オンデマンド スポット 割引率 m4.large $0.129 $0.0286 78% m3.medium $0.096 $0.0124 87% r4.large $0.16 $0.0253 84% c4.large $0.126 $0.029 77%
11.
料金例 (2017.8.9 10:30時点,
東京リージョン, Linux, 1時間当たりの単価) オンデマンド スポット 割引率 m4.large $0.129 $0.0286 78% m3.medium $0.096 $0.0124 87% r4.large $0.16 $0.0253 84% c4.large $0.126 $0.029 77%
12.
なぜ安いのか ・未使用のインスタンスを安くてもいいから使っても らいたい。(AWS) ・入札形式。入札価格がスポット価格を上回り、空き があれば利用可能。(需要と共有) ・スポット価格が変動し、入札価格を上回ると強制 ターミネートされる。
13.
スポットインスタンスの仕組み スポット価格 オンデマンド価格
14.
スポットインスタンスの仕組み スポット価格 入札価格 オンデマンド価格
15.
スポットインスタンスの仕組み スポット価格 入札価格 オンデマンド価格 起動可能 起動可能削除 削除
16.
スポットインスタンス価格履歴
17.
スポットインスタンス価格履歴
18.
スポットインスタンスの仕組み スポット価格 入札価格 オンデマンド価格 課金されるのはスポット価格 (入札価格ではない)
19.
スポットインスタンス活用のポイント ・コストを下げつつ継続的にサービスを提供したい - オンデマンドとの併用 - 入札価格 ・強制ターミネート前の処理 -
新規のリクエストは停止しておきたい
20.
スポットインスタンス活用のポイント ・コストを下げつつ継続的にサービスを提供したい - オンデマンドとの併用 - 入札価格 ・強制ターミネート前の処理 -
新規のリクエストは停止しておきたい
21.
22.
スポットインスタンス活用 スタックの重要度や目的に合わせて、お客様自身で スポットインスタンスの割合を設定可能 たとえば、 ・テスト環境であればサービス停止を許容しスポット100% ・QA 環境であればスポット50% (オンデマンドの数を担保しておく)
23.
構成 On-Demand Spot
24.
構成 ・Auto Scaling Group,
Launch Configuration の組を オンデマンドインスタンス用、スポットインスタ ンス用とで分ける。 ・同じロードバランサの配下に設定する。 ・一般的な組み合わせですが、 AWSでこの構成は自動で設定してくれない。
25.
スポットインスタンス活用のポイント ・コストを下げつつ継続的にサービスを提供したい - オンデマンドとの併用 - 入札価格 ・強制ターミネート前の処理 -
新規のリクエストは停止しておきたい
26.
Cost vs. Availability スポット価格 オンデマンド価格
27.
Cost vs. Availability スポット価格 入札価格 オンデマンド価格
28.
Cost vs. Availability スポット価格 入札価格 オンデマンド価格
29.
Cost vs. Availability スポット価格 入札価格 オンデマンド価格 削除削除
起動可能
30.
Cost vs. Availability スポット価格 入札価格 オンデマンド価格
31.
Cost vs. Availability スポット価格 入札価格 オンデマンド価格 起動可能
32.
スポットインスタンス活用のポイント ・コストを下げつつ継続的にサービスを提供したい - オンデマンドとの併用 - 入札価格 ・強制ターミネート前の処理 -
新規のリクエストは停止しておきたい
33.
構成 On-Demand Spot
34.
構成 On-Demand Spot
35.
構成 On-Demand Spot リクエストは受け付けない ようにしたい
36.
強制ターミネートの通知を受取る方法 ・インスタンスメタデータで取得 ・強制ターミネートの 2 分前から警告が提供される -
通常は 404 - 強制ターミネート対象の場合、ターミネート時刻が返る http://169.254.169.254/latest/meta-data/spot/termination-time
37.
強制ターミネートの通知を受取る方法
38.
強制ターミネートの通知を受取る方法
39.
強制ターミネートの通知を受取る方法 ・インスタンスメタデータで取得 ・強制ターミネートの 2 分前から警告が提供される -
通常は 404 - 強制ターミネート対象の場合、ターミネート時刻が返る http://169.254.169.254/latest/meta-data/spot/termination-time
40.
modaemon (MobingiALM) ・コンテナ管理デーモン ・docker run/stop,
git clone ・NAT (Host - Container) Container Ubuntu Apache PHP modaemon Host OS Docker
41.
・コンテナ管理デーモン ・docker run/stop, git
clone ・NAT (Host - Container) ・メタデータチェック(ELB からデタッチ) Container Ubuntu Apache PHP modaemon Host OS Docker Check metadata modaemon (MobingiALM)
42.
まとめ ・スポットインスタンスを活用してコスト削減 ・オートスケーリンググループを分けることで、 オンデマンドインスタンスの数を担保。 ・MobingiALM では modaemon
でインスタンス側で 必要な対応をしている。
43.
さいごに Alibaba Cloud にもスポットインスタンス欲しいですね♥
Download now