当前位置: 首页 > news >正文

Linux tar包安装 Prometheus 和 Grafana(知识点:systemd Unit/重定向)

0. 介绍

用tar包的方式安装 Prometheus 和 Grafana

  • Prometheus:开源的监控方案
  • Grafana:将Prometheus的数据可视化平台

Prometheus已经有了查询功能为什么还需要grafana呢?Prometheus基于promQL这一SQL方言,有一定门槛!Grafana基于浏览器的操作与可视化图表大大降低了理解难度


1. Prometheus

1. 下载 与 解压
  • 官网下载: https://prometheus.io/download/#prometheus
  • 上传至机器
  • 解压命令:tar -xzf prometheus-*.tar.gz
2. 启动与暂停
  • 进入解压后的文件夹:cd prometheus-*
    ll命令可以发现可执行文件 prometheus 和 prometheus.yml ,分别是启动文件和配置文件

启动prometheus我们可以编写systemd unit 服务,也可以直接nohup &直接挂起

2.1 挂起后台启动:

nohup ./prometheus --config.file=prometheus.yml --web.enable-admin-api --web.enable-lifecycle > nohup.out 2>&1 &

  • –web.enable-admin-api: 开启API服务,为下个参数动态加载配置打基础
  • –web.enable-lifecycle : 这个配置后,可以动态加载配置文件而无需重启prometheus,具体命令是 curl -X POST Prometheus所在机器ip:Prometheus监控的端口/-/reload
  • 2>&1 :标准错误输出重定向标准输出, &>filename 可以实现也是一样的效果.2>&1 是旧shell写法兼容性更高点
  • nohup …&:
    • & 只是将命令置于后台,但是命令仍与终端窗口关联.导致默认情况下,命令的标准输出和标准错误输出仍然连接到终端;
    • nohup 将命令放入后台运行,并且它会将命令的标准输出和标准错误输出重定向到一个名为 nohup.out 的文件中,这样即使你关闭终端,命令也会继续运行,并且输出会写入到 nohup.out 文件中。
    • 看起来nohup拥有了 &的效果,为什么还用&?一方面是 &比nohup更兼容 另一方面是 单独nohup后,你需要手动 ctrl+z 将命令挂起, 配合 &可以马上放入后台运行~

ps -ef|grep prometheus 命令可以查看prometheus进程信息

2.2 systemd service 启动

创建prometheus.service 文件,不熟悉systemd定时器可以去看看阮老大文章Systemd 定时器教程
,这里我的prometheus 在/opt下,各位注意换成自己的路径

[Unit]
Description=Prometheus
After=network.target
[Service]
Type=simple
ExecStart=/opt/prometheus/prometheus --config.file=/opt/prometheus.yml --web.enable-admin-api --web.enable-lifecycle
Restart=on-failure 
[Install]
WantedBy=multi-user.target

将上述文件保存到 /etc/systemd/system 目录后,输入下列命令

#1.加载系统服务
sudo systemctl daemon-reload
#2.启动服务
sudo systemctl start prometheus.service
#3.设置为系统自启动
sudo systemctl enable prometheus.service
#4 .查看状态
sudo systemctl status prometheus.service

  • Type=simple:该服务是个简单基本的服务,一旦启动命令被执行,systemd 将认为服务已经启动完成,不会监视服务进程的运行状态或退出。对于启动后会一直运行的服务(如守护进程)非常适用,因为它们会在后台运行而不会立即退出。
  • Restart:指定服务在失败或退出后是否自动重启.no/always/on-failure(非零退出代码(失败)退出时)/on-abnormal(服务以异常退出时(如由信号终止))

下面是systemd其他常用命令

停止服务
sudo systemctl stop prometheus.service
关闭自启动
sudo systemctl disable prometheus.service

3. web查看

浏览器 打开 Prometheus所在机器ip:9090 (默认端口9090)

4. 修改配置文件yml

先说两个辅助命令:

  1. Prometheus 根目录下自带了一个 检查配置文件是否正确的小工具 promtool,
    使用语法:

    ./promtool check config prometheus.yml

  2. 之前启动命令配置了 热启动(enable-lifestyle),所以我们可以通过命令热更新配置文件无需重启整个Prometheus

    curl -X POST ip:port/-/reload


2. Grafana

Grafana 和 Prometheus安装步骤类似,官网文档 https://grafana.com/docs/grafana/latest

2.1 下载 和安装
  • 下载页: https://grafana.com/grafana/download
  • 上传至目标机器
  • tar -xzvf XX.tar.gz
