详细参考这篇文章 https://cloud.tencent.com/developer/article/1171434
prometheus 2.0于2017-11-08发布,主要是存储引擎进行了优化。
详细发布日志:https://prometheus.io/blog/2017/11/08/announcing-prometheus-2-0/
prometheus 2.0迁移指南:https://prometheus.io/docs/prometheus/2.0/migration/
prometheus 2.0和1.0版本相比,包含了一系列不兼容的更改,主要是以下方面:
-
Flags :命令行标记由单个破折号改成双破折号,如现在是--config.file
-
Alertmanager service discovery : alertmanager服务发现由命令行标记-alertmanager.url=http://alertmanager:9093/转为prometheus.yml中配置
-
Recording rules and alerts : 规则和告警的格式改为YAML
-
Storage :存储格式和1.8不再兼容,需要1.8不再做抓取,然后用2.0读取1.8的历史数据(1.8版本至少是1.8.1,低于1.8.1需要先升级到1.8.1然后再升级到2.0)
-
PromQL :去掉了一些功能(如:drop_common_labels,keep_common,count_scalar)
-
Miscellaneous
-
Prometheus non-root user
-
Prometheus lifecycle : 默认/-/reload接口被禁用,需要使用--web.enable-lifecycle开启
-
迁移过程:
目前版本是1.7.1,需要先迁移到1.8.1,然后再迁移到2.0
Alertmanager暂未使用,无需考虑Alertmanager服务发现以及规则和告警的迁移
PromQL中使用了count_scalar,换成count
prometheus三个版本并存:
后期计划:
prometheus数据默认保存了半个月,等半个月后,再停掉prometheus1.8.1