目录
前篇介绍了prom报警器Alertmanager及其机制,本篇讲的是Alertmanager安装。
一、安装环境
基于《使用Grafana添加prometheus监控指标》的基础上进行安装的,即在安装了Grafana的基础上继承安装其它东西。
二、报警器Alertmanager安装及配置
我这里使用的是二进制安装,因为alertmanager使用的是GO语言,编译好的不需要安装其它依赖,直接运行即可
2.1 Alertmanager安装及启动
2.1.1 下载
进入prom的下载页面,点 alertmanager则会直接跳到下载的地方,目前最新稳定版本为0.21,我下载的是alertmanager-0.21.0.linux-amd64.tar.gz,即intel/adm的CPU,64位。具体操作如下:
#alertmanager下载,如果目录没有可以建立一个 mkdir -p /disk1/tools
cd /disk1/tools
wget https://github.com/prometheus/alertmanager/releases/download/v0.21.0/alertmanager-0.21.0.linux-amd64.tar.gz
tar -xf alertmanager-0.21.0.linux-amd64.tar.gz
#安装 /disk1/app/ 目录之前已经建立过了
mv alertmanager-0.21.0.linux-amd64 /disk1/app/
cd /disk1/app/
#创建目录软连接方便记忆
ln -s alertmanager-0.21.0.linux-amd64 alertmanager
#创建命令软链接,这样就可以直接使用了
ln -s /disk1/app/alertmanager/alertmanager /usr/bin/
2.1.2 创建启动服务
#创建相关目录
mkdir -pv /disk1/alertData
#写入服务脚本,配置可以看 alertmanager --help
cat>/usr/lib/systemd/system/alertmanager.service<<EOF
[Unit]
Description=Prometheus Alertmanager Service daemon
After=network.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/disk1/app/alertmanager/alertmanager \\
--config.file="/disk1/app/alertmanager/alertmanager.yml" \\
--storage.path="/disk1/alertData" \\
--data.retention=120h \\
--web.external-url="http://192.168.3.82:9093" \\
--web.listen-address=":9093"
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
cat /usr/lib/systemd/system/alertmanager.service
#加入开机启动
systemctl enable alertmanager
#开启,查看状态
systemctl start alertmanager
sleep 6
netstat -alntp|grep -i listen|grep 9093
systemctl status alertmanager
在使用以上alertmanager.service文件时,可根据各自部署环境修改选项:
选项 说明 ExecStart=/disk1/app/alertmanager/alertmanager 启动运行alertmanager程序所在的路径 --config.file="/disk1/app/alertmanager/alertmanager.yml" 指定alertmanager.yml配置文件路径 --storage.path="/disk1/alertData" 数据存储路径 --data.retention=120h 历史数据最大保留时间,默认120 小时 --web.external-url="http://192.168.3.82:9093" 生成返回Alertmanager的相对和绝对链接地址,可以在后续告警通知信息中直接点击链接地址访问AlertmanagerWebUI。其格式为htp://{ip或者域名}:9093 --web.listen-address=":9093" 监听Web接口和API的地址端口
#服务文件配置效果:
[root@vm82 app]# cat /usr/lib/systemd/system/alertmanager.service
[Unit]
Description=Prometheus Alertmanager Service daemon
After=network.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/disk1/app/alertmanager/alertmanager \
--config.file="/disk1/app/alertmanager/alertmanager.yml" \
--storage.path="/disk1/alertData" \
--data.retention=120h \
--web.external-url="http://192.168.3.82:9093" \
--web.listen-address=":9093"
Restart=on-failure
[Install]
WantedBy=multi-user.target
[root@vm82 app]#
PS:也可以使用docker安装alertmanager。
可以下载Prometheus github中提供的简单示例文件,或者使用二进制安装包中的默认配置simple.yml(直接使用二进制文件也行)把它放在/etc/alertmanager/simple.yml,启动docker命令为:
docker run -d -p 9093:9093 \ -v /etc/alertmanager/simple.yml:/etc/alertmanager/config.yml \ --name alertmanager prom/alertmanager
2.2 通过web查看状态
打开浏览器输入 http://192.168.3.82:9093