2.2 启动和停止服务

grafana的启动脚本在 根目录下的bin文件夹,叫 grafana-server
启动,这里只写了nohup命令,systemd 的server文件参考上面的Prometheus的

nohup ./bin/grafana-server 2>&1 &

停止服务,nohup就kill 掉,systemd 就 systemctl stop xx.service

3. web查看

浏览器 打开 grafana安装机器ip:3000 (默认端口3000),第一次登录用户/密码均是 admin,之后按提示更改密码即可

4. grafana配置文件修改

待补充

5. grafana模板

grafana 模板可以在 https://grafana.com/grafana/dashboards/ 寻找,
之后在grafana左侧sidebar的dashboards->import 面板导入使用


3.现在的不足

我们现在有了Prometheus 和Grafana~

但是Prometheus去哪里抓取数据呢?(Prometheus是pull模型)因此有了各种各样的export用于对主机进行数据刮削,需要在被监控的主机中按需按照export

现在的链路是 export(刮削数据)->Prometheus主动抓取export(export注册发现?配置在Prometheus的配置文件中)->grafana(导入Prometheus数据源后即可展示)

现在还缺什么?告警组件,监控平台除开数据的展示外,另一个重要的功能就是当某些数据达到阈值后进行主动告警!

Prometheus生态下的告警组件是 alertmanager,但是不包含Prometheus中,需要你额外安装配置,prometheus server获取监控指标,基于这些指标定义规则(rules),若这些指标满足告警规则便将信息推送到Alertmanager

alert manager的编写阈值规则稍微有些复杂,但是有 https://samber.github.io/awesome-prometheus-alerts/rules.html 这样的前人分析了规则供我们借鉴的网站,所以还好

grafana web界面也可以配置alert,但是没研究过

上述介绍就放到后续文章中吧!

相关文章:

Linux tar包安装 Prometheus 和 Grafana(知识点:systemd Unit/重定向)

0. 介绍 用tar包的方式安装 Prometheus 和 Grafana Prometheus:开源的监控方案Grafana:将Prometheus的数据可视化平台 Prometheus已经有了查询功能为什么还需要grafana呢?Prometheus基于promQL这一SQL方言,有一定门槛!Grafana基于浏览器的操作与可视化图表大大降低了理解难…...

【Vue框架】用户和请求

前言 在上一篇 【Vue框架】Vuex状态管理 针对Vuex状态管理以getters.js进行说明,没有对其中state引入的对象进行详细介绍,因为整体都比较简单,也就不对全部做详细介绍了;但其中的user.js涉及到获取用户的信息、前后端请求的token…...

NGINX组件(rewrite)

一、location匹配的规则和优先级(*) URI:统一资源标识符,是一种字符串标识,用于标识抽象的或者是物理资源;如:文件、图片、视频等 nginx中的URI匹配的是:网址”/“后的路径 如&…...

网页显示摄像头数据的方法---基于web video server

1. 背景: 在ros系统中有发布摄像头的相关驱动rgb数据,需求端需要将rgb数据可以直接在网页上去显示。 问题解决: web_video_server功能包,相关链接: web_video_server - ROS Wiki 2. 下载,安装和编译&a…...

SIFT 算法 | 如何在 Python 中使用 SIFT 进行图像匹配

介绍 人类通过记忆和理解来识别物体、人和图像。你看到某件事的次数越多,你就越容易记住它。此外,每当一个图像在你的脑海中弹出时,它就会将该项目或图像与一堆相关的图像或事物联系起来。如果我告诉你我们可以使用一种称为 SIFT 算法的技术来教机器做同样的事情呢? 尽管…...

K8S系列四:服务管理

写在前面 本文是K8S系列第四篇,主要面向对k8s新手同学。阅读本文需要读者对k8s的基本概念,比如Pod、Deployment、Service、Namespace等基础概念有所了解,尚且不了解的同学推荐先阅读本系列的第一篇文章《K8S系列一:概念入门》[1]…...

冠达管理:融券卖出交易规则?

融券卖出买卖是指投资者在没有实际持有某只股票的情况下,经过借入该股票并卖出来取得赢利的一种股票买卖方式。融券卖出买卖规矩针对不同市场、不同证券公司之间可能会存在一些差异,但基本的规矩包含如下几个方面。 一、融资融券的资历要求 在进行融券卖…...

图像变形之移动最小二乘算法(MLS)

