普罗米修斯之一实现图形化监控

普罗米修斯之一实现图形化监控

1:prometheus

1. 下载:

  1. 前往官网下载prometheus的文件到电脑------------前往普罗米修斯官网下载地址
  2. 复制 prometheus 的下载地址 直接使用相关命令下载到服务器。

prometheus 源码包下载地址:此链接为2.46版本且只适用于linux系统

https://github.com/prometheus/prometheus/releases/download/v2.46.0/prometheus-2.46.0.linux-amd64.tar.gz

2. 安装:

解压即用

shell 复制代码
tar -zxvf /path/to/prometheus-2.46.0.linux-amd64.tar.gz -C /path/install/prometheus
#说明:从存放压缩包的环境解压到指定的安装目录

3. 启动:

1:启动方式之一加入systemctl

1:加入系统管理,一般勤快下是加入到用户目录

系统目录:/usr/lib/systemd/system

用户目录:/etc/systemd/system

参考的prometheus.service

shell 复制代码
[Unit]
Description=https://prometheus.io
# 这里是对服务的描述,通常简要说明服务的功能或用途。

[Service]
Restart=on-failure
# 这里指定了服务的行为。"Restart=on-failure"表示如果服务出现失败,则会自动重新启动。

ExecStart=/home/jiang/prometheus/prometheus/prometheus --config.file=/home/jiang/prometheus/prometheus/prometheus.yml
# 这是服务启动时要执行的命令。它指定了启动Prometheus的可执行文件路径,并通过--config.file选项指定了使用的配置文件路径。

[Install]
WantedBy=multi-user.target
# 这里定义了服务的安装位置和启动级别。"WantedBy=multi-user.target"表示在多用户环境下启用服务。
shell 复制代码
vim /etc/systemd/system/prometheus.service
# 内容为上文的参考内容
systemctl daemon-reload
# 刷新内容
systemctl start prometheus.service
# 启动服务
systemctl status prometheus.service
# 查看状态

2:启动方式之二---直接启动

1:进入安装目录

2:

shell 复制代码
./prometheus [--config.file=/config_path/to/*.yml]
# 说明[]里的可选

3:启动方式之三----后台运行

shell 复制代码
nohub /path/to//prometheus [--config.file=/config_path/to/*.yml] &
# 说明[]里的可选

4:默认配置文件prometheus.yml讲解

yml 复制代码
# 全局配置
global:
  scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# 警报管理器的相关的配置
 alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093


# 配置相关的报警规则,目录可以自己指定
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
  # - /usr/lib/prometheus/rules/*.rules


# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
# 添加配置的节点
scrape_configs:
  # 作业名称作为标签"job=<job_name>"添加到从此配置抓取的任何时间序列中。
  - job_name: "prometheus"

    # metrics_path 默认为 '/metrics'
    # scheme 默认为 'http'.

    static_configs:
    # 如果需要监控的不止这一个,且远程服务器也安装了普罗米修斯,且端口有开放,则可以继续在- targets其中添加,下同. 比如服务器的地址为10.10.101.200
      - targets: ["localhost:9090","10.10.101.200:9090"]
  
  # 以下的内容是自己添加的,这里有两个服务,一个是关于服务器基本信息的,一个是关于数据库的基本信息
  - job_name: "node_exporter"
    static_configs:
      - targets: ["localhost:9100"]
  

  - job_name: "mysqld_exporter"
    static_configs:
      - targets: ["localhost:9105"]

2:使用Node Exporter采集主机运行数据

1:下载安装

官网下载,

2: 启动

1:启动方式之一---加入系统管理

shell 复制代码
cat >> /etc/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node exporter service
Documentation=https://prometheus.io
After=network.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/home/jiang/prometheus/node_exporter/node_exporter
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
# 刷新内容
systemctl start prometheus.service
# 启动服务
systemctl status prometheus.service
# 查看状态

2:启动方式之二---直接启动

1:进入安装目录

2:

shell 复制代码
./node_exporter

3:启动方式之三----后台运行

shell 复制代码
nohub /path/to/node_exporter &
# 说明[]里的可选

3: 测试

如果是虚拟机请关闭防火墙,或者添加对应的规则

启动成功了应该是图片中的样子

4:编辑prometheus.yml

yml 复制代码
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
# 添加这个
  - job_name: "node"

    static_configs:
      - targets: ["localhost:9100"]

重启 prometheus

shell 复制代码
systemctl restart prometheus

5:查看服务是否添加成功

3: 监控数据可视化----使用Grafana创建可视化Dashboard

1: 下载安装

这个是官方指引,里面包含所有的安装方法.

以下是Red Hat, CentOS, RHEL版本的系统的安装方式

shell 复制代码
sudo yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-10.0.3-1.x86_64.rpm

2:启动Grafana

shell 复制代码
systemctl daemon-reload
systemctl start grafana-server.service
systemctl enable grafana-server.service

3:检查端口是否监听

shell 复制代码
netstat -tulnp | grep :3000
tcp6 0 0 :::3000 :::* LISTEN 24024/grafana-serve

4: 访问Grafana

http://ip:3000

admin/admin

登录成功后

5: 配置数据源



6: 安装对应的Dashboard

在上一步添加完数据源后,可视化已经完成,可以通过查询时间序列来生成图形,如下图

但是作为开源软件,Grafana社区鼓励用户分享Dashboard通过https://grafana.com/dashboards网站,可以找到大量可直接使用的Dashboard:

怎么加入Dashboard呢?

添加完后的效果.

999: 放在最后

1:资料的来源:

1:普罗米修斯官网----https://prometheus.io/

最新的,最全的,最好的,就是没有中文

2:Prometheus 中文文档-----https://www.prometheus.wang/

个人觉得挺好用的,就是好久没更新了,里面的东西有些已经过时.

3: 资源分享

额,现在无网,之后上传到网盘后再分享网盘链接

相关推荐
萨格拉斯救世主31 分钟前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
无所谓จุ๊บ32 分钟前
树莓派开发相关知识十 -小试服务器
服务器·网络·树莓派
Jtti34 分钟前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
yeyuningzi1 小时前
Debian 12环境里部署nginx步骤记录
linux·运维·服务器
EasyCVR2 小时前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频
龙哥说跨境3 小时前
如何利用指纹浏览器爬虫绕过Cloudflare的防护?
服务器·网络·python·网络爬虫
pk_xz1234565 小时前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强5 小时前
Linux之sed命令详解
linux·运维·服务器
海绵波波1075 小时前
Webserver(4.3)TCP通信实现
服务器·网络·tcp/ip
九河云7 小时前
AWS账号注册费用详解:新用户是否需要付费?
服务器·云计算·aws