Kubernetes etcd HighNumberOfFailedHTTPRequests QGET

Kubernetes etcd HighNumberOfFailedHTTPRequests QGET

我 运行 AWS 中的 kubernetes 集群,CoreOS-stable-1745.6.0-hvm (ami-401f5e38),全部由 kops 1.9.1 / terraform 部署。

etcd_version = "3.2.17"
k8s_version = "1.10.2"

此 Prometheus 警报 method=QGET alertname=HighNumberOfFailedHTTPRequests 来自 coreos kube-prometheus 监控包。警报从集群生命周期的一开始就开始触发,现在存在约 3 周,没有明显的影响。

^ QGET 失败 - 33% 的请求。

注意:我在其他地区有第二个集群,在相同版本上从头开始构建,它具有完全相同的行为。所以它是可复制的。

任何人都知道根本原因是什么,如果进一步忽略会产生什么影响?

编辑: 后来我发现这个 GH issue 准确描述了我的情况:https://github.com/coreos/etcd/issues/9596

来自 CoreOS 文档:

为了不出现在任意事件上的警报,通常最好不要直接在采样的原始值上发出警报,而是通过聚合和定义相对阈值而不是硬编码值来发出警报。例如:如果 1% 的 HTTP 请求失败则发送警告,而不是如果在过去五分钟内有 300 个请求失败则发送警告。每当您的流量发生变化时,静态值也需要更改。

在这里您可以找到有关如何Develop Prometheus alerts for etcd.

的详细信息

我在 GitHub issue 线程中得到了解释。 HTTP metrics/alerts 应替换为 GRPC。