Nacos 监控手册

Nacos 0.8.0版本完善了监控系统,支持通过暴露metrics数据接入第三方监控系统监控Nacos运行状态,目前支持prometheus、elastic search和influxdb,下面结合prometheus和grafana如何监控Nacos。与elastic search和influxdb结合可自己查找相关资料

搭建Nacos集群暴露metrics数据

配置application.properties文件,暴露metrics数据

management.endpoints.web.exposure.include=*

访问{ip}:8848/nacos/actuator/prometheus,看是否能访问到metrics数据

搭建prometheus采集Nacos metrics数据

下载你想安装的prometheus版本,地址为download prometheus

linux & mac

解压prometheus压缩包

tar xvfz prometheus-*.tar.gz
cd prometheus-*

修改配置文件prometheus.yml采集Nacos metrics数据

    metrics_path: '/nacos/actuator/prometheus'static_configs:- targets: ['{ip1}:8848','{ip2}:8848','{ip3}:8848']

启动prometheus服务

./prometheus --config.file="prometheus.yml"

windows

下载对应的windows版本并解压

修改配置文件prometheus.yml采集Nacos metrics数据

    metrics_path: '/nacos/actuator/prometheus'static_configs:- targets: ['{ip1}:8848','{ip2}:8848','{ip3}:8848']

启动prometheus服务

prometheus.exe --config.file=prometheus.yml

通过访问http://{ip}:9090/graph可以看到prometheus的采集数据,在搜索栏搜索nacos_monitor可以搜索到Nacos数据说明采集数据成功 

IMAGE

搭建grafana图形化展示metrics数据

和prometheus在同一台机器上安装grafana,使用 yum 安装grafana

mac

brew install grafana
brew services start grafana

linux

sudo yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.4-1.x86_64.rpm
sudo service grafana-server start

windows

参考文档:Install Grafana on Windows | Grafana documentation

访问grafana: http://{ip}:3000

配置prometheus数据源 

IMAGE

导入Nacos grafana监控模版 

IMAGE

Nacos监控分为三个模块:

  • nacos monitor展示核心监控项 

    IMAGE

  • nacos detail展示指标的变化曲线 

    IMAGE

  • nacos alert为告警项 

    IMAGE

配置grafana告警

当Nacos运行出现问题时,需要grafana告警通知相关负责人。grafana支持多种告警方式,常用的有邮件,钉钉和webhook方式

钉钉告警

钉钉可以通过配置钉钉机器人 

IMAGE

配置钉钉通知url 

IMAGE

测试告警项 

IMAGE

邮件告警

修改defaults.ini配置文件,增加邮件告警

#################################### SMTP / Emailing ##########################
[smtp]
enabled = true
host = smtp.126.com:25
user = xxxxxx
password = xxxxx
;cert_file =
;key_file =
skip_verify = true
from_address = xxxxxx@126.com[emails]
;welcome_email_on_sign_up = false

配置通知邮箱 

IMAGE

Nacos metrics含义

jvm metrics

指标含义
system_cpu_usageCPU使用率
system_load_average_1mload
jvm_memory_used_bytes内存使用字节,包含各种内存区
jvm_memory_max_bytes内存最大字节,包含各种内存区
jvm_gc_pause_seconds_countgc次数,包含各种gc
jvm_gc_pause_seconds_sumgc耗时,包含各种gc
jvm_threads_daemon线程数

Nacos 监控指标

指标含义
http_server_requests_seconds_counthttp请求次数,包括多种(url,方法,code)
http_server_requests_seconds_sumhttp请求总耗时,包括多种(url,方法,code)
nacos_timer_seconds_sumNacos config水平通知耗时
nacos_timer_seconds_countNacos config水平通知次数
nacos_monitor{name='longPolling'}Nacos config长连接数
nacos_monitor{name='configCount'}Nacos config配置个数
nacos_monitor{name='dumpTask'}Nacos config配置落盘任务堆积数
nacos_monitor{name='notifyTask'}Nacos config配置水平通知任务堆积数
nacos_monitor{name='getConfig'}Nacos config读配置统计数
nacos_monitor{name='publish'}Nacos config写配置统计数
nacos_monitor{name='ipCount'}Nacos naming ip个数
nacos_monitor{name='domCount'}Nacos naming域名个数(1.x 版本)
nacos_monitor{name='serviceCount'}Nacos naming域名个数(2.x 版本)
nacos_monitor{name='failedPush'}Nacos naming推送失败数
nacos_monitor{name='avgPushCost'}Nacos naming平均推送耗时
nacos_monitor{name='leaderStatus'}Nacos naming角色状态
nacos_monitor{name='maxPushCost'}Nacos naming最大推送耗时
nacos_monitor{name='mysqlhealthCheck'}Nacos naming mysql健康检查次数
nacos_monitor{name='httpHealthCheck'}Nacos naming http健康检查次数
nacos_monitor{name='tcpHealthCheck'}Nacos naming tcp健康检查次数

