我是第一次尝试 prometheus-operator,并且仍然在努力解决管理 Prometheus 的差异。
部署非常简单,编辑规则也是如此,但是当我尝试使用 Prometheus-operator 重新标记导出器时,我找不到方法static_configs。
我过去所做的就是自定义prometheus.yml和添加static_configs以包含每个导出器作业名称的标签。
我知道在 Prometheus-operator 的引擎盖下,我们具有与通常相同的设置,但我不确定如何使用该static_config运算符从配置中获得相同的结果。
据我所知,我现在必须在与我的出口商相关的服务监视器上设置重新标签,但是我尝试过的所有配置都没有结果:
尝试按照问题1166metricRelabelings中的描述以及问题 1086中的描述进行尝试,但没有任何运气。StaticConfigs
例如,这是我过去为kubernetes-cadvisor导出器设置标签时所做的事情static_config,以便我的自定义标签显示在导出器在摄取时间收集的所有指标上:
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['localhost:9090']
labels:
kubernetes_namespace: kube-system
cluster_name: mycluster01
Run Code Online (Sandbox Code Playgroud)
并relabel_configs在我的每个出口商工作中添加:
- job_name: 'kubernetes-cadvisor'
scheme: https
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
kubernetes_sd_configs:
- role: node
relabel_configs:
- target_label: cluster_name
replacement: mycluster01
- target_label: kubernetes_namespace
replacement: kube-system
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- …Run Code Online (Sandbox Code Playgroud) 我有 2 个不同的命名空间:prod-01和prod-02 ,我想要做的是将prod-01的副本构建到prod-02命名空间中,并为其 PVC 保留相同的名称,这样我就不必维护每个不同的命名空间有 2 组图表。
它看起来是这样的:
$ kubectl get ns | grep prod
prod-01 Active 178d
prod-02 Active 8d
$
Run Code Online (Sandbox Code Playgroud)
如下所示,每个命名空间有 2 对 pv:
$ kubectl get pv -o wide | grep prod
prod-01-db-pv 50Gi RWX Retain Bound prod-01/app-db 164d
prod-01-nosql-db-pv 5Gi RWX Retain Bound prod-01/app-nosql-db 149d
prod-02-db-pv 50Gi RWX Retain Available prod-02/app-db 41m
prod-02-nosql-db-pv 5Gi RWX Retain Available prod-02/app-nosql-db 19m
$
Run Code Online (Sandbox Code Playgroud)
以下是prod-01的 PVC 的显示方式:
$ kubectl get pvc …Run Code Online (Sandbox Code Playgroud) storage namespaces kubernetes persistent-volumes persistent-volume-claims