7 Kong 指标监控与报警

图片不清晰可以去看word文档:word文档地址:https://github.com/IceEmblem/LearningDocuments/tree/master/%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%96%99/%E5%B9%B3%E5%8F%B0%E6%97%A0%E5%85%B3/Kong%20%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0

如下介绍prometheus监控系统

Kong prometheus插件

kong提供了prometheus插件,用于收集kong的指标信息,如下我们通过konga添加插件prometheus插件
7 Kong 指标监控与报警_第1张图片

添加后我们访问http://127.0.0.1:8001/metrics就可以看到prometheus收集的指标

服务器监测

在装有kong的服务器上面安装一个监测程序,用于监测服务器的状态

# docker run -d --name node-exporter \
--network kongnet \
--restart=always \
-p 9100:9100 \
prom/node-exporter:latest

安装prometheus

如下我们安装prometheus监控采集程序,该程序会搜集目标服务器的指标

1.创建/etc/prometheus/prometheus.yml文件,其内容如下:

# 全局配置
global:
  scrape_interval:     15s # 采集间隔时间。 默认为每 1 分钟。
  evaluation_interval: 15s # 每 15 秒评估一次规则。 默认值为每 1 分钟。

# 抓取端口配置
scrape_configs:
  - job_name: 'kong'
    static_configs:
      - targets: ['kong:8000']  # kong 监测点地址
        labels:
          instance: kong

  - job_name: 'node-exporter'
    static_configs:
      - targets: ['node-exporter:9100'] # node-exporter 监测点地址
        labels:
            instance: node-exporter

2.启动prometheus

# docker run -d --name prometheus \
--network kongnet \
--restart=always \
-p 9090:9090 \
-v /etc/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
prom/prometheus:latest

安装grafana

grafana具有丰富的监控展示功能,并且具有报警功能,如下我们安装grafana
1.创建grafana数据存储目录

# mkdir -p /var/lib/grafana && chmod 777 /var/lib/grafana

2.启动grafana

# docker run -d --name=grafana \
--network kongnet \
--restart=always \
-p 3000:3000 \
-v /var/lib/grafana:/var/lib/grafana \
grafana/grafana:latest

3.访问http://127.0.0.1:3000/login,登录grafana,用户名密码均为admin
7 Kong 指标监控与报警_第2张图片

4.在设置页面添加我们的prometheus数据源
7 Kong 指标监控与报警_第3张图片

这里只需要填写prometheus的服务器地址即可
7 Kong 指标监控与报警_第4张图片

5.导入仪表盘
https://grafana.com/grafana/dashboards/ 上提供了各种仪现成表盘,我们只需要输入ID即可添加仪表盘,如下我们在import页面输入id导入node-exporter 和 kong的仪表盘,对应的id为
node-exporter:11074
Kong for prometheus:7424
7 Kong 指标监控与报警_第5张图片

我们通过Browse页面可以浏览我们的仪表盘列表,点击对应的行进入对应的仪表盘

grafana邮件报警

下面配置grafana通过邮件进行报警
1.导出grafana的配置

# mkdir /etc/grafana && docker exec -it grafana cat /etc/grafana/grafana.ini > /etc/grafana/grafana.ini

2.修改配置的如下字段,如下使用的是QQ邮箱

[smtp]
enabled = true
host = smtp.qq.com:465
user = 137xxxxxx@qq.com         -- 用于登录的邮箱
password = rwxxxxxxxxxxxxxx     -- 邮箱的smtp授权码
from_address = 137xxxxxx@qq.com    -- 发送报警邮件的邮箱
from_name = Grafana             -- 发送报警邮件的名称

3.重新安装grafana

# docker run -d --name=grafana \
--network kongnet \
--restart=always \
-p 3000:3000 \
-v /var/lib/grafana:/var/lib/grafana \
-v /etc/grafana/grafana.ini:/etc/grafana/grafana.ini \
grafana/grafana:latest

4.新建一个联系点
7 Kong 指标监控与报警_第6张图片

5.创建报警规则
我们按照grafana的默认配置创建一个报警规则,当规则被触发后将发送邮件报警
7 Kong 指标监控与报警_第7张图片

6.更改通知策略
我们将Notification policies的根改为刚才新建的Test联系点,这样所有规则的发出的报警都会通过我们的Test联系点
7 Kong 指标监控与报警_第8张图片

7.测试
我们将容器node-exporter停止,grafana将会向我们发送邮件

感想:grafana的配置真麻烦,关键文档还是英文的,看不懂

踩坑

1.坑1
上篇文章kong容器的生成漏写了2个环境变量导致konga连接不上kong了,后续我已经补回来了
-e “KONG_ADMIN_LISTEN=0.0.0.0:8001”
-e “KONG_ADMIN_LISTEN_SSL=0.0.0.0:8444” \

你可能感兴趣的:(Kong,微服务网关,运维,容器,微服务)