VictoriaMetrics

概念

介绍

VictoriaMetrics,是一个快速高效、经济并且可扩展的监控解决方案和时序数据库

本文均用VM简称VictoriaMetric

作用

用于作为prometheus的长期储存方案,代替prometheus存储监控采集的数据

优点
  • 远程存储:可作为单一或多个Prometheus的远程存储
  • 安装简单:单节点架构一条命令就可以部署完毕
  • Grafana兼容:VM可替换Grafana的Prometheus数据源(Grafana:一款用于prometheus的图形界面)
  • 低内存:更低的内存占用
  • 高压缩比:提供存储数据高压缩
  • 高性能:查询性能比Prometheus更快
缺点
  • 图形界面简陋,功能少
  • 告警功能需要单独配置vmalert,而且vmalert只有api管理和查看,暂时没用图形界面
  • 没有类似Prometheus的WAL日志,突然故障可能会丢失部分数据
分类

分为单机版和集群版

  • 单节点版:直接运行二进制文件即可启动,简单容易维护,但不支持告警
  • 集群版:支持数据水平拆分,把功能拆分为vmstorage、 vminsert、vmselect,如果要替换Prometheus,还需要vmagent、vmalert
官网

https://victoriametrics.com 

术语

在时间序列(time-series)中的每一个点称为一个样本(sample),样本(sample)由以下三部分

  • 指标(metric):指标名和一组描述当前样本特征的labelsets唯一标识
  • 时间戳(timestamp):一个精确的时间戳,一般由采集时间决定(VM为秒,Prometheus为毫秒)
  • 样本值(value):当前样本的值

关于target:

每一个监控目标称为一个target,如:单个node-exporter、mysqld-exporter等等。

VM单节点版本

本文着重使用单节点方式

结构

服务名称        IPPORT
node- exporter        172.16.12.145        9100        
prometheus        172.16.12.1449090
VM8428        
Grafana3000

 

VM单节点版本有两种使用方式,一种是作为prometheus的监控数据数据库,另一种是直接代替prometheus自己工作 

prometheus部署

配置prometheus和node- exporter节点

配置node- exporter服务器
#将压缩包文件传入到/usr路径下
tar -xvf node_exporter-1.8.0.linux-arm64.tar -C /usr
#更改文件夹名
mv node_exporter-1.8.0.linux-arm64 node_exporter
#进入文件夹
cd node_exporter
#启动服务并输入到日志文件中
nohup ./node_exporter &  #开头nohup为往日志文件nohup中输入
配置prometheus服务器

为什么要部署prometheus

先部署好prometheus和监控节点后,才能安装VM使其为prometheus工作或者代替

1.解压安装包
tar -xvf prometheus-2.51.2.linux-arm64.tar -C /usr
 2.更改文件夹名
mv prometheus-2.51.2.linux-arm64 prometheus
3.进入文件夹
cd prometheus
4.修改配置文件
vim prometheus.xml

修改为以下内容

global:scrape_interval:     15s
scrape_configs:- job_name: 'linux'static_configs:- targets: ['192.168.1.100:9100']- targets: ['192.168.1.101:9100']# 通过relabeling替换从__address__中提取IP信息,主要是为了后面验证VM是否兼容relabelingrelabel_configs: - source_labels:  ['__address__']regex: '(.*):(.*)'action: replacetarget_label: 'ip'replacement: '\${1}'
5.检查配置文件格式
#必须在prometheus文件夹下运行
./promtool check config prometheus.yml
6.启动prometheus服务并存入日志文件
nohup ./prometheus --config.file="prometheus.yml" --storage.tsdb.retention=30d --web.enable-lifecycle &
7.进入浏览器查看prometheus运行情况

http://172.16.12.144:9090/targets

Garfana部署
1.下载安装

官网下载地址

https://grafana.com/grafana/download/9.2.3?edition=oss&pg=graf&platform=linux&plcm
t=deploy-box-1

ARM64 for Centos7 

sudo yum install -y https://dl.grafana.com/oss/release/grafana-9.2.3-1.armhfp.rpm
2.启动服务
systemctl start grafana-server
3.浏览器访问

http://172.16.12.144:3000

账号密码默认:admin/admin

4.添加界面

添加数据并填入http://172.16.12.144:9090

VM单节点作为远程部署 

配置VM服务器

安装在prometheus所在的服务器上

1.解压安装包
tar -xvf victoria-metrics-linux-arm64-v1.101.0.tar -C /usr
 2.更改文件夹名
mv victoria-metrics-linux-arm64-v1.101.0 victoria-metrics
3.进入文件夹
cd victoria-metrics
4.启动服务
nohup ./victoria-metrics-prod -retentionPeriod=30d -storageDataPath=data &
5.修改prometheus的配置文件
global:scrape_interval:     15s
scrape_configs:- job_name: 'linux'static_configs:- targets: ['192.168.1.100:9100']- targets: ['192.168.1.101:9100']relabel_configs:   # 通过relabeling替换从__address__中提取IP信息- source_labels:  ['__address__']regex: '(.*):(.*)'action: replacetarget_label: 'ip'replacement: '\${1}'
remote_write:    # 存储到远程VM存储(这里只是示例,所以Prometheus和VM在一台机子上)- url: http://127.0.0.1:8428/api/v1/writequeue_config:    # 如果Prometheus抓取指标很大,可以加调整queue,但是会提高内存占用max_samples_per_send: 10000capacity: 20000max_shards: 30  
6.重启prometheus服务
kill -HUP `pidof prometheus`
7.修改Grafana数据源

