一、安装总体介绍
1.1 需要安装的组件
。vmware虚拟机软件
VMware Workstation是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试、部署新的应用程序的最佳解决方案。VMware Workstation可在一部实体机器上模拟完整的网络环境,以及可便于携带的虚拟机,其更好的灵活性与先进的技术胜过了市面上其他的虚拟计算机软件。对于企业的IT开发人员和系统管理员而言,VMware在虚拟网路,实时快照,拖曳共享文件夹,支持PXE等方面的特点使它成为必不可少的工具。
。centos的linux操作系统
。Prometheus软件
。Grafana软件
1.2 安装步骤
。vmware虚拟机安装(略过)
。centos安装(略过)
。Prometheus的二进制安装
。安装alertmanager
。Grafana软件的安装
。安装node_exporter
二、vmware虚拟机的安装
提前进入到vmware.com的网站(要先有vmware的账号,再登录,再下载次新的vmwareworkstadon pro的版本,此处我们下载17的版本)
略
三、Centos的安装(我自己用rockylinux9.6)
略
1.配置静态ip
2.systemctl restart network
3.使用ssh工具连接这台虚拟机
四、Prometheus的二进制安装
4.1 获取安装包
官网:https://www.prometheus.io/download/
#切换到家目录 cd /home #用wget命令从github.com下载指定Prometheus wget https://github.com/prometheus/prometheus/releases/download/v2.45.5/prometheus-2.45.5.linux-amd64.tar.gz #解压 tar -zxvf prometheus-2.45.5.linux-amd64.tar.gz #查看解压后的内容 ll #创建Prometheus目录 mkdir -p /opt/prometheus #移动解压后的文件名到/opt/并改名 mv prometheus-2.45.5.linux-amd64/ /opt/prometheus/prometheus4.2 创建专门用户
sudo useradd -M -s /usr/sbin/nologin prometheus #更改Prometheus用户的文件夹权限 chown prometheus:prometheus -R /opt/prometheus
4.3 创建系统服务
sudo cat > /etc/systemd/system/prometheus.service << 'EOF' [Unit] Description=Prometheus Server Documentation=https://prometheus.io/docs/introduction/overview/ After=network-online.target [Service] Type=simple User=prometheus Group=prometheus Restart=on-failure ExecStart=/opt/prometheus/prometheus/prometheus \ --config.file=/opt/prometheus/prometheus/prometheus.yml \ --storage.tsdb.path=/opt/prometheus/prometheus/data \ --storage.tsdb.retention.time=60d \ --web.enable-lifecycle [Install] WantedBy=multi-user.target EOF #配置Prometheus的配置文件 #配置Prometheus的数据目录 #配置Prometheus的默认存储天数15天->60天 #配置Prometheus的热加载配置启动服务
systemctl start prometheus systemctl enable prometheus #查看服务状态 systemctl status prometheus如有启动问题,进行日志查看&故障排除
journalctl -u prometheus.service -f4.4 访问地址
#Prometheus(prometheus的服务端口:9090) #如果9090的端口不通,一方面要检查Prometheus的service是否启动,另一方面要检查防火墙 http://192.168.92.11:9090/ #Prometheus的监控指标 http:/192.168.92.11:9090/metrics五、安装alertmanager
5.1 获取安装包
#下载alertmanager二进制压缩包 wget https://github.com/prometheus/alertmanager/releases/download/v0.27.0/alertmanager-0.27.0.linux-amd64.tar.gz #解压 tar -zxvf alertmanager-0.27.0.linux-amd64.tar.gz #查看解压后的文件名 ll #移动解压后的文件名到/opt/,并改名为alertmanager mv alertmanager-0.27.0.linux-amd64 /opt/prometheus/alertmanager5.2 更改owner权限
sudo chown -R prometheus:prometheus /opt/prometheus/alertmanager5.3 创建系统服务
#sudo mkdir -p /opt/prometheus/alertmanager/data sudo cat > /etc/systemd/system/alertmanager.service << 'EOF' [Unit] Description=Alertmanager Documentation=https://prometheus.io/docs/alerting/alertmanager/ Wants=network-online.target After=network-online.target [Service] Type=simple User=prometheus Group=prometheus ExecStart=/opt/prometheus/alertmanager/alertmanager \ --config.file=/opt/prometheus/alertmanager/alertmanager.yml \ --storage.path=/opt/prometheus/alertmanager/data Restart=always [Install] WantedBy=multi-user.target EOF启动alertmanager
systemctl daemon-reload systemctl start alertmanager.service systemctl enable alertmanager.service #查看alertmanager的服务状态 systemctl status alertmanager.service5.4 修改prometheus配置
加入alertmanager
#vi /opt/prometheus/prometheus/prometheus.yml alerting: alertmanagers: - static_configs: - targets: - localhost:9093 rule_files: # 根据实际名修改文件名 - "alert.yml"增加触发器配置文件
cat>/opt/prometheus/prometheus/alert.yml <<"EOF" groups: - name: Prometheus_alert rules: # 对任何实例超过30秒无法联系的情况发出警报 - alert: 服务告警 expr: up == 0 for: 30s labels: severity: critical annotations: instance: "服务异常,实例: {{ $labels.instance }}" description: "{{ $labels.job }} 服务已关闭" EOF检查配置(prometheus的配置检查的工具)
cd /opt/prometheus/prometheus/ ./promtool check config prometheus.yml重启prometheus或重新加载配置文件
#重启 systemctl restart prometheus #或重载配置文件,需要--web.enable-lifecycle配置(热加载)(这里两个选一就可以了,这里我选这个) curl -X POST http://localhost:9090/-/reload5.5 访问地址
http://192.168.92.11:9093/六、Grafana软件的安装
本次课程选择离线安装包方式,grafana版本10.0.1-1
6.1 上传离线包(清华大学镜像站下载)
grafana-10.0.1-1.x86_64.rpm
#切换到/home目录 cd /home #上传grafana-10.0.1-1.x86_64.rpm ll6.2 离线包安装,并开机自启动
。离线包安装
yum localinstall grafana-10.0.1-1.x86_64.rpm -y。开机自启动
systemctl start grafana-server.service systemctl enable grafana-server.service #通过这个命令查看grafana-server服务的状态 systemctl status grafana-server #确认3000端口是否被grafana程序占据 ss -ntulp | grep 30006.3 访问图形界面
http://192.168.92.11:3000/
初始密码:admin/admin
七、安装node exporter
7.1 获取安装包
# 1. 下载(使用完整正确的URL) wget https://github.com/prometheus/node_exporter/releases/download/v1.8.0/node_exporter-1.8.0.linux-amd64.tar.gz # 2. 解压 tar -zxvf node_exporter-1.8.0.linux-amd64.tar.gz # 3. (可选)查看解压出的文件夹 ls -l node_exporter-1.8.0.linux-amd64/ # 4. 创建目标目录(如果/opt/prometheus/不存在) sudo mkdir -p /opt/prometheus/ # 5. 移动并重命名(使用下划线,无空格) sudo mv node_exporter-1.8.0.linux-amd64 /opt/prometheus/node_exporter7.2 更改owner权限
chown prometheus:prometheus -R /opt/prometheus/node_exporter7.3 创建系统服务
sudo cat > /etc/systemd/system/node_exporter.service << 'EOF' [Unit] Description=Node Exporter Documentation=https://prometheus.io/docs/guides/node-exporter/ After=network-online.target [Service] User=prometheus Group=prometheus ExecStart=/opt/prometheus/node_exporter/node_exporter Restart=on-failure [Install] WantedBy=multi-user.target EOF启动服务
systemctl daemon-reload systemctl start node_exporter.service systemctl enable node_exporter.service #查看服务状态 systemctl status node_exporter.service7.4 访问地址
http://192.168.92.11:9100/metrics7.5 配置Prometheus
#vi /opt/prometheus/prometheus/prometheus.yml #node-exporter配置 - job_name: 'node_exporter' scrape_interval: 15s static_configs: - targets: ['localhost:9100'] labels: instance: 'Prometheus服务器'重新加载Prometheus配置
curl -X POST http://localhost:9090/-/reloadprometheus的web检查
http://192.168.92.11:9090/检查status
检查alert
八、配置Grafana
8.1配置Prometheus数据源
。访问grafana
http://192.168.92.11:3000/
。选择配置->Data sources
然后点save & test
8.2 添加node exporter
。访问grafana官网
https://grafana.com/grafana/dashboards/
到这里我们就可以在grafana的数据源当中,对prometheus检测到的数据进行展示
Prometheus 是监控数据的“采集器”和“仓库”,而 Grafana 是查看和分析这些数据的“展示窗口”和“操作台”。