圆咕噜咕噜 发表于 2024-5-17 17:22:21

K8s集群nginx-ingress监控告警最佳实践

本文分享自华为云社区《K8s集群nginx-ingress监控告警最佳实践》,作者:可以交个朋友。
一 背景

nginx-ingress作为K8s集群中的关键组成部分。重要负责k8s集群中的服务发布,请求转发等功能。如果在访问服务过程中出现404和502等情况,必要引起注意。
二 方案简介

可以通过CCE集群插件kube-prometheus-stack进行nginx-ingress服务的指标监控,Grafana仪表盘视图可以自己制作或者导入开源模板,方便时刻观察nginx-ingress的各项运行指标是否处于健康状态。
https://bbs-img.huaweicloud.com/blogs/img/20240410/1712739120009258050.png
CCE Prometheus监控指标数据同一remotewrite到华为云AOM2.0服务,可以在AOM2.0服务中展示Prometheus采集的指标数据,并根据业务实际诉求,实现基于指标的的告警关照。
CCE监控插件对接AOM:
https://bbs-img.huaweicloud.com/blogs/img/20240124/1706062183786289174.png
https://bbs-img.huaweicloud.com/blogs/img/20240409/1712651364695335460.png
AOM检察nginx-ingress
https://bbs-img.huaweicloud.com/blogs/img/20240409/1712651483503980504.png
三 nginx-ingress关键指标

确保Prometheus已成功抓取nginx-ingress指标
https://bbs-img.huaweicloud.com/blogs/img/20240409/1712651711922196265.png

[*]nginx-ingress设置热加载失败次数
count(nginx_ingress_controller_config_last_reload_successful{} == 0)
[*]nginx-ingress每个nginx-ingress-controller实例的连接数
sum(nginx_ingress_controller_nginx_process_connections) by (controller_namespace,controller_pod)
[*]nginx-ingress每个nginx-ingress-controller实例中process数
nginx_ingress_controller_nginx_process_num_procs
[*]nginx-ingress每个nginx-ingress-controller实例的每秒请求数
sum(irate(nginx_ingress_controller_requests{})) by (controller_namespace,controller_pod)
[*]nginx-ingress请求时延
histogram_quantile(0.90, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{status="200"})) by (le, ingress, host, path)) * 1000
histogram_quantile(0.95, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{status="200"})) by (le, ingress, host, path)) * 1000
histogram_quantile(0.99, sum(rate(nginx_ingress_controller_request_duration_seconds_bucket{status="200"})) by (le, ingress, host, path)) * 1000
[*]请求失败率
sum(rate(nginx_ingress_controller_requests{status=~".*"})) / sum(rate(nginx_ingress_controller_requests{})) * 100
四 怎样根据nginx-ingress指标进行告警

前往AOM告警管理tab页
https://bbs-img.huaweicloud.com/blogs/img/20240124/1706063101852182651.png
设置告警规则
选择指标告警规则,设置方式可利用PromQL语句,选择对应的AOM实例
https://bbs-img.huaweicloud.com/blogs/img/20240410/1712716172137411800.png
https://bbs-img.huaweicloud.com/blogs/img/20240410/1712716309227227522.png
设置告警关照规则
https://bbs-img.huaweicloud.com/blogs/img/20240410/1712716403480685512.png
触发指标告警规则,邮箱收到告警
https://bbs-img.huaweicloud.com/blogs/img/20240410/1712717051798411929.png
 
点击关注,第一时间了解华为云新鲜技术~
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: K8s集群nginx-ingress监控告警最佳实践