monitoring: update node_pod_quota
Signed-off-by: huanggze <loganhuang@yunify.com>
This commit is contained in:
@@ -389,7 +389,7 @@ func AddToContainer(c *restful.Container, k8sClient kubernetes.Interface, monito
|
||||
ws.Route(ws.GET("/components/{component}").
|
||||
To(h.handleComponentMetricsQuery).
|
||||
Doc("Get component-level metric data of the specific system component.").
|
||||
Param(ws.PathParameter("component", "system component to monitor. One of etcd, apiserver, scheduler, controller_manager, coredns, prometheus.").DataType("string").Required(true)).
|
||||
Param(ws.PathParameter("component", "system component to monitor. One of etcd, apiserver, scheduler.").DataType("string").Required(true)).
|
||||
Param(ws.QueryParameter("metrics_filter", "The metric name filter consists of a regexp pattern. It specifies which metric data to return. For example, the following filter matches both etcd server list and total size of the underlying database: `etcd_server_list|etcd_mvcc_db_size`. View available metrics at [kubesphere.io](https://docs.kubesphere.io/advanced-v2.0/zh-CN/api-reference/monitoring-metrics/).").DataType("string").Required(false)).
|
||||
Param(ws.QueryParameter("start", "Start time of query. Use **start** and **end** to retrieve metric data over a time span. It is a string with Unix time format, eg. 1559347200. ").DataType("string").Required(false)).
|
||||
Param(ws.QueryParameter("end", "End time of query. Use **start** and **end** to retrieve metric data over a time span. It is a string with Unix time format, eg. 1561939200. ").DataType("string").Required(false)).
|
||||
|
||||
@@ -50,7 +50,7 @@ var promQLTemplates = map[string]string{
|
||||
"cluster_disk_inode_utilisation": `cluster:disk_inode_utilization:ratio`,
|
||||
"cluster_namespace_count": `count(kube_namespace_labels)`,
|
||||
"cluster_pod_count": `cluster:pod:sum`,
|
||||
"cluster_pod_quota": `sum(max(kube_node_status_capacity_pods) by (node) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0))`,
|
||||
"cluster_pod_quota": `sum(max(kube_node_status_capacity{resource="pods"}) by (node) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0))`,
|
||||
"cluster_pod_utilisation": `cluster:pod_utilization:ratio`,
|
||||
"cluster_pod_running_count": `cluster:pod_running:count`,
|
||||
"cluster_pod_succeeded_count": `count(kube_pod_info unless on (pod) (kube_pod_status_phase{phase=~"Failed|Pending|Unknown|Running"} > 0) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0))`,
|
||||
@@ -99,7 +99,7 @@ var promQLTemplates = map[string]string{
|
||||
"node_disk_inode_usage": `node:node_inodes_total:{$1} - node:node_inodes_free:{$1}`,
|
||||
"node_disk_inode_utilisation": `node:disk_inode_utilization:ratio{$1}`,
|
||||
"node_pod_count": `node:pod_count:sum{$1}`,
|
||||
"node_pod_quota": `max(kube_node_status_capacity_pods{$1}) by (node) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0)`,
|
||||
"node_pod_quota": `max(kube_node_status_capacity{resource="pods",$1}) by (node) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0)`,
|
||||
"node_pod_utilisation": `node:pod_utilization:ratio{$1}`,
|
||||
"node_pod_running_count": `node:pod_running:count{$1}`,
|
||||
"node_pod_succeeded_count": `node:pod_succeeded:count{$1}`,
|
||||
|
||||
@@ -25,6 +25,13 @@ func TestMakeExpr(t *testing.T) {
|
||||
NodeName: "i-2dazc1d6",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "node_pod_quota",
|
||||
opts: monitoring.QueryOptions{
|
||||
Level: monitoring.LevelNode,
|
||||
ResourceFilter: "i-2dazc1d6|i-ezjb7gsk",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "node_cpu_total",
|
||||
opts: monitoring.QueryOptions{
|
||||
|
||||
@@ -4,6 +4,7 @@ var PromQLs = map[string]string{
|
||||
"cluster_cpu_utilisation": `:node_cpu_utilisation:avg1m`,
|
||||
"node_cpu_utilisation": `node:node_cpu_utilisation:avg1m{node="i-2dazc1d6"}`,
|
||||
"node_cpu_total": `node:node_num_cpu:sum{node=~"i-2dazc1d6|i-ezjb7gsk"}`,
|
||||
"node_pod_quota": `max(kube_node_status_capacity{resource="pods",node=~"i-2dazc1d6|i-ezjb7gsk"}) by (node) unless on (node) (kube_node_status_condition{condition="Ready",status=~"unknown|false"} > 0)`,
|
||||
"workspace_cpu_usage": `round(sum by (workspace) (namespace:container_cpu_usage_seconds_total:sum_rate{namespace!="", workspace="system-workspace"}), 0.001)`,
|
||||
"workspace_memory_usage": `sum by (workspace) (namespace:container_memory_usage_bytes:sum{namespace!="", workspace=~"system-workspace|demo", workspace!=""})`,
|
||||
"namespace_cpu_usage": `round(namespace:container_cpu_usage_seconds_total:sum_rate{namespace!="", namespace="kube-system"}, 0.001)`,
|
||||
|
||||
Reference in New Issue
Block a user