参考文章实现:Prometheus联邦集群+VictoriaMetrics集群搭建部署
1.基本信息
涉及机器列表,机器均为本地虚拟机
192.168.56.108
192.168.56.109
方案实现如下
涉及模块介绍
- vmstorage: 数据存储节点,负责存储时序数据
- vmselect: 数据查询节点,负责接收用户查询请求,向vmstorage查询时序数据
- vminsert: 数据插入节点,负责接收用户插入请求,向vmstorage写入时序数据
2.下载cluster版本
wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.81.2/victoria-metrics-linux-amd64-v1.81.2-cluster.tar.gz
tar -xf victoria-metrics-linux-amd64-v1.81.2-cluster.tar.gz -C /usr/local/victoria_metrics/
3.配置vmstorage-prod 组件服务
mkdir -p /root/victoria_metrics/vmstorage-data #生产环境建议换成磁盘目录,换性能更好的ssd硬盘,集群所有节点都要执行
# vim /etc/systemd/system/vmstorage.service
[Unit]
Description=Vmstorage Server
After=network.target
[Service]
Restart=on-failure
WorkingDirectory=/tmp
ExecStart=/usr/local/victoria_metrics/vmstorage-prod -loggerTimezone Asia/Shanghai -storageDataPath /root/victoria_metrics/vmstorage-data -httpListenAddr :8482 -vminsertAddr :8400 -vmselectAddr :8401
[Install]
WantedBy=multi-user.target
同步启动文集到其他节点
# 配置同步集群其它节点
scp /etc/systemd/system/vmstorage.service root@192.168.56.109:/etc/systemd/system/
# 二进制方式启动vmstorage
systemctl enable --now vmstorage.service
4.部署 vminsert-prod 组件
# vim /etc/systemd/system/vminsert.service
[Unit]
Description=Vminsert Server
After=network.target
[Service]
Restart=on-failure
WorkingDirectory=/tmp
ExecStart=/usr/local/victoria_metrics/vminsert-prod -httpListenAddr :8480 -storageNode=192.168.56.108:8400, 192.168.56.109:8400
[Install]
WantedBy=multi-user.target
同步启动文集到其他节点
# 配置同步集群其它节点
scp /etc/systemd/system/vminsert.service root@192.168.56.109:/etc/systemd/system/
# 二进制方式启动vminsert
systemctl enable --now vminsert.service
5.部署 vmselect-prod 组件
# vim /etc/systemd/system/vmselect.service
[Unit]
Description=Vminsert Server
After=network.target
[Service]
Restart=on-failure
WorkingDirectory=/tmp
ExecStart=/usr/local/victoria_metrics/vmselect-prod -httpListenAddr :8481 -storageNode=192.168.56.108:8401,192.168.56.109:8401
[Install]
WantedBy=multi-user.target
同步启动文集到其他节点
# 配置同步集群其它节点
scp /etc/systemd/system/vmselect.service root@192.168.56.109:/etc/systemd/system/
# 二进制方式启动vmselect
systemctl enable --now vmselect.service
6.验证服务端口
curl http://192.168.56.108:8480/metrics
curl http://192.168.56.108:8481/metrics
curl http://192.168.56.108:8482/metrics
curl http://192.168.56.109:8480/metrics
curl http://192.168.56.109:8481/metrics
curl http://192.168.56.109:8482/metrics
效果如下
7.配置Prometheus远程写入和远程读取victoriametrics集群
# vi /root/prometheus/prometheus.yml
remote_write:
- url: http://192.168.56.108:8480/insert/0/prometheus
remote_read:
- url: http://192.168.56.108:8481/select/0/prometheus
重启docker
8.配置grafana的VictoriaMetrics数据源
URL => http://192.168.56.108:8481/select/0/prometheus