如何为 microk8s grafana 设置 SMTP(prometheus 插件)

Posted

技术标签:

【中文标题】如何为 microk8s grafana 设置 SMTP(prometheus 插件)【英文标题】:How to set SMTP for microk8s grafana (prometheus addon) 【发布时间】:2022-01-02 05:04:26 【问题描述】:

要在 Grafana 中通过电子邮件发送警报,我们必须在 grafana.ini 中设置 SMTP 设置。

在 Ubuntu 上,我们可以通过命令轻松运行 grafana-prometheus-k8s 堆栈 microk8s enable prometheus 但是,我们如何将 grafana.ini 提供给在 k8s pod 中运行的 grafana?

【问题讨论】:

【参考方案1】:

我们可以通过 volumeMounts 修改 grafana k8s 部署清单,以将我们主机上的 grafana.ini 提供给在 pod 中运行的 grafana。

首先,使用 SMTP 设置准备您的 grafana.ini。例如

[smtp]
enabled = true
host = smtp.gmail.com:465
# Please change user and password to your ones.
user = foo@bar.com
password = your-password

然后,您可以将此文件放在您的主机上。例如。 /home/mydir/grafana.ini

修改加载的grafana k8s部署清单:

kubectl edit deployments.apps -n monitoring grafana

volumeMounts添加一个新的挂载(不是kubectl.kubernetes.io/last-applied-configuration中的那个):

        volumeMounts:
        - mountPath: /etc/grafana/grafana.ini
          name: mydir
          subPath: grafana.ini

将新的 hostPath 添加到 volumes

      volumes:
      - hostPath:
          path: /home/mydir
          type: ""
        name: mydir

最后,重启部​​署:

kubectl rollout restart -n monitoring deployment grafana

运行此命令并使用主机上的网络浏览器导航到 http://localhost:8080 到 grafana 网络应用程序:

kubectl port-forward -n monitoring svc/grafana 8080:3000

然后,您可以导航到 Alerting / Notification channels / Add channel 以添加电子邮件通知通道并进行测试!

【讨论】:

以上是关于如何为 microk8s grafana 设置 SMTP(prometheus 插件)的主要内容,如果未能解决你的问题,请参考以下文章

如何为多个 Prometheus 数据源配置 Grafana 仪表板?

如何为 Google 课堂课程设置正确的时区

是否可以将 microk8s 设置为使用 docker 引擎而不是 containerd?

如何使用默认 Ingress 使用 Kubernetes microk8s 设置 Letsencrypt?

如何为高质量的 Opus 音频设置 SDP

如何为儿童设置剪辑路径?