centos7部署 Prometheus 3.0.0 + Grafana 10.3.3 + Alertmanager 0.27.0
部署架构概述:
Prometheus 3.0.0 (监控数据收集) ↓
Alertmanager 0.27.0 (告警管理)↓
Grafana 10.3.3 (数据可视化)
下载:
wget https://github.com/prometheus/prometheus/releases/download/v3.0.0/prometheus-3.0.0.linux-amd64.tar.gzwget https://github.com/prometheus/alertmanager/releases/download/v0.27.0/alertmanager-0.27.0.linux-amd64.tar.gzwget https://dl.grafana.com/oss/release/grafana-10.3.3.linux-amd64.tar.gz
部署 Prometheus 3.0.0:
创建 Prometheus 用户和目录:
创建用户:
useradd -M -r -s /sbin/nologin prometheus创建配置 & 数据目录:
mkdir -p /etc/prometheus /var/lib/prometheus给用户授权:
chown -R prometheus:prometheus /etc/prometheus /var/lib/prometheus
安装 Prometheus:
解压:
tar xvf prometheus-3.0.0.linux-amd64.tar.gzcd prometheus-3.0.0.linux-amd64移动到系统目录下:
cp prometheus promtool /usr/local/bin/授权:
chown prometheus:prometheus /usr/local/bin/prometheus /usr/local/bin/promtool把yml文件移动到etc目录下:
cp prometheus.yml /etc/prometheus/
创建 systemd 服务文件:
sudo tee /etc/systemd/system/prometheus.service << 'EOF'
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \--config.file=/etc/prometheus/prometheus.yml \--storage.tsdb.path=/var/lib/prometheus/ \--web.console.templates=/etc/prometheus/consoles \--web.console.libraries=/etc/prometheus/console_libraries[Install]
WantedBy=multi-user.target
EOF
启动并设置开机自启:
systemctl enable prometheus其他命令:
systemctl daemon-reload
systemctl stop prometheus
systemctl start prometheus
systemctl status prometheus
验证 Prometheus 是否运行:
systemctl status prometheus
Prometheus 默认在 9090 端口运行,可通过http://服务器IP:9090访问:
设置防火墙(可选项):
永久放行某个端口(推荐)
firewall-cmd --add-port=9090/tcp --permanent重启防火墙:
firewall-cmd --reload
部署 Grafana 10.3.3:
添加 Grafana 仓库:
sudo tee /etc/yum.repos.d/grafana.repo << 'EOF'
[grafana]
name=grafana
baseurl=https://rpm.grafana.com
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://rpm.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
EOF
安装 Grafana 10.3.3:
cd /optmkdir -p /opt/grafanacd /opt/grafana
解压:
tar -xzf grafana-10.3.3.linux-amd64.tar.gz
创建专用用户:
useradd --no-create-home --shell /bin/false grafanachown -R grafana:grafana /opt/grafana
创建 systemd 服务:
vi /etc/systemd/system/grafana-server.service
输入以下内容(注意安装路径):
[Unit]
Description=Grafana
After=network.target[Service]
User=grafana
Group=grafana
Type=simple
ExecStart=/opt/grafana/grafana-v10.3.3/bin/grafana-server --homepath=/opt/grafana/grafana-v10.3.3
Restart=always[Install]
WantedBy=multi-user.target
创建数据与日志目录并授权:
Grafana 默认数据目录在 /var/lib/grafana,日志在 /var/log/grafanamkdir -p /var/lib/grafana /var/log/grafanachown -R grafana:grafana /var/lib/grafana /var/log/grafana
启动 Grafana 并设置开机自启:
systemctl daemon-reload
systemctl start grafana-server
systemctl enable grafana-server
检查状态:
systemctl status grafana-server
访问 Grafana UI:
http://<你的服务器IP>:3000
永久放行某个端口(推荐)
firewall-cmd --add-port=3000/tcp --permanent
重启防火墙:firewall-cmd --reload
默认账号:
用户名:admin
密码:admin(首次登录会要求你修改)
部署Alertmanager 0.27.0:
创建 Alertmanager 用户
useradd -M -r -s /sbin/nologin alertmanager创建配置 & 数据目录:
mkdir -p /etc/alertmanager /var/lib/alertmanager授权:
chown -R alertmanager:alertmanager /etc/alertmanager /var/lib/alertmanager
安装 Alertmanager:
解压:
tar xvf alertmanager-0.27.0.linux-amd64.tar.gz
进入目录:
cd alertmanager-0.27.0.linux-amd64
移到系统目录并授权:
cp alertmanager amtool /usr/local/bin/
chown alertmanager:alertmanager /usr/local/bin/alertmanager /usr/local/bin/amtool
cp -r alertmanager.yml /etc/alertmanager/
chown -R alertmanager:alertmanager /etc/alertmanager/
创建 systemd 服务文件:
sudo tee /etc/systemd/system/alertmanager.service << 'EOF'
[Unit]
Description=Alertmanager
Wants=network-online.target
After=network-online.target[Service]
User=alertmanager
Group=alertmanager
Type=simple
ExecStart=/usr/local/bin/alertmanager \--config.file=/etc/alertmanager/alertmanager.yml \--storage.path=/var/lib/alertmanager/[Install]
WantedBy=multi-user.target
EOF
启动并设置开机自启:
systemctl daemon-reload
systemctl start alertmanager
systemctl enable alertmanager
验证 Alertmanager 是否运行:
systemctl status alertmanager
Alertmanager 默认在 9093 端口运行,可通过http://服务器IP:9093访问。
永久放行某个端口(推荐)
firewall-cmd --add-port=9093/tcp --permanent
重启防火墙:firewall-cmd --reload
配置 Prometheus 与 Alertmanager 集成
编辑 Prometheus 配置文件,添加 Alertmanager 地址:
vi /etc/prometheus/prometheus.yml
在文件末尾添加:
alerting:alertmanagers:- static_configs:- targets:- localhost:9093rule_files:# - "first_rules.yml"# - "second_rules.yml"
重启 Prometheus 使配置生效:
systemctl restart prometheus
在 Grafana 中添加 Prometheus 数据源:
登录 Grafana 控制台(http:// 服务器 IP:3000)
点击左侧菜单的 “connection” -> “Data Sources”
点击 “Add data source”,选择 “Prometheus”
配置:
Name: Prometheus
URL: http://localhost:9090(或者你的 Prometheus 服务 IP:9090)
点击 “Save & Test”,验证连接是否成功
下一篇:
Prometheus+Grafana实现Springboot服务监控