迁移到 Rancher v2.5 监控

    从 v2.2.0 开始,Rancher 的集群管理器允许用户在一个集群内独立启用监控和告警 V1(两者都由 Prometheus Operator 提供支持)。

    当启用监控时,监控 V1 将 和 Grafana 部署到集群上来监控你的集群节点、Kubernetes 组件和软件部署的进程状态,并创建自定义仪表盘,使收集的指标易于可视化。

    监控 V1 可以在集群级和项目级进行配置,并将自动抓取某些在 Rancher 集群上作为应用程序部署的工作负载。

    当启用告警或通知时,告警 V1 将 和一组 Rancher 控制器部署到集群上,允许用户定义告警并通过 Email、Slack、PagerDuty 等配置基于告警的通知。用户可以根据需要监控的内容选择创建不同类型的告警(例如,系统服务、资源、CIS 扫描等);但是,基于 PromQL 表达式的告警只有在启用监控 V1 时才能创建。

    从 v2.5.0 版开始,Rancher 的集群资源管理器现在允许用户在一个集群内同时启用监控和告警 V2(两者都由 Prometheus Operator 提供支持)。

    与监控和告警 V1 不同的是,这两个功能都被打包在一个 Helm chart 中,可在找到。该 chart 的行为和可配置字段与 prometheus 社区的 Helm chart kube-prometheus-stack 相关,与上游 chart 的任何偏差都可以在与该 chart 一起维护的 中找到。

    监控 V2 只能在集群级别上配置。不再支持项目级监控和告警。

    关于如何配置监控与告警 V2 的更多信息,请参见本页。

    默认情况下,项目所有者和成员不再可以访问 Grafana 或 Prometheus。如果只有 view-only 的用户有权访问 Grafana,他们将能够查看来自任何命名空间的数据。对于 Kiali,任何用户都可以在任何命名空间中编辑他们不拥有的东西。

    虽然没有办法实现自动迁移,但可以手动将 Monitoring V1 中创建的自定义 Grafana 仪表盘和告警迁移到 Monitoring V2。

    在你安装 Monitoring V2 之前,需要完全卸载 Monitoring V1。卸载监控 V1:

    • 移除所有通知。
    • 禁用群集->项目->工具->监控下的所有项目监控安装。
    • 确保所有项目中的所有项目监控应用已经被删除,并且在几分钟后不会重新创建
    • 禁用集群->工具->监控下的集群监控安装。
    • 确保系统项目中的集群监控应用程序和监控操作程序已被删除,并且在几分钟后不会重新创建。

    要防止重新启用 V1 监控,请通过修改 RKE 模板 yaml 禁用监控和将来的 RKE 模板修订:

    Copy

    你可以将 Monitoring V1 中添加到 Grafana 的任何仪表盘迁移到 Monitoring V2。在 Monitoring V1 中,你可以像这样导出一个现有的仪表盘:

    • 登录到 Grafana
    • 导航到您要导出的仪表盘
    • 转到仪表盘设置

    在 JSON 模型中,将所有 datasource 字段从 更改为 Prometheus。您可以通过将所有出现的 替换为 "datasource": "Prometheus" 来轻松完成此操作。

    如果 Grafana 是由持久化卷支持的,你现在可以这个 JSON 模型到 Monitoring V2 Grafana UI。 建议用 命名空间中的 ConfigMap 向 Grafana 提供仪表盘,其标签为 grafana_dashboard: "1":

    Copy

    一旦创建了这个 ConfigMap,仪表盘将自动被添加到 Grafana 中。

    要迁移以下表达式的告警

    {{< img “/img/rancher/monitoring/migration/alert_2.4_to_2.5_source.png” “”>}}

    你必须创建像这样的 PrometheusRule 配置:

    Copy

    或者通过集群资源管理器添加 Prometheus 规则

    {{< img “/img/rancher/monitoring/migration/alert_2.4_to_2.5_target.png “ “>}}

    关于如何在 Monitoring V2 中配置 PrometheusRules 的更多细节,请参阅 Monitoring 配置

    在 Monitoring V1 中,没有直接对应的通知工作方式。相反,你必须在 Monitoring V2 中用 复制所需的设置。

    如果集群使用 RKE 模板进行管理,你需要在未来的 RKE 模板修订中禁用监控,以防止传统的监控被重新启用。