kubernetes metrics-server 给出的上下文截止时间已超出

kubernetes metrics-server 给出的上下文截止时间已超出

我在共享 VPC 设置中使用多个 GKE 管理集群1.14.8-gke.12。突然,我的一个集群停止为 HPA 提供正确的指标。指标服务器已启动并正在运行,但这是 HPA 上的输出:

NAME                                    REFERENCE                                          TARGETS                        MINPODS   MAXPODS   REPLICAS   AGE
nginx-public-nginx-ingress-controller   Deployment/nginx-public-nginx-ingress-controller   <unknown>/50%, <unknown>/50%   2         11        2          93m

检查 gke 上的默认 metrics-server 安装,我在日志中看到以下内容:

E1221 18:53:13.491188       1 manager.go:111] unable to fully collect metrics: unable to fully scrape metrics from source kubelet_summary:NODE_NAME: unable to fetch metrics from Kubelet NODE_NAME (NODE_IP): Get http://NODE_IP:10255/stats/summary/: context deadline exceeded
E1221 18:53:43.421617       1 manager.go:111] unable to fully collect metrics: unable to fully scrape metrics from source kubelet_summary:NODE_NAME: unable to fetch metrics from Kubelet NODE_NAME (NODE_IP): Get http://NODE_IP:10255/stats/summary/: dial tcp NODE_IP:10255: i/o timeout

手动在上述地址上运行 curl 可在 10 毫秒内提供所有数据。我已检查网络配置,pod 网络范围和节点网络范围均可访问此端口。

问题:

  1. 指标服务器上的默认超时是多少?我们可以在 Google 托管集群上更改它吗?

  2. 这是一个生产集群,我无法在任何其他集群上复制此问题,但禁用 Google 的 Horizo​​ntal Pod Autoscaling 支持并手动安装 metrics-server 是否有帮助?

此外,按照预期,更新到 1.15 并没有帮助。

答案1

首先,我建议您检查是否仍有默认防火墙规则VPC network->Firewall rules以确保所有指标请求都能够通过防火墙。

然后尝试使用curl并获取集群的每个节点。

Stackdriver之后,在->Logging使用如下过滤器查找一些日志:

resource.type="k8s_container"
resource.labels.project_id="YOUR_PROJECT_ID"
resource.labels.cluster_name="YOUR_CLUSTER_NAME"
resource.labels.namespace_name="kube-system"
labels.k8s-pod/k8s-app="metrics-server"
labels.k8s-pod/version="YOUR_VERSION_OF_METRICS_SERVER"
severity>=WARNING

并附加一行:

resource.type="k8s_container"
resource.labels.project_id="YOUR_PROJECT_ID"
resource.labels.cluster_name="YOUR_CLUSTER_NAME"
resource.labels.namespace_name="kube-system"
labels.k8s-pod/k8s-app="metrics-server"
labels.k8s-pod/version="YOUR_VERSION_OF_METRICS_SERVER"
severity>=WARNING
"503"

并在此分享。

相关内容