将http://172.16.12.144:9090端口修改为8428

正常显示

 VM直接代替prometheus
1.将prometheus的配置文件复制到VM文件夹下
 cp /usr/prometheus/prometheus.yml /usr/victoria-metrics/
2.编辑配置文件
vim /usr/victoria-metrics/prometheus.xml

可以直接使用prometheus的文件,有的版本可能需要注释掉部分内容

# my global config
global:scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
scrape_configs:- job_name: 'linux'static_configs:- targets: ['172.16.12.145:9100']- targets: ['172.16.12.146:9100']relabel_configs:- source_labels: ['__address__']regex: '(.*):(.*)'action: replacetarget_label: 'ip'replacement: '\${1}'
#以下内容有的版本需要注释
#remote_write:
#  - url: http://172.16.12.144:8428/api/v1/write
#    queue_config:
#      max_samples_per_send: 10000
#      capacity: 20000
#      max_shards: 30
 3.关闭prometheus
kill `pidof victoria-metrics-prod`
4.启动VM服务
nohup ./victoria-metrics-prod -retentionPeriod=30d -storageDataPath=data -promscrape.config=prometheus.yml

此时查看VM日志文件nohup 

已经运行并显示有两个监控节点

进入Gragana界面正常运行,此时VM已经彻底代替prometheus 

VM存储目录

图形界面

VM单节点版自带一个web的图形界面,叫vmui,目前还是Beta版本,功能比较简单,只能针

对当前节点执行样本数据查询

vmui已经集成在VM单节点版的二进制文件里,直接访问即可

http://172.16.12.144:8428

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/12335.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【算法】二分查找——二分查找

本节博客详述“二分查找”并且以例子来进行讨论,有需要借鉴即可。 目录 1.二分查找1.1使用前提1.2模板 2.题目3.题解代码示例4.二分查找的一般模板5.总结 1.二分查找 1.1使用前提 使用的条件:数组具有“二段性”,二段性指的是数组可以根据某…

110份财务常用excel模板(个税、采购、报销、预算),超实用!

如果你还在为报表头疼,那你一定不能错过这篇干货满满的分享! 个税报表 个人所得税,听起来就头大?别担心,掌握这些技巧,轻松搞定! - 记录员工收入,确保数据准确无误 - 计算应纳税…

【Unity Shader入门精要 第7章】基础纹理(一)

1. 纹理映射 每一张纹理可以看作拥有一个属于自己的2D坐标空间,其横轴用U表示,纵轴用V表示,因此也称为UV坐标空间。 UV空间的坐标范围为[0,0]到[1,1],在Unity中,UV空间也是从左下到右上&#…

Network Compression

