1 Prometheus简介+部署,使用
1、监控介绍
监控就是用来帮助我们时时刻刻看着我们的应用程序是否正常运行的。如果一旦发现应用程序不能正常运行之后,立即报警。
2、监控软件
zabiix 在基础架构
prometheus 容器架构
Linux 自带的监控软件
监控之中最重要的是:指标
rVKQClWV$#Z3r*kx
3、Linux自带的监控
[root@VM-0-10-centos ~]# w
08:59:39 up 5 min, 1 user, load average: 0.01, 0.04, 0.03
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/1 117.135.12.229 08:58 3.00s 0.01s 0.00s w
1 核 1 1 1 100%
10 核 1 1 1 10%
4 核 8 G
大数据计算 Hoodap 60 %
存储 ceph nfs 60 %
4、Prometheus
为容器而生的监控
性能比zabbix要强悍很多
MySQL 关系型数据库
TSDB 时序数据库
PB
# 下载Prometheus
[root@VM-0-10-centos ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.32.1/prometheus-2.32.1.linux-amd64.tar.gz
# 安装
[root@VM-0-10-centos ~]# tar -xf prometheus-2.32.1.linux-amd64.tar.gz -C /usr/local/
[root@prometheus ~]# cd /usr/local/prometheus-2.32.1.linux-amd64/
[root@prometheus prometheus-2.32.1.linux-amd64]# ll
# 启动
[root@VM-0-10-centos prometheus-2.32.1.linux-amd64]# ./prometheus --config.file='prometheus.yml'
此时,访问http://192.168.15.113:9090/ 可出现如下界面,
点status——Targets可查看监控项

5、Prometheus监控体系
普通架构监控
1、有metrics接口的服务
直接将metrics接口加入prometheus配置中即可。
2、没有metrics接口的服务
1、需要使用exporter服务生成一个metrics接口
[root@VM-0-7-centos ~]# wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
[root@VM-0-7-centos ~]# tar -xf node_exporter-1.3.1.linux-amd64.tar.gz -C /usr/local/
[root@VM-0-7-centos ~]# cd /usr/local/node_exporter-1.3.1.linux-amd64/
[root@VM-0-7-centos node_exporter-1.3.1.linux-amd64]# ./node_exporter
2、再将metrics接口加入prometheus配置中
[root@prometheus ~]# vim /usr/local/prometheus-2.32.1.linux-amd64/prometheus.yml
- job_name: 'NodeExporter'
static_configs:
- targets:
- 192.168.0.7:9100
- 192.168.0.10:9100
加完配置需要重启下prometheus
容器架构监控
prometheus这台也需要被监控
[root@localhost ~]# scp node_exporter-1.3.1.linux-amd64.tar.gz 192.168.15.113:/root/
[root@prometheus ~]# ll
[root@prometheus ~]# tar -xf node_exporter-1.3.1.linux-amd64.tar.gz -C /usr/local/
[root@prometheus ~]# cd /usr/local/node_exporter-1.3.1.linux-amd64/
[root@prometheus node_exporter-1.3.1.linux-amd64]# ll
total 17820
-rw-r--r-- 1 3434 3434 11357 Dec 5 19:15 LICENSE
-rwxr-xr-x 1 3434 3434 18228926 Dec 5 19:10 node_exporter
-rw-r--r-- 1 3434 3434 463 Dec 5 19:15 NOTICE
[root@prometheus node_exporter-1.3.1.linux-amd64]# ./node_exporter
6、Grafana(图形化展示)
官网:https://grafana.com/
# 下载
[root@VM-0-7-centos ~]# wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/grafana-8.3.4-1.x86_64.rpm
# 安装
[root@VM-0-7-centos ~]# yum install -y grafana-8.3.4-1.x86_64.rpm
# 启动grafana
[root@VM-0-7-centos ~]# systemctl start grafana-server.service
192.168.15.113:3000可访问
# 默认的用户名和密码都是admin
# 关联prometheus 和 grafana
# 使用图形化界面
官网连接:https://grafana.com/grafana/dashboards/
7、域名解析
A 记录 : 主要用来解析IP
CNAME 记录 : 主要用来解析域名
[root@prometheus ~]# yum install nginx -y
[root@prometheus ~]# vim /etc/nginx/nginx.conf
[root@prometheus ~]# nginx -t
[root@prometheus ~]# cd /etc/nginx/conf.d
[root@prometheus conf.d]# vim gt.conf
[root@VM-0-10-centos conf.d]# cat gf.conf
server {
server_name gf.abck8s.com;
listen 443 ssl;
ssl_certificate ssl/gf.abck8s.com_nginx/gf.abck8s.com_bundle.crt;
ssl_certificate_key ssl/gf.abck8s.com_nginx/gf.abck8s.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://192.168.0.7:3000;
}
}
server {
server_name gf.abck8s.com;
listen 80;
rewrite (.*) https://$server_name/$1;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了