nacos 异常指标

指标含义
nacos_exception_total{name='db'}数据库异常
nacos_exception_total{name='configNotify'}Nacos config水平通知失败
nacos_exception_total{name='unhealth'}Nacos config server之间健康检查异常
nacos_exception_total{name='disk'}Nacos naming写磁盘异常
nacos_exception_total{name='leaderSendBeatFailed'}Nacos naming leader发送心跳异常
nacos_exception_total{name='illegalArgument'}请求参数不合法
nacos_exception_total{name='nacos'}Nacos请求响应内部错误异常(读写失败,没权限,参数错误)

client metrics

指标含义
nacos_monitor{name='subServiceCount'}订阅的服务数
nacos_monitor{name='pubServiceCount'}发布的服务数
nacos_monitor{name='configListenSize'}监听的配置数
nacos_client_request_seconds_count请求的次数,包括多种(url,方法,code)
nacos_client_request_seconds_sum请求的总耗时,包括多种(url,方法,code)

Nacos-Sync监控

随着Nacos 0.9版本发布,Nacos-Sync 0.3版本支持了metrics监控,能通过metrics数据观察Nacos-Sync服务的运行状态,提升了Nacos-Sync的在生产环境的监控能力。 整体的监控体系的搭建参考Nacos监控手册

grafana监控Nacos-Sync

和Nacos监控一样,Nacos-Sync也提供了监控模版,导入监控模版

Nacos-Sync监控同样也分为三个模块:

  • nacos-sync monitor展示核心监控项 

    monitor

  • nacos-sync detail和alert展示监控曲线和告警 

    detail

Nacos-Sync metrics含义

Nacos-Sync的metrics分为jvm层和应用层

jvm metrics

指标含义
system_cpu_usageCPU使用率
system_load_average_1mload
jvm_memory_used_bytes内存使用字节,包含各种内存区
jvm_memory_max_bytes内存最大字节,包含各种内存区
jvm_gc_pause_seconds_countgc次数,包含各种gc
jvm_gc_pause_seconds_sumgc耗时,包含各种gc
jvm_threads_daemon线程数

应用层 metrics

指标含义
nacosSync_task_size同步任务数
nacosSync_cluster_size集群数
nacosSync_add_task_rt同步任务执行耗时
nacosSync_delete_task_rt删除任务耗时
nacosSync_dispatcher_task从数据库中分发任务
nacosSync_sync_task_error所有同步执行时的异常

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

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

相关文章

sqlsugar批量插入数据

表模型 /// <summary> /// 当和数据库名称不一样可以设置表别名 指定表明 /// </summary> [SugarTable("dbstudent")] public class Student {/// <summary>/// 数据库是自增才配自增 /// </summary>[SugarColumn(IsPrimaryKey true, IsId…

前端技术(16) : 插件集合

1.粘贴板 参考 https://www.cnblogs.com/wyhlightstar/p/8950430.html 安装 npm install --save vue-clipboard2main.js添加 import VueClipboard from vue-clipboard2 Vue.use(VueClipboard) 使用(复制字段为"time5") <el-button class"ml10" t…

css如何实现页面布局与五种实现方式

CSS布局实现的主要方式有以下几种&#xff1a; 一、盒模型布局&#xff1a;CSS中&#xff0c;每个元素都是一个盒子&#xff0c;包括内容、内边距、边框和外边距。通过设置盒子的属性&#xff08;如宽度、高度、内边距、边框、定位等&#xff09;&#xff0c;可以实现不同的布…

开发者指南:如何集成一对一直播美颜SDK到你的应用中

本文将为开发者们提供一个详细的指南&#xff0c;教你如何将一对一直播美颜SDK集成到你的应用中&#xff0c;以提供更具吸引力的直播体验。 -为什么选择一对一直播美颜SDK&#xff1f; 在开始之前&#xff0c;让我们先明确一下为什么选择一对一直播美颜SDK是一个明智的决定。…

PS之ICO插件ICOFormat

ICOFormat简介&#xff1a; 强大的图片编辑处理软件photoshop竟然一直不支持ico格式的图标文件&#xff0c;这真让人恼火。还好&#xff0c;有热心人开发了一款名叫ICOFormat的PS插件&#xff0c;利用它&#xff0c;就可以在photoshop中打开&#xff0c;编辑和保存ico文件了。…

uni-app:实现页面效果4(echarts数据可视化)

效果 代码 <template><view><view><view class"title">概况</view><view class"line_position"><view class"line1"><view class"item"><view class"one">今日销售…

图像分块及拼接

原图&#xff1a; 分块结果&#xff1a; 拼接结果&#xff1a; 代码&#xff1a; import numpy as np import cv2 as cv import matplotlib.pyplot as pltdef get_patch(img,patch_size):imgs []h,w,n img.shapenew_h, new_w patch_size, patch_sizecolint(w/patch_siz…

java生成一个符合密码学和安全性的随机秘钥

