如何检查OpenShift&Kubernetes上的Pod/Container指标

时间:2020-02-23 14:37:49  来源:igfitidea点击:

在POD中监控容器是了解利用的关键和作为自动缩放的量度 - HPA/VPA。
这些指标将在OpenShift/OKD/OpenShift集群中设置资源配额和限制范围。
在本教程中,将介绍如何从CLI检查Pod/Container指标。

OpenShift安装了Metrics Server。
对于Kubernetes,请使用下面的教程。

如何将指标服务器部署到Kubernetes集群

作为群集管理员,我们可以将群集指标配置和调整到所需状态。
如果指标配置正确,则可以使用以下命令显示POD。

$kubectl describe PodMetrics <pod-name>

在我的项目中,我有许多Pods如下所示。

$oc get pods
NAME                                           READY   STATUS    RESTARTS   AGE
harbor-harbor-chartmuseum-5456c9d756-97pdd     1/1     Running   0          38h
harbor-harbor-clair-654dcfd8bf-kgxk4           2/2     Running   0          38h
harbor-harbor-core-76d64c78b6-kv24c            1/1     Running   1          38h
harbor-harbor-database-0                       1/1     Running   0          38h
harbor-harbor-jobservice-849f5cb79-qnw6v       1/1     Running   0          38h
harbor-harbor-notary-server-54cbdcffb7-98qjb   1/1     Running   1          38h
harbor-harbor-notary-signer-5dd4d88c8d-mnq44   1/1     Running   2          38h
harbor-harbor-portal-5cbc6d5897-gnfnz          1/1     Running   0          38h
harbor-harbor-redis-0                          1/1     Running   0          38h
harbor-harbor-registry-5b5767dcb9-btlk7        2/2     Running   0          38h
jaeger-operator-7dbfd8c587-9l9hr               1/1     Running   0          6d15h

然后,我们可以使用命令查看港口港-Matabase-0 Pod的指标:

$oc describe PodMetrics harbor-harbor-database-0

如果配置了指标,则输出类似于以下内容,使用以下内容显示CPU和内存。

Name:         harbor-harbor-database-0
Namespace:    harbor
Labels:       <none>
Annotations:  <none>
API Version:  metrics.k8s.io/v1beta1
Containers:
  Name:  remove-lost-found
  Usage:
    Memory:  0
  Name:      database
  Usage:
    Cpu:     6m
    Memory:  344348Ki
  Name:      change-permission-of-directory
  Usage:
    Memory:  0
Kind:        PodMetrics
Metadata:
  Creation Timestamp:  2017-04-09T10:32:04Z
  Self Link:           /apis/metrics.k8s.io/v1beta1/namespaces/harbor/pods/harbor-harbor-database-0
Timestamp:             2017-04-09T10:32:04Z
Window:                5m0s
Events:                <none>

对于Kubernetes,请使用kubectl命令,并使用-n选项指定末尾的命名空间。

$kubectl describe PodMetrics kuard
Name:         kuard
Namespace:    default
Labels:       <none>
Annotations:  <none>
API Version:  metrics.k8s.io/v1beta1
Containers:
  Name:  kuard
  Usage:
    Cpu:     101379n
    Memory:  8960Ki
Kind:        PodMetrics
Metadata:
  Creation Timestamp:  2017-04-09T10:40:24Z
  Self Link:           /apis/metrics.k8s.io/v1beta1/namespaces/default/pods/kuard
Timestamp:             2017-04-09T10:39:34Z
Window:                30s
Events:                <none>