华为云云耀云服务器L实例评测|华为云上安装监控服务Prometheus三件套安装
文章目录
- 华为云云耀云服务器L实例评测|华为云上试用监控服务Prometheus
- 一、监控服务Prometheus三件套介绍
- 二、华为云主机准备
- 三、Prometheus安装
- 四、Grafana安装
- 五、alertmanager安装
- 六、三个服务的启停管理
- 1. Prometheus、Alertmanager 和 Grafana 启动顺序
- 2. 使用 supervisord 管理 Prometheus 生态组件
- 3. supervisord 配置示例demo:
华为云云耀云服务器L实例评测|华为云上试用监控服务Prometheus
一、监控服务Prometheus三件套介绍
Prometheus监控系统常见的组合方式是Prometheus + Alertmanager + Grafana,也就是所谓的Prometheus三件套。
- Prometheus:负责时间序列数据的收集、存储、查询、告警触发等功能,是监控系统的核心。
- Alertmanager:管理报警规则,对Prometheus发出的警报进行去除重复、分组、路由等处理,并发送报警通知,支持多种通知渠道。
- Grafana:一个数据可视化工具,可以查询Prometheus的数据源,并通过丰富的图表展示监控指标数据,构建dashboard。Grafana提供了强大的可视化功能。
Prometheus + Alertmanager + Grafana这种组合在监控系统中非常常见,
- 分工明确,每个组件专注做自己的事。Prometheus专注数据收集和查询,Alertmanager专注警报发送,Grafana专注可视化。
- 组件之间集成度高。Prometheus、Alertmanager和Grafana之间通过HTTP接口相连,无缝集成,很容易扩展。
Prometheus三件套是一个事实标准,组件协作性好,覆盖功能全,这也是它成为监控技术首选的重要原因。
二、华为云主机准备
- 购买华为云主机,本次评测系统如下:
2. 创建新的安全组,开发所有端口方便测试
更改安全组,如下,选择我们的开发所有端口的这个安全组:
- 开发所有端口后,我们ssh登录上华为云主机即可~
三、Prometheus安装
官方下载:https://prometheus.io/download/
wget https://github.com/prometheus/prometheus/releases/download/v2.37.9/prometheus-2.37.9.linux-amd64.tar.gz
执行以下命令解压:
tar xvfz prometheus-*.tar.gz
cd prometheus-*
在启动Prometheus之前,让我们配置它。
配置 Prometheus 来监控自己
Prometheus 通过在目标节点的 HTTP 端口上采集 metrics(遥测专用词,度量指标)来监控目标节点(以下会称为“采样目标”)。因为 Prometheus 也以相同的方式暴露自己的数据,所以他也可以采集和检查自己的健康状况。
虽然在生产实践中 Prometheus 服务器只收集自己的数据没多大作用,但是这是个不错的入门示例。保存以下基础配置到文件 prometheus.yml 中:
global:scrape_interval: 15s # By default, scrape targets every 15 seconds.# Attach these labels to any time series or alerts when communicating with# external systems (federation, remote storage, Alertmanager).external_labels:monitor: 'codelab-monitor'# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.- job_name: 'prometheus'# Override the global default and scrape targets from this job every 5 seconds.scrape_interval: 5sstatic_configs:- targets: ['localhost:9090']
完整配置选项说明,请查看配置文档(https://prometheus.io/docs/prometheus/latest/configuration/configuration/)
启动 Prometheus
# Start Prometheus.
# By default, Prometheus stores its database in ./data (flag --storage.tsdb.path).
./prometheus --config.file=prometheus.yml
此时 Prometheus 应该启动了。你应该也可以通过浏览器打开状态页面localhost:9090.
You can also verify that Prometheus is serving metrics about itself by navigating to its metrics endpoint: localhost:9090/metrics
这里给大家再给一个常用参数,-storage.tsdb.path
可以指定存储位置
示例demo:
/elkeid/prometheus/prometheus-2.31.1.linux-amd64/prometheus --config.file /elkeid/prometheus/prometheus.yml --storage.tsdb.path /elkeid/prometheus/
四、Grafana安装
参考官网说明,进行安装。
官网下线Grafana
Grafana提供强大的监控数据可视化功能。
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-10.1.1.linux-amd64.tar.gz
tar -zxvf grafana-enterprise-10.1.1.linux-amd64.tar.gz
注意:第一次登录需要更改密码
http://127.0.0.1:3000/login
默认情况下,Grafana将在http://localhost:3000.上监听**。默认登录是"admin" / “admin”
五、alertmanager安装
官方下载地址:https://prometheus.io/download/
Alertmanager管理Prometheus生成的警报,支持语音、邮件、微信等多种警报通知方式。
Alertmanager是Prometheus监控系统中一个非常重要的组件。它负责处理监控数据发生异常时的告警信息,支持丰富的告警策略和告警通知方式。Alertmanager的配置可以非常灵活地满足不同场景的告警需求。
可以使用wget在github下载安装包
wget https://github.com/prometheus/alertmanager/releases/download/v0.26.0/alertmanager-0.26.0.linux-amd64.tar.gz
Alertmanager可以作为一个单独的进程运行,也可以和Prometheus一起部署。Alertmanager支持容器化部署方式,可以使用Docker等工具进行部署。部署Alertmanager需要将配置文件放置在特定的路径下,并启动Alertmanager进程。
Alertmanager默认监听9093端口,需要保证该端口在防火墙中开放。启动Alertmanager进程的命令如下:
./alertmanager --config.file=alertmanager.yml
六、三个服务的启停管理
1. Prometheus、Alertmanager 和 Grafana 启动顺序
Prometheus、Alertmanager 和 Grafana 这三个服务之间存在一定的启动顺序依赖关系:
- Prometheus 需要先启动,因为 Alertmanager 和 Grafana 都依赖 Prometheus 提供的数据源。
- Alertmanager 需要在 Prometheus 启动后再开始启动,因为它需要实时接收和处理 Prometheus 发送过来的警报。
- Grafana 最好在 Prometheus 和 Alertmanager 启动完成后再启动,因为它需要使用 Prometheus 提供的指标数据和 Alertmanager 提供的警报状态来展示监控信息。
推荐的启动顺序是:
- Prometheus
- Alertmanager
- Grafana
2. 使用 supervisord 管理 Prometheus 生态组件
使用 supervisord 管理 Prometheus 生态组件是一个常见的方案。
使用 supervisord 来管理 Prometheus、Alertmanager 和 Grafana 是一个不错的选择,也是很多人采用的方案。supervisord 是一个进程控制系统,可以很方便地管理和监控进程。使用它来管理这三个组件的主要好处有:
1. 可以统一管理,通过 supervisord 控制组件的启动、停止。
2. 支持进程自动重启,KEEPALIVE 机制让进程异常退出后能自动重启。
3. 可以通过 web UI 界面查看管理进程的运行状态、日志等信息。
4. 配置简单,supervisord 使用 INI 格式的配置文件,方便设置进程的运行参数。
5. 支持日志管理,可以将进程日志输出到 supervisord,方便统一查看。
6. 资源占用少,supervisord 自己轻量级,对系统影响很小。所以使用 supervisord 来管理 Prometheus 生态组件是一个稳定、高效的方案,也被许多用户采用,可以很好地简化组件的启停、监控和日志管理等工作。当然,也可以考虑使用 systemd 等其它进程管理工具。
3. supervisord 配置示例demo:
Prometheus、Alertmanager 和 Grafana 这三个服务
在 Supervisor 中可以通过以下方式来配置这个顺序:
- 把 Prometheus 放在配置文件的最前面
- 给 Prometheus 设置较高的 priority 值
这样可以确保 Prometheus 先启动,Alertmanager 在 Prometheus 可用后启动,Grafana 再在 Alertmanager 准备就绪后启动。
[program:prometheus]
command=/opt/lighthouse/server/env/prometheus/prometheus --config.file=/opt/lighthouse/server/env/prometheus/prometheus.yml
autorestart=true
autostart=true
user=www_lighthouse
priority=10
stdout_logfile=/opt/lighthouse/server/logs/supervisor/prometheus.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10[program:alertmanager]
command=/opt/lighthouse/server/env/alertmanager/alertmanager --config.file=/opt/lighthouse/server/env/alertmanager/alertmanager.yml
autorestart=true
autostart=true
user=www_lighthouse
priority=5
stdout_logfile=/opt/lighthouse/server/logs/supervisor/alertmanager.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10[program:grafana]
command=/opt/lighthouse/server/env/grafana/bin/grafana-server -config=/opt/lighthouse/server/env/grafana/conf/grafana.ini
autorestart=true
autostart=true
user=www_lighthouse
priority=1
# environment=HOME="/usr/share/grafana", USER="grafana"
stdout_logfile=/opt/lighthouse/server/logs/supervisor/grafana.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
相关文章:
华为云云耀云服务器L实例评测|华为云上安装监控服务Prometheus三件套安装
文章目录 华为云云耀云服务器L实例评测|华为云上试用监控服务Prometheus一、监控服务Prometheus三件套介绍二、华为云主机准备三、Prometheus安装四、Grafana安装五、alertmanager安装六、三个服务的启停管理1. Prometheus、Alertmanager 和 Grafana 启动顺序2. 使用…...
C语言基础知识点(八)联合体和大小端模式
以下程序的输出是() union myun {struct { int x, y, z;} u;int k; } a; int main() {a.u.x 4;a.u.y 5;a.u.z 6;a.k 0;printf("%d\n", a.u.x); } 小端模式 数据的低位放在低地址空间,数据的高位放在高地址空间 简记ÿ…...
一个线程运行时发生异常会怎样?
如果一个线程在运行时发生异常而没有被捕获(即未被适当的异常处理代码处理),则会导致以下几种情况之一: 线程终止:线程会立即终止其执行,并将异常信息打印到标准错误输出(System.err)。这通常包括异常的类型、堆栈跟踪信息以及异常消息。 ThreadDeath 异常:在某些情况…...
CSS中去掉li前面的圆点方法
1. 引言 在网页开发中,我们经常会使用无序列表(<ul>)来展示一系列的项目。默认情况下,每个列表项(<li>)前面都会有一个圆点作为标记。然而,在某些情况下,我们可能希望去…...
Python:获取当前目录下所有文件夹名称及文件夹下所有文件名称
获取当前目录下所有文件夹名称 def get_group_list(folder_path):group_list []for root, dirs, files in os.walk(folder_path):for dir in dirs:group_list.append(dir)return group_list获取文件夹下所有文件名称 def get_file_list(folder_path, group_name):file_list …...
系统架构设计师-数据库系统(1)
目录 一、数据库模式 1、集中式数据库 2、分布式数据库 二、数据库设计过程 1、E-R模型 2、概念结构设计 3、逻辑结构设计 三、关系代数 1、并交差 2、投影和选择 3、笛卡尔积 4、自然连接 一、数据库模式 1、集中式数据库 三级模式: (1)外…...
Docker的相关知识介绍以及mac环境的安装
一、什么是Docker 大型项目组件较多,运行环境也较为复杂,部署时会碰到一些问题: 依赖关系复杂,容易出现兼容性问题开发、测试、生产环境有差异 Docker就是来解决这些问题的。Docker是一个快速交付应用、运行应用的技术&#x…...
Android设计支持库
本文所有的代码均存于 https://github.com/MADMAX110/BitsandPizzas 设计支持库(Design Support Library)是 Google 在 2015 年的 I/O 大会上发布的全新 Material Design 支持库,在这个 support 库里面主要包含了 8 个新的 Material Design …...
【Java 基础篇】Java实现文件搜索详解
文件搜索是计算机应用中的一个常见任务,它允许用户查找特定文件或目录,以便更轻松地管理文件系统中的内容。在Java中,您可以使用各种方法来实现文件搜索。本文将详细介绍如何使用Java编写文件搜索功能,以及一些相关的内容。 文件…...
会C++还需要再去学Python吗?
提到的C、数据结构与算法、操作系统、计算机网络和数据库技术等确实是计算机科学中非常重要的基础知识领域,对于软件开发和计算机工程师来说,它们是必备的核心知识。掌握这些知识对于开发高性能、可靠和安全的应用程序非常重要。Python作为一种脚本语言&…...
vue部分/所有内容全屏切换展示
需求:就是把一个页面的某一部分内容点击全屏操作按钮后全屏展示,并非所有内容全屏,所有内容的话那肯定就所有全屏展示啊,可以做切换 1.部分全屏代码 element.requestFullscreen();这个就是全屏的代码了,注意前面的ele…...
8.gec6818开发板通过并发多线程实现电子相册 智能家居 小游戏三合一完整项目
并发 前面编写的程序都是从mian函数开始,从上往下执行,称为顺序执行 假设一个程序需要I输入 C计算 P输出,以顺序执行三个上述程序,则其执行过程如下: 程序内部的语句是一条一条的执行,如果要运行多个程序…...
角度回归——角度编码方式
文章目录 1.为什么研究角度的编码方式?1.1 角度本身具有周期性1.2 深度学习的损失函数因为角度本身的周期性,在周期性的点上可能产生很大的Loss,造成训练不稳定1.3 那么如何处理边界问题呢:(以θ的边界问题为例&#x…...
【C# Programming】值类型、良构类型
值类型 1、值类型 值类型的变量直接包含值。换言之, 变量引用的位置就是值内存中实际存储的位置。 2、引用类型 引用类型的变量存储的是对一个对象实例的引用(通常为内存地址)。 复制引用类型的值时,复制的只是引用。这个引用非常小…...
Linux Day18 TCP_UDP协议及相关知识
一、网络基础概念 1.1 网络 网络是由若干结点和连接这些结点的链路组成,网络中的结点可以是计算机,交换机、 路由器等设备。 1.2 互联网 把多个网络连接起来就构成了互联网。目前最大的互联网就是因特网。 网络设备有:交换机、路由器、…...
【Java 基础篇】Java网络编程实时数据流处理
在现代计算机应用程序中,处理实时数据流是一项关键任务。这种数据流可以是来自传感器、网络、文件或其他源头的数据,需要即时处理并做出相应的决策。Java提供了强大的网络编程工具和库,可以用于处理实时数据流。本文将详细介绍如何使用Java进…...
Oracle 和 mysql 增加字段SQL
在Oracle和MySQL中,可以使用ALTER TABLE语句来增加字段。下面是分别是两种数据库增加字段的SQL示例: 在Oracle中增加字段的SQL示例: ALTER TABLE 表名ADD (新字段名 数据类型);例如,如果要在名为"employees"的表中添加…...
【脚本】 【Linux】循环执行命令
loop.sh #!/bin/bashif [ "" "$1" ]; thenecho 用法: ./loop.sh 命令内容 时间间隔(毫秒) 循环次数(小于0表示无限循环)echo 示例: ./loop.sh "ps -ef" 1000 10exit 0 fiinterval1000 if [ "" ! "$2" ]; thenif echo &quo…...
快速用Python进行数据分析技巧详解
概要 一些小提示和小技巧可能是非常有用的,特别是在编程领域。有时候使用一点点黑客技术,既可以节省时间,还可能挽救“生命”。 一个小小的快捷方式或附加组件有时真是天赐之物,并且可以成为真正的生产力助推器。所以࿰…...
BD就业复习第二天
Hbase 1. 架构 HBase(Hadoop Database)是一个开源的分布式、面向列族(Column Family)的NoSQL数据库,它是构建在Hadoop之上的。HBase的架构设计旨在处理大规模的数据,特别适用于需要快速读写和随机访问大量…...
大数据Flink(八十五):Window TVF 支持多维数据分析
文章目录 Window TVF 支持多维数据分析 一、Grouping Sets 二、Rollup...
css-边框原理教程
1. CSS中边框原理 他不是一条直线,根据盒子原理,当边框宽度大于元素的长和宽时,呈现一个梯形和三角形的形状,用如下的代码来实地理解一下边框画法实现的原理 注:学习网址: CSS画几种图形的方法_css画图_老…...
【数据结构】时间、空间复杂度
⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈数据结构 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 时间、空间复杂度 1. 算法效率3. 时…...
Databend 开源周报第 111 期
Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 理解 SHARE END…...
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
文章目录 一、环境准备二、基础软件三、扩展:usb拓展插件 一、环境准备 1、下载VMware虚拟机的壳子,安装并注册软件(可以百度注册码),最新版本:v17 2、下MacOS系统iOS镜像文件,用于vmware虚拟机安装,当前镜…...
vue3 - Vue 项目处理GitHub Pages 部署后 _plugin-vue_export-helper.js 404
GitHub Demo 地址 在线预览 vue3项目打包后部署到github pages 后,预览网站提示下划线开头的一个文件_plugin-vue_export-helper访问不到,网络请求显示404 处理GitHub Pages 部署 _plugin-vue_export-helper.js 404 https://github.com/rollup/rollup/b…...
一百八十一、Hive——海豚调度HiveSQL任务时当Hive的计算引擎是mr或spark时脚本的区别(踩坑,附截图)
一、目的 当Hive的计算引擎是spark或mr时,发现海豚调度HQL任务的脚本并不同,mr更简洁 二、Hive的计算引擎是Spark时 (一)海豚调度脚本 #! /bin/bash source /etc/profile nowdatedate --date0 days ago "%Y%m%d" y…...
Linux 隔离网段下端口转发
设备在隔离网段下,设置端口转发。使A设备可访问C设备的服务 #!/bin/bash #输出成绩脚本 echo -n "请输入外网服务器的IP地址:" read score sudo iptables -t nat -A PREROUTING -p tcp --dport 1883 -j DNAT --to-destination $score:1883 s…...
【CDN和UDN】CDN和UDN技术特点以及使用场景
内容分发网络(CDN)和用户自定义网络(UDN)是两种不同的网络技术,在选择时,往往不能准备把握具不同的技术特点和应用场景。CDN 主要用于加速内容分发,而 UDN 则主要用于支持用户自定义的网络需求。…...
【Linux】改变缓存路径、清理缓存
写在前面 在做项目的过程中,服务器base路径下空间不足,准备在另一个目录下创建虚拟环境,但在安装的过程中,发现base路径下的空间还是在减少,后来经过学习了解到,pip安装下载依赖包时,会先下载缓…...
安徽茶叶学会 网站建设/东莞外贸推广公司
使用Cartool工具包分析EEG源成像1 基本要求1.1 EEG预处理 (EEG Pre-processing)1.2 时间过滤 (Temporal Filtering)1.3 下采样(降低采样率) (Down-Sampling)1.4 电极插值与ICA (Electrode Interpolation and ICA)1.5 空间过滤 (Spatial Filtering)1.6 检…...
钓鱼网站教程/河南网站建设制作
1.关系型数据库简单的可以理解为二维数据库,表的格式就如Excel,有行有列。常用的关系数据库有Oracle,SqlServer,Informix,MySql,SyBase等。(也即是我们平时看到的数据库,都是关系型数…...
湖南城乡建设厅网站/aso优化的主要内容为
所有被盗过号的 游戏玩家,都对黑客咬牙切齿,他让你损失的不仅是一个帐号,更是一套顶级装备,365天黑天摸地的练级,甚至是游戏中的荣耀。 游戏黑客究竟是什么样的神秘人物,又是如何把你的帐号盗走,…...
网站做跳转的意义/企业网络营销系统分析报告
sina33打开spidev0.0的步骤.txt (全志a33下生成设备节点/dev/spidev0.0)0、S:\lichee\tools\pack\chips\sun8iw5p1\configs\default\env.cfg bootdelay0修改为bootdelay3方便按 enter 进u-boot,进行调试。1、rootrootrootroot-E400:~/wyb/sin…...
网站闭站保护/seo关键词排名网络公司
1. 马哈鱼数据血缘分析工具简介 马哈鱼数据血缘分析工具(英文名称为 Gudu SQLFlow )是一款用于分析 SQL 语句,并发现其中数据血缘关系的分析软件,经常和元数据管理工具一起使用,是企业数据治理的基础工具。 如果你对 …...
静态网站/最新国际新闻10条
目录1. Undefined2. null3. Boolean4. String5. Number6. Symbol7. Object8. StringToNumber9. 装箱转换10. 封箱转换JavaScript 语言规定了七种语言类型。语言类型广泛用于变量、函数参数、表达式、函数返回值等场合。根据最新的语言标准,这 7 种语言类型是&#x…...