我正在尝试实现python脚本,该脚本收集并解析kubernetes pod清单的映像版本和2个不同kubernetes集群中每个pod的secretName,然后如果2个集群之间存在任何差异,则应发送警报。然后,应通过维多利亚Metrics示例解析2个集群的这些指标。如果我选中kubectl describe pod_name
,则会在中观察到问题-在其输出中存在字段secretName:
Volumes:
cacert:
Type: Glusterfs (a Glusterfs mount on the host that shares a pod's lifetime)
EndpointsName: glusterfs-cluster
Path: test/jvm/cert
ReadOnly: false
service-conf-secrets:
Type: Projected (a volume that contains injected data from multiple sources)
SecretName: example-app-1.25.01-57409t3
SecretOptionalName: <nil>
但是如果我使用kubernetes.client.CoreV1Api
和它的函数list_pod_for_all_namespaces
-在它的输出中根本找不到secretName。
我在哪里可以找到和解析这个字段,并从这些字段中生成prometheus格式度量?
1条答案
按热度按时间afdcj2ne1#
这里有一个例子。
我包含了对Python SDK实现Kubernetes类型的注解引用以及这些类型的类型提示,以帮助解释属性的使用。
为了完整起见,我包含了
V1VolumeProjection
名称的完整枚举,包括secret
(V1SecretProjection
)。