页面“Golang”与“Monitoring with prometheus”之间的差异
(→learn) |
|||
第1行: | 第1行: | ||
+ | == | ||
− | |||
− | + | =book= | |
− | [https://www. | + | [https://www.bookstack.cn/read/prometheus-book/README.md Prometheus操作指南] |
+ | =进阶= | ||
+ | 以后全改成自己 docker-compose build | ||
− | https:// | + | [https://blog.51cto.com/wzlinux/2487300 prometheus 监控概述(一)有常用监控警告] |
+ | [https://blog.51cto.com/wzlinux/2490670 PromQL 内置函数(三)] | ||
− | |||
− | = | + | |
+ | [https://www.jb51.net/article/189679.htm prometheus python 库编写自定义指标的方法(完整代码)] | ||
+ | |||
+ | =ins on docker-composer= | ||
+ | https://gitee.com/atompi/PrometheusStackDockerCompose | ||
+ | |||
+ | =安全= | ||
<pre> | <pre> | ||
+ | node exporter 添加防火墙 | ||
+ | |||
+ | curl -Lo /etc/yum.repos.d/_copr_ibotty-prometheus-exporters.repo https://copr.fedorainfracloud.org/coprs/ibotty/prometheus-exporters/repo/epel-7/ibotty-prometheus-exporters-epel-7.repo | ||
+ | # yum install node_exporter | ||
+ | </pre> | ||
+ | |||
+ | =prometheus= | ||
+ | [[Nginx用户密码认证配置 Basic HTTP authentication]] | ||
− | + | 不错的书 | |
+ | https://yunlzheng.gitbook.io/prometheus-book/ | ||
− | |||
− | |||
− | |||
− | + | [https://blog.csdn.net/lijiaocn/article/details/81865120 新型监控告警工具prometheus(普罗米修斯)的入门使用(附视频讲解)] | |
− | |||
− | + | [https://www.lijiaocn.com/%E9%A1%B9%E7%9B%AE/2018/08/03/prometheus-usage.html#prometheus%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6 【视频】新型监控告警工具prometheus(普罗米修斯)入门使用(附视频讲解)] | |
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | + | [https://zhuanlan.zhihu.com/p/91215371 为什么说 Prometheus 是足以取代 Zabbix 的监控神器?] | |
− | + | [https://zhuanlan.zhihu.com/p/24811652 基于Prometheus的分布式在线服务监控实践] | |
+ | ==usage== | ||
+ | [https://www.jianshu.com/p/03cf0fc9c746 Grafana单图表告警邮件&面板图(Dashboard)日报邮件] | ||
− | + | [https://prometheus.io/docs/practices/rules/ Recording rules ] | |
− | |||
+ | https://github.com/prometheus/blackbox_exporter/blob/master/blackbox.yml | ||
− | + | =grafana= | |
− | # | + | <pre> |
− | + | #防火墙 grafana ng 在 10.3.10.10 | |
− | + | firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.3.10.10" port protocol="tcp" port="3000" accept " | |
− | + | firewall-cmd --reload | |
+ | </pre> | ||
− | |||
+ | [https://grafana.com/docs/grafana/latest/installation/docker/ grafana.com Run Grafana Docker image] | ||
+ | [https://grafana.com/grafana/dashboards/8919 中文 Node Exporte for Prometheus Dashboard] | ||
− | + | usage creat-->import --> id 8919 | |
− | + | Container | |
− | |||
− | |||
+ | https://grafana.com/grafana/dashboards/11174 | ||
+ | |||
+ | |||
+ | docker-grafana/config.env https://github.com/stefanwalther/docker-grafana/blob/master/config.env | ||
+ | |||
+ | ==grafana 添加源和数据 == | ||
+ | |||
+ | [https://www.bookstack.cn/read/prometheus-book/quickstart-use-grafana-create-dashboard.md 使用Grafana创建可视化Dashboard] | ||
+ | ==grafana 添加用户 == | ||
+ | <pre> | ||
+ | 1.Users--> 2.Invite --> | ||
+ | |||
+ | 3.进行邀请 | ||
+ | Email or Username:输入用户邮箱,建议先跟用户名保持相同,然后在后面在写邮箱,后面会说到,这样不会报错 | ||
+ | Name:输入用户名 | ||
+ | Role:配置用户权限(只读Viewer 编辑Editor 管理员Admin) | ||
+ | Send invite email:勾选时,会将新用户的设置密码的链接发到邮箱 | ||
+ | |||
+ | 点击创建之后回调到新用户设置密码 | ||
+ | |||
+ | --> | ||
+ | |||
+ | 4.创建好之后,点击Pending Invites | ||
+ | 复制链接到浏览器的地址栏中访问(也可从邮件中收到链接) | ||
+ | 进去之后是下面的界面,这里有个坑,复制的IP地址是localhost,我们这里改为自己搭建的IP地址,然后在Email填写邮箱地址,设置新用户的密码 | ||
+ | 设置完成后,会直接以新用户身份登陆 | ||
+ | |||
+ | |||
+ | http://localhost:3000/invite/PAhyq4gzfA3ugRiw0PH2RC2vsIuSTa | ||
+ | |||
+ | --> | ||
</pre> | </pre> | ||
+ | [https://blog.csdn.net/liuxiangyang_/article/details/86737103 grafana的用户及权限的配置] | ||
− | = | + | [https://blog.csdn.net/GX_1_11_real/article/details/85119451 grafana的用户及权限的配置] |
+ | |||
+ | [https://blog.csdn.net/kozazyh/article/details/93759717?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase grafana-利用Google OAuth2 身份验证] | ||
+ | |||
+ | == ng config== | ||
<pre> | <pre> | ||
− | + | cat gf.conf | |
− | + | server | |
− | + | { | |
+ | listen 80; | ||
+ | server_name gf.linuxsa.org; | ||
+ | # access_log /var/log/nginx/test-nuxt-bcb-blockchain-website.lliao.net.log; | ||
+ | #error_log /var/log/nginx/test-nux-bcb.evan.error.log; | ||
+ | |||
+ | |||
+ | client_max_body_size 10m; | ||
+ | |||
+ | location / { | ||
+ | proxy_pass http://10.3.10.124:3000; | ||
+ | proxy_http_version 1.1; | ||
+ | |||
+ | #set_real_ip_from 10.0.0.0/8; | ||
+ | #set_real_ip_from 172.16.0.0/12; | ||
+ | #set_real_ip_from 192.168.0.0/16; | ||
+ | #real_ip_header X-Forwarded-For; | ||
+ | |||
+ | proxy_set_header Host $host; | ||
+ | proxy_set_header X-Real-IP $remote_addr; | ||
+ | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
+ | proxy_set_header X-Remote-Port $remote_port; | ||
+ | proxy_set_header X-Forwarded-Proto $scheme; | ||
+ | proxy_redirect off; | ||
+ | |||
+ | proxy_connect_timeout 1800s; | ||
+ | proxy_send_timeout 1800s; | ||
+ | proxy_read_timeout 1800s; | ||
+ | |||
+ | |||
+ | |||
+ | real_ip_recursive on; | ||
+ | # real_ip_header X-Forwarded-For; | ||
+ | # set_real_ip_from 0.0.0.0/0; | ||
+ | # proxy_set_header Host $host; | ||
+ | # proxy_set_header X-Real-IP $remote_addr; | ||
+ | # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
+ | |||
+ | |||
+ | #proxy_set_header Host $host:$server_port; | ||
+ | #proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr; | ||
+ | #proxy_set_header X-NginX-Proxy true; | ||
+ | |||
+ | # proxy_set_header X-Real-IP $remote_addr; | ||
+ | # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | ||
+ | # proxy_set_header Upgrade $http_upgrade; | ||
+ | # proxy_set_header Connection "upgrade"; | ||
+ | } | ||
+ | } | ||
</pre> | </pre> | ||
− | |||
− | |||
− | == | + | ==使用教程== |
− | + | [https://yuerblog.cc/2019/01/04/grafana-usage/ grafana配置与简单使用] | |
+ | |||
+ | [https://blog.csdn.net/bbwangj/article/details/81109615 Grafana使用教程] | ||
+ | |||
+ | [https://blog.csdn.net/Sagitarioo/article/details/102805852?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2 grafana数据可视化-使用教程] | ||
+ | |||
+ | [https://www.cnblogs.com/xkus/p/7462742.html grafana快速入门 ] | ||
+ | |||
+ | [https://blog.csdn.net/u012062455/article/details/79214700 grafana使用教程之基本概念(basic concepts)] | ||
− | + | [https://blog.csdn.net/weixin_42674978/article/details/102681969 Grafana从无到有的一个相当粗略的资料总结] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | |
+ | [https://blog.csdn.net/Sagitarioo/article/details/102805852?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2 grafana数据可视化-使用教程] | ||
+ | |||
+ | [https://ken.io/note/grafana-quickstart-influxdb-datasource-graph Grafana快速入门:InfluxDB数据源以及曲线图表仪表盘配置] | ||
+ | |||
+ | |||
+ | [https://www.cnblogs.com/fatyao/p/11192234.html Grafana报警] | ||
+ | |||
+ | |||
+ | apached conf | ||
<pre> | <pre> | ||
− | + | ##/etc/httpd/conf.d/gf.conf | |
− | + | <VirtualHost *:80> | |
+ | ServerName gf.linuxsa.org | ||
+ | ServerAlias gf.linuxsa.org | ||
+ | |||
+ | ProxyRequests off | ||
+ | |||
+ | <Proxy *> | ||
+ | Order deny,allow | ||
+ | Allow from all | ||
+ | </Proxy> | ||
+ | |||
+ | <Location /> | ||
+ | ProxyPass http://localhost:3000/ | ||
+ | ProxyPassReverse http://localhost:3000/ | ||
+ | </Location> | ||
+ | </VirtualHost> | ||
− | + | </pre> | |
+ | =vm监控[[Node-exporter]]= | ||
+ | 可以如上的 node | ||
+ | [[Node-exporter]] | ||
− | + | =Blackbox= | |
− | + | ||
− | + | [[Blackbox exporter]] | |
− | + | ||
− | + | =pushgateway= | |
− | + | ||
− | + | [[pushgateway]] | |
− | + | ||
− | + | [https://www.cnblogs.com/xiao987334176/p/9933963.html 基于Prometheus的Pushgateway实战 ] | |
− | + | ||
− | + | https://songjiayang.gitbooks.io/prometheus/content/pushgateway/how.html | |
− | |||
− | [ | + | =[[Process-exporter]]= |
− | [ | + | =应用监控= |
+ | ==redis== | ||
+ | [[prometheus监控Redis集群]] | ||
− | + | [https://blog.csdn.net/weixin_43832846/article/details/90024274 pika主备部署(redis-sentinel)+监控(prometheus+grafana)] | |
+ | [https://blog.csdn.net/weixin_34289744/article/details/92725774?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-16.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-16.nonecase Prometheus监控 Redis , redis-cli_exporter] | ||
− | [https:// | + | ==监控MQ== |
− | + | [https://www.rabbitmq.com/prometheus.html Monitoring with Prometheus & Grafana ] | |
− | https:// | + | ==监控ES== |
+ | https://github.com/slok/ecs-exporter | ||
+ | ==docker== | ||
+ | [https://blog.csdn.net/palet/article/details/82889493?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-7.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-7.nonecase Prometheus+grafana监控:cAdvisor输出的容器内存相关的指标的解读] | ||
− | https:// | + | == mysql== |
+ | [https://blog.csdn.net/qq_25934401/article/details/82594478 prometheus 监控之 mysql 篇(含mysql报警规则)] | ||
− | https:// | + | [https://jiajunhuang.com/articles/2018_12_16-prometheus_mysqld_exporter.md.html Prometheus MySQL Exporter源码阅读与分析] |
− | [https://www. | + | [https://www.jianshu.com/p/27b979554ef8 python + promethues 监控mysql] |
− | + | ==Spring boot== | |
+ | https://www.bookstack.cn/read/prometheus_practice/application-spring.md | ||
− | |||
− | https:// | + | [https://blog.csdn.net/liangcha007/article/details/86699013#7.%E5%85%B3%E4%BA%8Epushgateway Prometheus基于java开发exporter样例以及pushgateway的应用] |
− | + | =告警= | |
− | + | [[Alertmanager]] | |
− | + | ==telegram== | |
+ | 通过 prome or grafana ? | ||
− | https:// | + | [https://nova.moe/manage-host-alert-on-telegram-with-grafana/ 在 Telegram 中管理主机监控和警报信息] |
− | https://github.com/ | + | https://github.com/inCaller/prometheus_bot |
− | https:// | + | https://github.com/metalmatze/alertmanager-bot |
− | [https:// | + | [https://blog.csdn.net/weixin_34242331/article/details/91875514 基于prometheus + grafana + mysql + Telegram 监控告警] |
+ | https://my.oschina.net/54188zz/blog/3030618 | ||
− | https:// | + | [https://yunlzheng.gitbook.io/prometheus-book/parti-prometheus-ji-chu/alert/prometheus-alert-rule 自定义Prometheus告警规则] |
− | https:// | + | [https://www.linux.org.ru/forum/general/14894302 prometheus alertmanager telegram ] |
− | https:// | + | =教程= |
+ | [https://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_liunx_60_prometheus_config.html prometheus学习系列五: Prometheus配置文件 ] | ||
=see also= | =see also= | ||
− | |||
− | [[category: | + | [https://www.jianshu.com/p/93412a925da2 规划 Prometheus 的存储用量] |
+ | |||
+ | [https://blog.csdn.net/lemon89/article/details/104088184 深入理解监控系统——Prometheus核心特点] | ||
+ | |||
+ | [https://blog.csdn.net/qq_21816375/article/details/80462445?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-12.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-12.nonecase prometheus部署node,server以及域名加告警] | ||
+ | |||
+ | [https://www.cnblogs.com/chenqionghe/p/10494868.html 从零搭建Prometheus监控报警系统] | ||
+ | |||
+ | [https://www.jianshu.com/p/1f05476ebcee 使用prometheus自定义监控] | ||
+ | |||
+ | [https://zhuanlan.zhihu.com/p/91215371 为什么说 Prometheus 是足以取代 Zabbix 的监控神器?] | ||
+ | |||
+ | [https://blog.51cto.com/wzlinux/2487300 prometheus 监控概述(一)] | ||
+ | |||
+ | |||
+ | |||
+ | [[category:ops]] [[category:container]] [[category:prom]] |
2020年9月28日 (一) 08:41的版本
==
目录
book
进阶
以后全改成自己 docker-compose build
prometheus python 库编写自定义指标的方法(完整代码)
ins on docker-composer
https://gitee.com/atompi/PrometheusStackDockerCompose
安全
node exporter 添加防火墙 curl -Lo /etc/yum.repos.d/_copr_ibotty-prometheus-exporters.repo https://copr.fedorainfracloud.org/coprs/ibotty/prometheus-exporters/repo/epel-7/ibotty-prometheus-exporters-epel-7.repo # yum install node_exporter
prometheus
Nginx用户密码认证配置 Basic HTTP authentication
不错的书 https://yunlzheng.gitbook.io/prometheus-book/
新型监控告警工具prometheus(普罗米修斯)的入门使用(附视频讲解)
【视频】新型监控告警工具prometheus(普罗米修斯)入门使用(附视频讲解)
为什么说 Prometheus 是足以取代 Zabbix 的监控神器?
usage
Grafana单图表告警邮件&面板图(Dashboard)日报邮件
https://github.com/prometheus/blackbox_exporter/blob/master/blackbox.yml
grafana
#防火墙 grafana ng 在 10.3.10.10 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.3.10.10" port protocol="tcp" port="3000" accept " firewall-cmd --reload
grafana.com Run Grafana Docker image
中文 Node Exporte for Prometheus Dashboard
usage creat-->import --> id 8919
Container
https://grafana.com/grafana/dashboards/11174
docker-grafana/config.env https://github.com/stefanwalther/docker-grafana/blob/master/config.env
grafana 添加源和数据
grafana 添加用户
1.Users--> 2.Invite --> 3.进行邀请 Email or Username:输入用户邮箱,建议先跟用户名保持相同,然后在后面在写邮箱,后面会说到,这样不会报错 Name:输入用户名 Role:配置用户权限(只读Viewer 编辑Editor 管理员Admin) Send invite email:勾选时,会将新用户的设置密码的链接发到邮箱 点击创建之后回调到新用户设置密码 --> 4.创建好之后,点击Pending Invites 复制链接到浏览器的地址栏中访问(也可从邮件中收到链接) 进去之后是下面的界面,这里有个坑,复制的IP地址是localhost,我们这里改为自己搭建的IP地址,然后在Email填写邮箱地址,设置新用户的密码 设置完成后,会直接以新用户身份登陆 http://localhost:3000/invite/PAhyq4gzfA3ugRiw0PH2RC2vsIuSTa -->
ng config
cat gf.conf server { listen 80; server_name gf.linuxsa.org; # access_log /var/log/nginx/test-nuxt-bcb-blockchain-website.lliao.net.log; #error_log /var/log/nginx/test-nux-bcb.evan.error.log; client_max_body_size 10m; location / { proxy_pass http://10.3.10.124:3000; proxy_http_version 1.1; #set_real_ip_from 10.0.0.0/8; #set_real_ip_from 172.16.0.0/12; #set_real_ip_from 192.168.0.0/16; #real_ip_header X-Forwarded-For; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Remote-Port $remote_port; proxy_set_header X-Forwarded-Proto $scheme; proxy_redirect off; proxy_connect_timeout 1800s; proxy_send_timeout 1800s; proxy_read_timeout 1800s; real_ip_recursive on; # real_ip_header X-Forwarded-For; # set_real_ip_from 0.0.0.0/0; # proxy_set_header Host $host; # proxy_set_header X-Real-IP $remote_addr; # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #proxy_set_header Host $host:$server_port; #proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr; #proxy_set_header X-NginX-Proxy true; # proxy_set_header X-Real-IP $remote_addr; # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # proxy_set_header Upgrade $http_upgrade; # proxy_set_header Connection "upgrade"; } }
使用教程
grafana使用教程之基本概念(basic concepts)
Grafana快速入门:InfluxDB数据源以及曲线图表仪表盘配置
apached conf
##/etc/httpd/conf.d/gf.conf <VirtualHost *:80> ServerName gf.linuxsa.org ServerAlias gf.linuxsa.org ProxyRequests off <Proxy *> Order deny,allow Allow from all </Proxy> <Location /> ProxyPass http://localhost:3000/ ProxyPassReverse http://localhost:3000/ </Location> </VirtualHost>
vm监控Node-exporter
可以如上的 node Node-exporter
Blackbox
pushgateway
https://songjiayang.gitbooks.io/prometheus/content/pushgateway/how.html
Process-exporter
应用监控
redis
pika主备部署(redis-sentinel)+监控(prometheus+grafana)
Prometheus监控 Redis , redis-cli_exporter
监控MQ
Monitoring with Prometheus & Grafana
监控ES
https://github.com/slok/ecs-exporter
docker
Prometheus+grafana监控:cAdvisor输出的容器内存相关的指标的解读
mysql
prometheus 监控之 mysql 篇(含mysql报警规则)
Prometheus MySQL Exporter源码阅读与分析
Spring boot
https://www.bookstack.cn/read/prometheus_practice/application-spring.md
Prometheus基于java开发exporter样例以及pushgateway的应用
告警
telegram
通过 prome or grafana ?
https://github.com/inCaller/prometheus_bot
https://github.com/metalmatze/alertmanager-bot
基于prometheus + grafana + mysql + Telegram 监控告警
https://my.oschina.net/54188zz/blog/3030618
prometheus alertmanager telegram
教程
prometheus学习系列五: Prometheus配置文件
see also
prometheus部署node,server以及域名加告警