operator部署Prometheus怎么修改配置文件到configmap中

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【概述】:场景 + 问题概述
image
【背景】:做过哪些操作
如图修改tm后,Prometheus起不来
【现象】:业务和数据库现象


【问题】:当前遇到的问题
prometheus 容器无法启动,根本原因是想在Prometheus的启动参数中增加: --storage.tsdb.wal-compression
参数。
【业务影响】:

【TiDB 版本】:
v4.0.8
【TiDB Operator 版本】:
v1.1.6
【K8s 版本】:
v1.16.4
【附件】:


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

1 个赞
kubectl edit tm -n tidb-xxxx 
# 修改spec下的prometheus
例如:
    spec:
	  prometheus:
		config:
	      commandOptions:
      	  - --config.file=/etc/prometheus/prometheus.yml  # 配置文件路径,来自于挂载的cm
          - --web.enable-admin-api                        # 开启web管理,pingcap原来默认开启
          - --web.enable-lifecycle                        # 同上
          - --storage.tsdb.path=/data/prometheus          # 数据存储目录
          - --storage.tsdb.retention.time=15d             # 保留天数
          - --storage.tsdb.retention.size=80GB            # 数据最大保存大小
          - --storage.tsdb.wal-compression                # 开启wal日志压缩
        configMapRef:
          name: tidb-xxxx-monitor                         # 此处为配置文件的cm

如果要修改抓取周期

kubectl edit cm tidb-xxxx-monitor
# 修改完后,删除原来的monitorpod
kubectl delete pod tidb-xxx-monirot-xxx -n tidb-xxxx
# monitor重建后,配置文件生效

其中commandOptions必须得写一个–config.file=/etc/prometheus/prometheus.yml 因为一旦有commandOptions,原来operator默认启动的参数就没了,会导致找不到配置文件。

1 个赞

https://docs.pingcap.com/tidb-in-kubernetes/stable/release-1.1.7 从 v1.1.7 开始就改了,commandOptions 只会 append 并不会覆盖掉默认的启动参数。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。