tl;博士
将 loki.monitoring.selfMonitoring.grafanaAgent.installOperator 设置为 false
这个问题是由grafana-agent引起的,它默认安装为grafana/loki图表的子图表...
代理创建包含以下配置的秘密“loki-logs-config”(本例中的 loki 是 Helm 版本名称):
agent.yml: |+
logs:
configs:
- clients:
- external_labels:
cluster: loki
url: http://loki.monitoring.svc.cluster.local:3100/loki/api/v1/push
name: monitoring/loki
scrape_configs:
- job_name: podLogs/monitoring/loki
kubernetes_sd_configs:
- namespaces:
names:
- monitoring
role: pod
pipeline_stages:
- cri: {}
relabel_configs:
- source_labels:
- job
target_label: __tmp_prometheus_job_name
- action: keep
regex: loki
source_labels:
- __meta_kubernetes_pod_label_app_kubernetes_io_instance
- action: keep
regex: loki
source_labels:
- __meta_kubernetes_pod_label_app_kubernetes_io_name
- source_labels:
- __meta_kubernetes_namespace
target_label: namespace
- source_labels:
- __meta_kubernetes_service_name
target_label: service
- source_labels:
- __meta_kubernetes_pod_name
target_label: pod
- source_labels:
- __meta_kubernetes_pod_container_name
target_label: container
- replacement: monitoring/loki
target_label: job
- replacement: /var/log/pods/*$1/*.log
separator: /
source_labels:
- __meta_kubernetes_pod_uid
- __meta_kubernetes_pod_container_name
target_label: __path__
- action: replace
source_labels:
- __meta_kubernetes_pod_node_name
target_label: __host__
- action: labelmap
regex: __meta_kubernetes_pod_label_(.+)
- action: replace
replacement: monitoring/$1
source_labels:
- __meta_kubernetes_pod_controller_name
target_label: job
- action: replace
source_labels:
- __meta_kubernetes_pod_container_name
target_label: container
- action: replace
replacement: loki
target_label: cluster
positions_directory: /var/lib/grafana-agent/data
server: {}
正如您在 kubernetes_sd_configs 下看到的那样,存在值为 monitoring 的名称空间列表 - 我不知道为什么它在那里,但这是我将此图表安装到的名称空间。
你惯于在执行 helm template 后看到这个秘密 - 似乎 Grafana Agent 在启动后以某种方式创建了它。
它有标签app.kubernetes.io/managed-by=grafana-agent-operator
如果你问我,那真是太神奇了……
我的解决方案是禁用 Grafana Agent 的禁用安装:
loki:
loki:
commonConfig:
replication_factor: 1
storage:
type: 'filesystem'
auth_enabled: false
monitoring:
dashboards:
enabled: false
selfMonitoring:
enabled: true
grafanaAgent:
installOperator: false
lokiCanary:
enabled: false
注意:需要上面代码块中的toploki元素除非您将 grafana/loki 图表作为子图表添加到图表中
IMO 在用作 Loki 文档参考的图表中启用 beta 功能(Grafana Agent 今天是 v0.30.0)是疯狂的:)