使用コア数を CPU リミット (割り当て可能なコア数) で割って、実際のコンテナの CPU 使用率を計算したいと考えています。したがって、4 つのポッドに対して 2 つの異なるメトリックを取得します。
- 各ポッドの使用コア数
- 各ポッドで使用可能なコアの数
私の問題:
各コンテナーの CPU 使用率 (使用コア数 / 使用可能なコア数) を取得したいと考えています。
私が試したこと:
これら 2 つのクエリはそれぞれ、私が望むものを正確に返します。
- 各ポッドで現在使用されているコアの数:
pod_name
(1 つのメトリックがメトリック名として使用し、他のメトリックが を使用するため、label_replace を使用していますpod
)
label_replace(sum(rate(container_cpu_usage_seconds_total{pod_name=~"rewe-bd-palantir-vernemq.*", container_name="vernemq"}[1m])) by (pod_name), "pod", "$1", "pod_name", "(.*)")
応答: https://monosnap.com/direct/6EPuLF59HBJaYsAmKG6CM0fRPyUXDk
- 各ポッドで使用可能なコアの数:
sum(kube_pod_container_resource_limits_cpu_cores{pod=~"rewe-bd-palantir-vernemq.*", container="vernemq", job="kubernetes-pods"}) by (pod)
応答: https://monosnap.com/direct/dRBfitwcxHIrTRYDmYHwV5YkomYJjH
このクエリは機能しませんでした (データ ポイントが返されませんでした):
label_replace(sum(rate(container_cpu_usage_seconds_total{pod_name=~"rewe-bd-palantir-vernemq.*", container_name="vernemq"}[1m])) by (pod_name), "pod", "$1", "pod_name", "(.*)") / sum(kube_pod_container_resource_limits_cpu_cores{pod=~"rewe-bd-palantir-vernemq.*", container="vernemq", job="kubernetes-pods"}) by (pod)
私の質問:
各ポッドの CPU 使用率 (使用済みコア数 / 使用可能なコア数) を返すクエリを実行するにはどうすればよいですか?