听课(李宏毅老师的)笔记,方便梳理框架,以作复习之用。本节课主要讲了Network Compression,包括为什么要压缩,压缩的主要手段(pruning,knowledge distillation,parameter quantization,architect…

Elasticsearch_sql插件安装+使用

一、安装 前提是你先安装好了elasticseach,安装过程在我上一篇博客有说,可以看一下。 在elasticsearch容器启动的情况下,进入到elasticsearch容器,Elasticsearch_sql仓库,比如我的版本是8.11.2,那么我就选…

[蓝桥杯]真题讲解:抓娃娃(思维+二分)

[蓝桥杯]真题讲解&#xff1a;抓娃娃&#xff08;思维二分&#xff09; 一、视频讲解二、正解代码1、C2、python33、Java 一、视频讲解 [蓝桥杯]真题讲解&#xff1a;抓娃娃&#xff08;思维二分&#xff09;&#xff09; 二、正解代码 1、C #include<bits/stdc.h> #d…

前端CSS3基础1(新增长度单位,盒子模型,背景,边框,文本属性,渐变,字体,2D变换,3D变换)

前端CSS3基础1&#xff08;新增长度单位&#xff0c;盒子模型&#xff0c;背景&#xff0c;边框&#xff0c;文本属性&#xff0c;渐变&#xff0c;字体&#xff0c;2D变换&#xff0c;3D变换&#xff09; CSS3 新增长度单位CSS3 新增盒子模型相关属性box-sizing怪异盒模型box-…

ambari-server高可用配置方案

制品 https://kdocs.cn/l/cie4hSgvUunX 前置条件 环境需要支持VRRP协议 环境需要配置好yum源 变更影响面 变更不会影响其他组件 配置lb(需要客户侧配置并提供LB地址) 转发方式选择 主备 监听端口为8080、8440、8441 协议为tcp 后端监听选择kde-offline1为主

【RAG 论文】UPR:使用 LLM 来做检索后的 re-rank

论文&#xff1a;Improving Passage Retrieval with Zero-Shot Question Generation ⭐⭐⭐⭐ EMNLP 2022, arXiv:2204.07496 Code: github.com/DevSinghSachan/unsupervised-passage-reranking 论文&#xff1a;Open-source Large Language Models are Strong Zero-shot Query…

【HR】阿里三板斧--20240514

参考https://blog.csdn.net/haydenwang8287/article/details/113541512 头部三板斧 战略能不能落地、文化能不能得到传承、人才能不能得到保障。 头部三板斧适用的核心场景有三个&#xff1a;一是战略不靠谱&#xff1b;二是组织效率低、不聚心&#xff1b;三是人才跟不上。对…

c++ 各版本特性介绍

c C是一种高级编程语言&#xff0c;以其强大的功能、灵活性和高效性而闻名。它是由Bjarne Stroustrup在20世纪80年代初期在贝尔实验室开发的&#xff0c;作为C语言的一个扩展。C不仅包含了C语言的所有特性&#xff0c;还引入了面向对象编程&#xff08;OOP&#xff09;的概念&…

基于Vue3+ElementPlus项目,复制文字到剪贴板功能实践指南,揭秘使用js-tool-big-box工具库的核心优势

在前端开发项目中&#xff0c;很多时候有那么一个场景&#xff0c;就是要求将一段文案复制下来&#xff0c;这段文案可能是一串很长的id&#xff0c;可能是一条命令语句&#xff0c;可能是一小段文案&#xff0c;复制到剪贴板上。这样有利于用户复制到其他地方去&#xff0c;使…

微软必应bing国内官方代理商,广告账户如何开户?

微软必应Bing作为全球知名的搜索引擎之一&#xff0c;其广告平台为众多企业提供了广阔的市场空间和精准的推广机会。对于中国内地的企业而言&#xff0c;通过必应Bing开展国内广告推广不仅能够触及更广泛的潜在客户群体&#xff0c;还能有效提升品牌影响力。通过微软必应Bing国…

搜索引擎的设计与实现(三)

目录 5 系统详细实现 5.1实现环境配置 5.2功能实现 5.2.1 建立索引 5.2.2 文件搜索实现 5.2.3 数据库的连接配置 5.2.4 数据库搜索实现 5.2.5 后台数据编辑实现 前面内容请移步 搜索引擎的设计与实现&#xff08;二&#xff09; 免费源代码&毕业设计论文 搜索…

git-删除workspace.xml的跟踪

问题描述 .gitignore 文件内容如下&#xff1a; .pyc *.pyc user_files/ .vscode/ __pycache__//.idea/misc.xml /.idea/modules.xml /.idea/inspectionProfiles/profiles_settings.xml /.idea/inspectionProfiles/Project_Default.xml /.idea/batrp_webbackend-server-dev.i…

NARUTO 复现记录

1 环境配置 下载项目&#xff0c;一定要 git 下载全项目&#xff0c;下载完后要检查third_parities 里面的coslam和neural_slam_eval 文件全不全。 git clone --recursive https://github.com/oppo-us-research/NARUTO.git 环境配置 注意 bash scripts/installation/conda…

番外篇 | 利用PyQt5+YOLOv5来搭建目标检测系统(附可视化界面+功能介绍+源代码)

前言:Hello大家好,我是小哥谈。PyQt5是一个Python绑定的Qt库,是用于创建图形用户界面(GUI)和其他应用程序组件的工具包。PyQt5提供了许多GUI元素,如按钮、文本框、标签等,也提供了许多Qt的功能,如网络、数据库、XML等。通过PyQt5可以在Python中使用Qt的丰富功能和强大的工…

克服亏损的负面影响 学学现货白银止损的方法

一个多月以前&#xff0c;现货黄金的上涨还十分强劲&#xff0c;一度还逼近历史的高位30大关。但是我们看近半个月以来&#xff0c;现货白银价格出现了调整。很多在高位买入的投资者都承受了较大的亏损&#xff0c;这时候就凸显出了现货白银止损的作用。如果投资者能够通过近期…

Git 基础使用(2) 分支管理

文章目录 分支概念分支使用查看分支分支创建分支切换分支合并合并冲突分支删除 分支管理快进模式分支策略内容保存错误处理 分支概念 &#xff08;1&#xff09;分支概念 Git分支是指在版本控制系统Git中&#xff0c;用来表示项目的不同工作流程或开发路径的一个重要概念。通过…

【cmake】Windows 环境下编译第三方依赖源码(以编译Xerces库为例)

第三方依赖源码的编译分为两种&#xff0c;一种是使用 Configure 脚本编译&#xff0c;另一种是使用 CMakeLists.txt 编译。Xerces 3.2.3 的编译方式是 CMakeLists.txt 脚本编译。 必要软件&#xff1a; CMake &#xff08;CMake | Download&#xff09;Visual Studio 2019&a…