基本原理 基于移动最小二乘的图像变形是通过一组源控制点和目标控制点来控制变形,对于每一个待求变形后位置的点而言,根据预设的形变类型(如仿射变换、相似变换、刚性变换)求解一个最小二乘优化目标函数估计一个局部的坐标变换矩阵…...

搭建一个功能齐全的网站

搭建一个功能齐全的网站,需要准备和掌握的一些关键技术和功能可概括如下: 前端技术: HTML/CSS - 网页内容结构和样式JavaScript - 实现网页交互功能前端框架(Vue、React等) - 更高效开发交互页面响应式设计 - 网站适配移动端 后端技术: 服务器(Linux、Nginx等) - 提供网站访…...

Java-jar和war包的区别

jar包和war包的区别: 1、war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块;jar一般只是包括一些class文件,在声明了Main_class之后是可以用java命令运行的。 2、war包是做好一个web应用后,通…...

分类预测 | MATLAB实现CNN-BiGRU-Attention多输入分类预测

分类预测 | MATLAB实现CNN-BiGRU-Attention多输入单输出分类预测 目录 分类预测 | MATLAB实现CNN-BiGRU-Attention多输入单输出分类预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 Matlab实现CNN-BiGRU-Attention多特征分类预测,卷积双向门控循环…...

C#小轮子:Visual Studio自动编译Sass文件

文章目录 前言插件安装插件使用compilerconfig.jsonsass输入和css输出(自动生成)默认配置(我不懂就不去动他了) 解决Blazor热重载Bug 前言 我们知道css文件用起来太麻烦,如果样式一多,嵌套起来用css样式就…...

iOS字体像素与磅的对应关系

注意:低于iOS10的系统,显示的字宽和字高比高于iOS10的系统小。 这就是iOS10系统发布时,很多app显示的内容后面出现…,因而出现很多app为了适配iOS10系统而重新发布新版本。 用PS设计的iOS效果图中,字体是以像素&#x…...

阿里云ACP知识点

前言:记录ACP错题 1、在创建阿里云ECS时,每台服务器必须要包含_______用来存储操作系统和核心配置。 系统盘(不是实例,实例是一个虚拟的计算环境,由CPU、内存、系统盘和运行的操作系统组成;ESC实例作为云…...

小视频AI智能分析系统解决方案

2022下半年一个项目,我司研发一个基于接收小视频录像文件和图片进行算法分析抓拍的系统,整理了一下主要思想如下: 采用C开发一个AI识别服务,该服务具有如下功能: 创建各类算法模型服务引擎池,每类池内可加载多个模型…...

简单谈谈 EMP-SSL:自监督对比学习的一种极简主义风

论文链接:https://arxiv.org/pdf/2304.03977.pdf 代码:https://github.com/tsb0601/EMP-SSL 其他学习链接:突破自监督学习效率极限!马毅、LeCun联合发布EMP-SSL:无需花哨trick,30个epoch即可实现SOTA 主要…...

nginx的负载均衡

nginx的负载均衡 文章目录 nginx的负载均衡1.以多台虚拟机作服务器1.1 在不同的虚拟机上安装httpd服务1.2 在不同虚拟机所构建的服务端的默认路径下创建不同标识的文件1.3 使用windows本机的浏览器分别访问3台服务器的地址 2.在新的一台虚拟机上配置nginx实现反向代理以及负载均…...

linux系统服务学习(四)Linux系统下数据同步服务RSYNC

文章目录 Linux系统下数据同步服务RSYNC一、RSYNC概述1、什么是rsyncrsync的好姐妹数据同步过程 2、rsync特点3、rsync与scp的区别 二、RSYNC的使用1、基本语法2、本地文件同步3、远程文件同步思考:4、rsync作为系统服务Linux系统服务的思路: 三、任务解…...

走进 Linux

一、开关机 开机: 开机会启动许多程序。他们在windows叫做“服务”(service),在Linux就叫做“守护进程”(daemon)开机成功后,它会显示一个文本登录界面, 这个界面就是我们经常看到的登录界面,在这个登录界…...

Docker高级——Docker Swarm集群和部署应用

创建 Swarm 集群 初始化管理节点 [rootk8s-master ~]# docker swarm init --advertise-addr 192.168.192.133 Swarm initialized: current node (vy95txqo3pglh478e4qew1h28) is now a manager.To add a worker to this swarm, run the following command:docker swarm join …...

7.4.分块查找

一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案

一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

使用 SymPy 进行向量和矩阵的高级操作

在科学计算和工程领域&#xff0c;向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能&#xff0c;能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作&#xff0c;并通过具体…...