需要添加什么?
我遇到了一个问题,在Kubernetes Deployment YAML的tolerations数组中存在重复的容忍度。尽管是重复项,但这些容忍度并没有像我预期的那样被忽略,这导致了kube-state-metrics产生的重复指标样本。
在Kubernetes API服务器中进行验证检查以拒绝具有重复容忍度的清单,确保遵循Kubernetes最佳实践并避免与重复容忍度定义相关的潜在问题将是非常好的。
整个事情是在更新到prometheus v2.52.0之后注意到的,其中包括在抓取阶段期间的新重复项检查。为此我创建了以下问题 prometheus/prometheus#14089
同时,我还为kube-state-metrics项目创建了一个问题,请求对此类情况进行一些更改,以便将来解决这种情况。 kubernetes/kube-state-metrics#2390
重现步骤:
1.)部署以下部署
apiVersion: apps/v1
kind: Deployment
metadata:
name: test-deployment
labels:
app: something
spec:
replicas: 1
selector:
matchLabels:
app: test
template:
metadata:
labels:
app: test
spec:
containers:
- name: test-container
image: nginx
tolerations:
- key: CriticalAddonsOnly
operator: Exists
- key: CriticalAddonsOnly
operator: Exists
2.)检查计划pod的容忍度,例如:
...
tolerations:
- key: CriticalAddonsOnly
operator: Exists
- key: CriticalAddonsOnly
operator: Exists
...
为什么需要这个?
重复的容忍度没有被忽略,并应用于资源,可能导致意外的行为。
8条答案
按热度按时间5cg8jx4n1#
/sig api-machinery
/sig architecture
yc0p9oo02#
/cc
wdebmtf23#
/assign
wz3gfoph4#
/triage accepted
frebpwbc5#
这是一个功能需求吗?听起来像是一个错误,但我不确定。
km0tfn4u6#
我不知道这是否是一个bug,但它确实令人烦恼...由于这个原因,我每30秒在大约18个k8s集群中记录一次prometheus警告。
kqqjbcuj7#
我不知道这是不是一个bug,但它确实令人烦恼。...由于这个原因,我每30秒在大约18个k8s集群中记录一次prometheus警告。
这就是为什么我降级到v2.51.2的原因。重复警告是在v2.52.0中引入的。
rkttyhzu8#
这是一个功能请求吗?听起来像是一个bug,但我不确定。
在k8s中,有很多地方的设计没有去重数组。