12.2. Knative making metering 的数据源
以下 ReportDataSources 是 OpenShift Container Platform metering 如何使用 Knative instructioning 的示例。
12.2.1. Knativelatesting 中 CPU 用量的数据源 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
这个数据源提供在报告的时间段内每个 Knative 服务使用的总 CPU 秒数。
YAML 文件示例
apiVersion: metering.openshift.io/v1
kind: ReportDataSource
metadata:
name: knative-service-cpu-usage
spec:
prometheusMetricsImporter:
query: >
sum
by(namespace,
label_serving_knative_dev_service,
label_serving_knative_dev_revision)
(
label_replace(rate(container_cpu_usage_seconds_total{container!="POD",container!="",pod!=""}[1m]), "pod", "$1", "pod", "(.*)")
*
on(pod, namespace)
group_left(label_serving_knative_dev_service, label_serving_knative_dev_revision)
kube_pod_labels{label_serving_knative_dev_service!=""}
)
12.2.2. 用于 Knative making 中的内存使用的数据源 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
这个数据源为每个 Knative 服务在报告期间提供平均内存消耗。
YAML 文件示例
apiVersion: metering.openshift.io/v1
kind: ReportDataSource
metadata:
name: knative-service-memory-usage
spec:
prometheusMetricsImporter:
query: >
sum
by(namespace,
label_serving_knative_dev_service,
label_serving_knative_dev_revision)
(
label_replace(container_memory_usage_bytes{container!="POD", container!="",pod!=""}, "pod", "$1", "pod", "(.*)")
*
on(pod, namespace)
group_left(label_serving_knative_dev_service, label_serving_knative_dev_revision)
kube_pod_labels{label_serving_knative_dev_service!=""}
)
12.2.3. 为 KnativeUping metering 应用数据源 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
-
应用
ReportDataSources:
$ oc apply -f <datasource_name>