Kubernetes のCPUスロットリング
Kubernetes
ではPodに割り当てるresourceを指定する
code:yml
resources:
requests:
cpu: 500m // 500millicore
limits:
cpu: 1000m // 1000millicore
podがCPU Limitを超えた値を使用しようとすると CPU Throttling が発生する
エラーレート、レイテンシの悪化が起こり得る
仮にNodeのリソースが余っていてもスロットリングされてしまう
limit を記述しない方法がある
https://speakerdeck.com/daikurosawa/understanding-cpu-throttling-in-kubernetes-to-improve-application-performance-number-k8sjp?slide=60
ref
https://kubernetes.io/ja/docs/concepts/configuration/manage-resources-containers/
https://speakerdeck.com/daikurosawa/understanding-cpu-throttling-in-kubernetes-to-improve-application-performance-number-k8sjp?slide=18