Prometheus与Grafana

一套监控进程,Prometheus用于存储监控数据,Grafana以图标的形式将各种数据通过图表的形式展示出来。

插件默认端口dashboard ID备注
Node Exporter910011074监控服务器数据
process exporter9256249以进程维度进行数据监控
redis_exporter9121监控redis
mysqld_exporter91047362监控mysql

查看数据的基本方式: curl localhost:port/metrics
prometheus的原始页面:http:ip:9090,输入指标量等信息就可以进行原始的数据查询。一般使用grafana的进行指标量的展示
在这里插入图片描述

prometheus的配置文件prometheus.yml,基本格式见图。job_name对应一个job,下边可配置多个targets,target为部署对应插件的机器的信息;
在这里插入图片描述

使用grafana的情况下:安装dashboard的方式,在下面页面输入id即可。id号可以从官网【https://grafana.com/grafana/dashboards】查询获取:
在这里插入图片描述

Node Exporter

部署在节点机器上,启动: ./node_exporter

监控链接: https://www.ipcpu.com/2021/04/prometheus-node_exporter/

在prometheus上的配置
  - job_name: '44_141_pro'
    static_configs:
    - targets: ['10.130.44.141:9100']

process exporte

官网地址

https://github.com/ncabatoff/process-exporter/

部署

以进程维度去进行监控,部署在进程允许的节点上
启动方式: ./process-exporter -config.path config.yml
配置方式:

 process_names:
  - name: "{{.Comm}}"
    cmdline:
    - 'go-call-distrib'

name: 适配各种匹配规则

  • {{.Comm}}包含原始可执行文件的基本名称,即中的第二个字段/proc//stat
  • {{.ExeBase}}包含可执行文件的基本名称 {{.ExeFull}}包含可执行文件的完全限定路径
  • {{.Username}}包含有效用户的用户名 {{.Matches}}map 包含应用 cmdline regexps 产生的所有匹配项
  • {{.PID}}包含进程的PID。请注意,使用 PID 意味着该组将仅包含一个进程。
  • {{.StartTime}}包含进程的开始时间。这可以与 PID 结合使用,因为 PID 会随着时间的推移而重复使用。
  • {{.Cgroups}}包含(如果支持)进程的 cgroup (
    /proc/self/cgroup)。这对于识别进程属于哪个容器特别有用。

process_names必须包含一个或多个选择器(comm,exe
或cmdline);如果存在多个选择器,它们必须全部匹配。每个选择器都是一个字符串列表,用于匹配进程的comm, argv[0],或者在
的情况下cmdline,是应用于命令行的正则表达式。

在prometheus上的配置
  - job_name: '44_141_pro'
    static_configs:
    - targets: ['10.130.44.141:9256']

redis_exporte

在redis部署的机器部署
启动命令(redis的连接ip及密码)./redis_exporter -redis.addr 10.130.44.103:6380 -redis.password 123456

在prometheus上的配置
  - job_name: 'redis_exporter_targets'
    static_configs:
      - targets:
        - redis://10.130.44.103:6380
        - redis://10.130.44.103:6381
        - redis://10.130.44.103:6382
        - redis://10.130.44.141:6383
        - redis://10.130.44.141:6384
        - redis://10.130.44.141:6385
    metrics_path: /scrape
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 10.130.44.103:9121
  ## config for scraping the exporter itself
  - job_name: 'redis_exporter'
    static_configs:
     - targets:
        - 10.130.44.103:9121

mysqld_exporter

在mysql所在的机器部署
启动命令: ./mysqld_exporter --config.my-cnf=.mysqld_exporter.cnf
在需监控的mysql数据库上创建用户:

grant select,replication client, process on *.* to 'mysql_monitor'@'localhost' identified by '123456';
flush privileges;

配置文件(隐藏文件格式):

[client]
user=mysql_monitor
password=123456

在这里插入图片描述

在prometheus上的配置
  - job_name: '44_103_mysql'
    static_configs:
    - targets: ['10.130.44.103:9104']

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值