有时 我们在生成token 或者完成某种加密形式时会需要一个秘钥 但是 有些时候 项目开发并没有规定用什么秘钥 但是 秘钥都是要有一定格式规范的 我们可以通过以下代码生成一个随机秘钥 import java.security.SecureRandom; import java.util.Base64;public class TokenGenerat…

Ubuntu 20.04使用源码安装nginx 1.14.0

nginx安装及使用&#xff08;详细版&#xff09;是一篇参考博文。 http://nginx.org/download/可以选择下载源码的版本。 sudo wget http://nginx.org/download/nginx-1.14.0.tar.gz下载源代码。 sudo tar xzf nginx-1.14.0.tar.gz进行解压。 cd nginx-1.14.0进入到源代码…

nginx-proxy反向代理缓存

介绍&#xff1a; 反向代理缓存&#xff0c;类似于动静分离&#xff0c;即通过nginx代理服务器根据客户端发送的url请求&#xff0c;去后台服务器获取数据&#xff0c;将静态数据缓存到nginx代理服务器上&#xff0c;并配置有过期时间&#xff0c;当客户端下次以相同的url请求…

[鹏城杯 2022]简单的php - 无数字字母RCE+取反【*】

[鹏城杯 2022]简单的php 一、解题流程二、思考总结 题目代码&#xff1a; <?php show_source(__FILE__);$code $_GET[code];if(strlen($code) > 80 or preg_match(/[A-Za-z0-9]|\|"||\ |,|\.|-|\||\/|\\|<|>|\$|\?|\^|&|\|/is,$code)){die( Hello);}e…

专业的园林景观设计师到底需要学什么?优漫动游

随着可持续发展科学发展观的普及与重视&#xff0c;园林生态城市逐渐成为生活在钢筋水泥中人们的理想目标。而想要达到人与自然生态和谐相处的生活要求&#xff0c;正需要运用到园林景观设计学相关专业知识。 专业的园林景观设计师到底需要学什么&#xff1f; 庞大的社会需…

时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测

时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测 目录 时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 ICEEMDAN-IMPA-LSTM功率/风速预测 基于改进的自适应经验模态分解改进海洋捕食者算法长短期记忆网络时间序…

leetcode - 2038. Remove Colored Pieces if Both Neighbors are the Same Color

Description There are n pieces arranged in a line, and each piece is colored either by ‘A’ or by ‘B’. You are given a string colors of length n where colors[i] is the color of the ith piece. Alice and Bob are playing a game where they take alternatin…

C++统一初始化和初始化列表

一直对C初始化使用圆括号和花括号的区别有所疑惑&#xff0c;参考书籍和博客简单总结一下 文章目录 常见的初始化操作统一初始化(Uniform Initialization)初始化列表(Initializer Lists) 常见的初始化操作 对于一个基础数据类型进行初始化&#xff0c;比如 int&#xff1a; i…

深度学习基础知识 nn.Sequential | nn.ModuleList | nn.ModuleDict

深度学习基础知识 nn.Sequential &#xff5c; nn.ModuleList &#xff5c; nn.ModuleDict 1、nn.Sequential 、 nn.ModuleList 、 nn.ModuleDict 类都继承自 Module 类。2、nn.Sequential、nn.ModuleList 和 nn.ModuleDict语法3、Sequential 、ModuleDict、 ModuleList 的区别…

【多线程进阶】线程安全的集合类

文章目录 前言1. 多线程环境使用 ArrayList2. 多线程环境使用队列3. 多线程环境使用哈希表3.1 HashTable3.2 ConcurrentHashMap 总结 前言 本文主要讲解 Java 线程安全的集合类, 在之前学习过的集合类中, 只有 Vector, Stack, HashTable, 是线程安全的, 因为在他们的关键方法中…

vue项目中使用rem替换px-使用方法-03-使用插件

使用场景:有适配pc端改为适配pc端和移动端,使用2套css App.vue created: function () {if(document.documentElement.clientWidth > 640){require(./style/index.:);this.plaform = pc;}else{require(./style/mobile.scss);this.plaform = mobile;} } 注意: 为2套css分…

axios登录,登出接口的简单封装步骤详解!

目录 总结一、步骤1.安装Axios&#xff1a;2.axios对象封装3.请求api封装4.使用pinia临时库保存响应信息&#xff08;按需求用&#xff09;5.最后&#xff0c;在组件中使用&#xff01; 总结 封装axios对象&#xff0c;编写公共请求代码、添加拦截逻辑、然后分层实现axios请求…

anaconda安装及配置+pytorch安装与配置(自用笔记)

anaconda安装及配置 1、anaconda官网下载安装包 下载好后进行安装 2、anaconda安装地址(记住安装路径)&#xff1a; 3、配置环境变量 打开anaconda prompt: 输入命令conda list: 可以看到安装好的很多包&#xff01; 至此anaconda配置完成。 PyTorch的安装与配置 使用con…