diff --git a/content/zh-cn/docs/tasks/debug/debug-cluster/resource-usage-monitoring.md b/content/zh-cn/docs/tasks/debug/debug-cluster/resource-usage-monitoring.md index b8ef029b0d..c27f133955 100644 --- a/content/zh-cn/docs/tasks/debug/debug-cluster/resource-usage-monitoring.md +++ b/content/zh-cn/docs/tasks/debug/debug-cluster/resource-usage-monitoring.md @@ -24,7 +24,7 @@ where bottlenecks can be removed to improve overall performance. --> 要扩展应用程序并提供可靠的服务,你需要了解应用程序在部署时的行为。 你可以通过检测容器检查 Kubernetes 集群中的应用程序性能, -[Pods](/zh-cn/docs/concepts/workloads/pods), +[Pod](/zh-cn/docs/concepts/workloads/pods), [服务](/zh-cn/docs/concepts/services-networking/service/) 和整个集群的特征。 Kubernetes 在每个级别上提供有关应用程序资源使用情况的详细信息。 @@ -46,7 +46,7 @@ On new clusters, you can use [resource metrics](#resource-metrics-pipeline) or The resource metrics pipeline provides a limited set of metrics related to cluster components such as the -[Horizontal Pod Autoscaler](/docs/tasks/run-application/horizontal-pod-autoscale) +[Horizontal Pod Autoscaler](/docs/tasks/run-application/horizontal-pod-autoscale/) controller, as well as the `kubectl top` utility. These metrics are collected by the lightweight, short-term, in-memory [metrics-server](https://github.com/kubernetes-sigs/metrics-server) and @@ -69,8 +69,11 @@ memory usage. The kubelet acts as a bridge between the Kubernetes master and the nodes, managing the pods and containers running on a machine. The kubelet translates each pod into its constituent containers and fetches individual container usage statistics from the container runtime through the container -runtime interface. The kubelet fetches this information from the integrated -cAdvisor for the legacy Docker integration. It then exposes the aggregated pod +runtime interface. If you use a container runtime that uses Linux cgroups and +namespaces to implement containers, and the container runtime does not publish +usage statistics, then the kubelet can look up those statistics directly +(using code from [cAdvisor](https://github.com/google/cadvisor)). +No matter how those statistics arrive, the kubelet then exposes the aggregated pod resource usage statistics through the metrics-server Resource Metrics API. This API is served at `/metrics/resource/v1beta1` on the kubelet's authenticated and read-only ports. @@ -79,10 +82,12 @@ read-only ports. [kubelet](/zh-cn/docs/reference/command-line-tools-reference/kubelet/) 以获取 CPU 和内存使用情况。 Kubelet 充当 Kubernetes 主节点与节点之间的桥梁,管理机器上运行的 Pod 和容器。 -kubelet 将每个 Pod 转换为其组成的容器,并在容器运行时通过容器运行时接口 -获取各个容器使用情况统计信息。 -kubelet 从集成的 cAdvisor 获取此信息,以进行旧式 Docker 集成。 -然后,它通过 metrics-server Resource Metrics API 公开聚合的 pod 资源使用情况统计信息。 +kubelet 将每个 Pod 转换为其组成的容器,并通过容器运行时接口从容器运行时获取各个容器使用情况统计信息。 +如果某个容器运行时使用 Linux cgroups 和名字空间来实现容器。 +并且这一容器运行时不发布资源用量统计信息, +那么 kubelet 可以直接查找这些统计信息(使用来自 [cAdvisor](https://github.com/google/cadvisor) 的代码)。 +无论这些统计信息如何到达,kubelet 都会通过 metrics-server Resource Metrics API 公开聚合的 +Pod 资源用量统计信息。 该 API 在 kubelet 的经过身份验证和只读的端口上的 `/metrics/resource/v1beta1` 中提供。 +## {{% heading "接下来" %}} + +了解其他调试工具,包括: + +* [日志记录](/zh-cn/docs/concepts/cluster-administration/logging/) +* [监控](/zh-cn/docs/tasks/debug/debug-cluster/resource-usage-monitoring/) +* [通过 `exec` 进入容器](/zh-cn/docs/tasks/debug/debug-application/get-shell-running-container/) +* [通过代理连接到容器](/zh-cn/docs/tasks/extend-kubernetes/http-proxy-access-api/) +* [通过端口转发连接到容器](/zh-cn/docs/tasks/access-application-cluster/port-forward-access-application-cluster/) +* [使用 crictl 检查 Kubernetes 节点](/zh-cn/docs/tasks/debug/debug-cluster/crictl/)