Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS CPU Credit を完全に理解する
Search
Yamaguchi Takahiro
June 02, 2021
0
420
AWS CPU Credit を完全に理解する
Yamaguchi Takahiro
June 02, 2021
Tweet
Share
More Decks by Yamaguchi Takahiro
See All by Yamaguchi Takahiro
コンペを気楽に開催しよーぜ!@関西Kaggler会
nyk510
0
1.1k
Django のセキュリティリリースを見る
nyk510
0
50
3分でMLアプリを作る 〜推論コードにちょっとのStreamlitを添えて〜
nyk510
1
1k
硬派で真面目なグラフを描く
nyk510
0
460
CORSをちゃんと理解する atmaバックエンド勉強会#4
nyk510
0
360
pythonで気軽にパッケージを作るのは良いという話。
nyk510
14
9.5k
RestAPIのページネーション atma バックエンド勉強会 #3
nyk510
1
840
atmaCup#8 Opening
nyk510
0
220
オンサイトデータコンペの魅力: 関わる全員が楽しいコンペ設計のための取り組み
nyk510
3
5.3k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
Building an army of robots
kneath
302
45k
The Cult of Friendly URLs
andyhume
78
6.1k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Mobile First: as difficult as doing things right
swwweet
222
9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
860
Writing Fast Ruby
sferik
628
61k
Faster Mobile Websites
deanohume
305
30k
KATA
mclloyd
29
14k
Transcript
バックエンド勉強会#1 AWS CPU Credit を完全に理解 する 2021/06/02 atma株式会社 nyk510 1
インスタンスごとの vCPU に対する制限 普通の EC2 インスタンス • vCPUは好きに使っていい (制限なし) •
要するに特定のマシンを買っているのと同じ状況 バースト可能インスタンス (t系) • vCPU量が同じ通常インスタンスよりは安い • しかしCPU利用率を CPU Credit によって制限・管理される (全部使えないときがある) • 基本 (ベースライン) と超過分 (バースト) という概念がある 借りてるマシンに割り当てられている 仮想のCPU数 vCPUとは… 2
CPUクレジットとは • のべで使ったCPU利用量を表す単位 • 次元: vCPUの稼働率 x 時間(分) で表される ex).
• 1vCPU で 100% 稼働を 10分 = 10 credit • 2vCPU で 100% 稼働を 5分 = 10 credit • 3vCPU で 10% 稼働を 2分 = 0.6 credit 3
CPUクレジットの管理方法 バースト可能インスタンスでのクレジット管理方法は下記の通り 1. 1時間あたりに固定のクレジット (ベースライン) を取得 2. 使った分だけクレジットを消費 / 使わなかった分は貯蓄
3. 貯蓄できる最大のクレジット量はインスタンスごとに固定 4. 固定料を超えると貯蓄から切り崩して稼働 (バースト) 4
CPUクレジットの管理方法 / 具体例 具体例: t3.large • vCPU=2 • 1時間あたり36クレジットを取得 /
最大クレジット料は864 2vCPUで1時間36(vCPU*min)なのでもらった分を完全に消費すると36/2=18minは利用 率100%で稼働できる。実際にはクレジットはじわじわもらうので 18/60=0.3 (30%) で 稼働するとプラマイゼロ。 この「もらった分を完全に消費したときの稼働率」をベースライン利用率と呼ぶ 5
クレジットが余ったら? • 時間ごとに一定量をもらうので、場合によってはあまるときがある。 ◦ ex: t3.largeで10分だけフル稼働したとすると20creditを使う → 16credit余 る。 •
余った分は貯金に回る。 ◦ t3.largeだと864だけ貯められる。(ためたcreditには有効期限がない) 6
ベースラインを超えて使ったら? • あまることがあるのと同様、使いすぎることもある。 • この場合使った分だけ貯金から引き落としされる • 具体例 ◦ t3.largeで1時間100%稼働すると ◦
2*60=120(credit)を使うことになるので ◦ 36-120=-84だけ貯金が減る。 7
貯金がないときは? 借りているインスタンスのモードによって扱いが変わる • standard mode | それ以上稼働できなくなる • unlimited mode
| 制限なく稼働できる t2系: デフォルト standard mode t3/4: デフォルト unlimited mode 8
unlimited mode • 簡単に言うと貯金がゼロでも借金して稼働できるモード • 借金は返済できる(消費 < 獲得量の差分が返済に当てられる) • 24時間で返済できないときは追加料金が発生する
見方を変えると… CPU利用量の面積をならしたものがベースラインを超えたとき課金される 9
unlimited 万能説 賢明な読者諸君の中には 「可変に稼働を調整できて借金もできるなら全部これでよくない?」 と思われた方もいらっしゃるのではないか。 10
unlimited は万能でもない 賢明な読者諸君の中には 「可変に稼働を調整できて借金もできるなら全部これでよくない?」 と思われた方もいらっしゃるのではないか。 残念ながら商売なのでそうはいかない / 固定のCPUに比べて割高 例えばt3系で常時100%でバーストし続けるとvCPU固定のインスタンスの1.5倍の料金が かかる
If a T3 instance continuously bursts at 100% CPU, you end up paying approximately 1.5 times the price of an equivalently-sized M5 instance. あるタイミングだけバースト/それ以外はあまり稼働しないというような場合に使う 11
どういうときにバースト系(t系)を使えばいい? 固定CPUタイプとの損益分岐点 AWSが計算してくれているので参考にして設定しましょう https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance- instances-unlimited-mode-concepts.html 参考文献 • Burstable performance instances
◦ https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-perf ormance-instances.html 12