VictoriaMetrics 集群手动2进制搭建

1,019 阅读1分钟

安装集群过程

使用最新版本

wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.91.3/victoria-metrics-linux-amd64-v1.91.3-cluster.tar.gz

解压

tar -xf victoria-metrics-freebsd-amd64-v1.91.3-cluster.tar.gz
[root@vms176 package]# ls
vminsert-prod  vmselect-prod  vmstorage-prod

修改名称

mv vminsert-prod   vminsert 
mv vmselect-prod   vmselect 
mv vmstorage-prod vmstorage

主机列表

192.168.26.176 vminsert
192.168.26.177 vmselect 
192.168.26.178  vmstorage

scp传输

scp vminsert root@192.168.26.176:/usr/bin/
scp vmselect root@192.168.26.177:/usr/bin/
scp vmstorage root@192.168.26.178:/usr/bin/

操作系统参数优化每台机器上执行

net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.rmem_default = 16777216
net.core.wmem_default = 16777216
net.core.optmem_max = 40960
net.ipv4.tcp_rmem = 4096 1048576 2097152
net.ipv4.tcp_wmem = 4096 65536 16777216
net.core.netdev_budget = 50000
net.core.netdev_max_backlog = 100000
net.ipv4.tcp_max_syn_backlog = 30000
net.ipv4.tcp_max_tw_buckets = 2000000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_slow_start_after_idle = 0
fs.file-max = 65535



sudo vim /etc/sysctl.conf
sudo sysctl -p

systemd 启动文件

victoriametrics-storage.service

mkdir -p  /data/vmstorage
vim /etc/systemd/system/victoriametrics-storage.service
systemctl daemon-reload
systemctl start victoriametrics-storage
[Unit]
Description=VictoriaMetrics-storage
After=network.target

[Service]
Type=simple
StartLimitBurst=5
StartLimitInterval=0
Restart=on-failure
LimitNOFILE=62000
LimitNPROC=62000
RestartSec=1
ExecStart=/usr/bin/vmstorage -memory.allowedPercent=80 -storageDataPath=/data/vmstorage -retentionPeriod=7d
ExecStop=/bin/kill -s SIGTERM $MAINPID
PrivateTmp=yes
ProtectHome=yes
NoNewPrivileges=yes

[Install]
WantedBy=multi-user.target

victoriametrics-vminsert.service

vim /etc/systemd/system/victoriametrics-vminsert.service
systemctl daemon-reload
systemctl start victoriametrics-vminsert.service



[Unit]
Description=VictoriaMetrics-insert
After=network.target

[Service]
Type=simple
StartLimitBurst=5
StartLimitInterval=0
LimitNOFILE=62000
LimitNPROC=62000
Restart=on-failure
RestartSec=1
ExecStart=/usr/bin/vminsert  -memory.allowedPercent=80 -storageNode=192.168.26.178:8400
ExecStop=/bin/kill -s SIGTERM $MAINPID

PrivateTmp=yes
ProtectHome=yes
NoNewPrivileges=yes

[Install]
WantedBy=multi-user.target

victoriametrics-vmselect.service

vim /etc/systemd/system/victoriametrics-vmselect.service
systemctl daemon-reload
systemctl start victoriametrics-vmselect.service



[Unit]
Description=VictoriaMetrics-select
After=network.target

[Service]
Type=simple
StartLimitBurst=5
StartLimitInterval=0
Restart=on-failure
RestartSec=1    
ExecStart=/usr/bin/vmselect  -cacheDataPath=/data/vmselect  -memory.allowedPercent=80 -storageNode=192.168.26.178:8401

ExecStop=/bin/kill -s SIGTERM $MAINPID
LimitNOFILE=62000
LimitNPROC=62000
PrivateTmp=yes
ProtectHome=yes
NoNewPrivileges=yes

[Install]
WantedBy=multi-user.target

 vmui 也被集成到了 vmselect 组件中,我们可以通过路径 http://<vmselect>/select/0/vmui/ 进行访问

http://192.168.26.177:8481/select/0/vmui/#/?g0.range_input=30m&g0.end_input=2023-07-26T15%3A42%3A52&g0.relative_time=last_30_minutes&g0.tenantID=0

image.png

修改普罗米修斯


remote_write:    # 远程写入到远程 VM 存储
 - url: http://192.168.26.176:8480/insert/0/prometheus/

重启

systemctl restart prometheus.service

Grafana 

添加数据源

http://192.168.26.177:8481/select/0/prometheus/

image.png

image.png