在 helm 模板中,如果条件不匹配,我想引发错误。
代码:
{{- if eq .Values.key "desiredValue" }}
{{- .Value.key }}
{{- else }}
{{- raise "value for .Values.key is not as expected" }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
在哪里 :
raise:这个函数会使 helm 拥有失败并显示错误值。Values.key 不符合预期。
如何raise在 helm 模板中实现上面代码所示的功能?
实现这一目标的一种方法是:
{{- if eq .Values.key "desiredValue" }}
{{- .Value.key }}
{{- else }}
{{- required "value for .Values.key is not as expected" "" }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
但我想知道是否还有其他优雅的方法可以做到这一点。
我正在尝试估计资源 (cpu) 请求和限制值,为此我想使用 prometheus 了解过去一个月 pod 的最大 cpu 使用率。
我检查了这个问题,但无法得到我想要的从 Prometheus 查询中的返回值生成范围向量
我试过了,但似乎 max_over_time 并没有超速工作
max (
max_over_time(
rate(
container_cpu_usage_seconds_total[5m]
)[30d]
)
) by (pod_name)
Run Code Online (Sandbox Code Playgroud)
无效参数“查询”:字符 64 处的解析错误:范围规范必须以度量选择器开头,但要跟在 *promql.Call 之后
我正在部署需要持久卷的普罗米修斯(我也尝试过其他有状态集),但未创建持久卷,并且持久卷蛤在 kubectl 描述 -n {namespace} {pvc-name} 之后显示流动错误。
Type: Warning
Reason: ProvisioningFailed
From: persistentvolume-controller
Message: (combined from similar events): Failed to provision volume with StorageClass "gp2": error querying for all zones: error listing AWS instances: "UnauthorizedOperation: You are not authorized to perform this operation.\n\tstatus code: 403, request id: d502ce90-8af0-4292-b872-ca04900d41dc"
Run Code Online (Sandbox Code Playgroud)
kubectl get sc
NAME PROVISIONER AGE
gp2 (default) kubernetes.io/aws-ebs 7d17h
Run Code Online (Sandbox Code Playgroud)
kubectl describe sc gp2
Name: gp2
IsDefaultClass: Yes
Annotations: kubectl.kubernetes.io/last-applied-configuration={"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{"storageclass.kubernetes.io/is-default-class":"true"},"name":"gp2"},"parameters":{"fsType":"ext4","type":"gp2"},"provisioner":"kubernetes.io/aws-ebs","volumeBindingMode":"WaitForFirstConsumer"}
,storageclass.kubernetes.io/is-default-class=true
Provisioner: kubernetes.io/aws-ebs
Parameters: fsType=ext4,type=gp2
AllowVolumeExpansion: <unset>
MountOptions: <none>
ReclaimPolicy: Delete
VolumeBindingMode: …Run Code Online (Sandbox Code Playgroud)