首页 > 其他分享 >搭建nightngale监控体系

搭建nightngale监控体系

时间:2023-02-23 11:47:02浏览次数:36  
标签:compose home vo 监控 nightngale nightingale docker n9e 搭建

  nightngale,即夜莺,是由滴滴开源的监控系统,github地址为https://github.com/ccfos/nightingale。

  nightngale有一套很方便的监控告警系统可供使用,本身也有多项监控指标分析视图。本篇以下内容主要介绍夜莺系统的搭建、指标收集和监控告警等内容。

一、部署

1、服务端部署

  服务端部署为了方便,采用docker-compose的方式一键部署,这样比较方便重启等。

  •  从远程服务端拉取项目,方便后面的部署打包
mkdir /home/nightingale-master 
cd /home/nightingale-master
 ##远程地址为:https://github.com/didi/nightingale.git 
git clone https://github.com/didi/nightingale.git 
  •  安装docker-compose,如果存在略过
 curl -L https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose 
# 添加读写权限
 chmod +x /usr/local/bin/docker-compose 
  •  执行docker-compose
cd /home/nightingale-master/nightingale/dockerfiles 
docker-compose up -d; 

  这里服务端就搭建完成。 初始账号密码为 root  root.2020

  有几点注意:

  1.需要开放端口,比较多,具体需要查看dockerfiles/docker-compose.yaml,nginx 默认是80端口,需要修改的话,执行

docker exec -it nginx-n9e /bin/sh # 进入容器
vi /etc/nginx/nginx.conf # 修改默认端口

  同时修改docker-compose.yaml 的中nginx-n9e对应的端口。 

  2.重启n9e的时候会重置数据库,所以在重启该服务的时候,需要进入容器修改 entrpoint.sh,注释到数据库重置的那几句脚本。

  3.docker-compose.yaml中数据库没有映射到宿主机,需要自己修改 。

2、客户端部署

  使用方式如下安装

  • 修改主机名,如已修改,跳过
hostnamectl set-hostname 主机名
  • 下载n9e安装包

  链接:https://pan.baidu.com/s/16u6u6TH51CH8_UM0OpDl4Q
  提取码:4eZW

  • 上传至客户端服务器并解压
mkdir /home/n9e
cd /home/n9e
tar -xzvf n9e.tar.gz
chmod 777 /home/n9e/n9e-agentx
  • 修改解压文件/n9e/etc/address.yml之中,夜莺服务端地址
  • 设置开机启动
mv /home/n9e/etc/agent.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl start agent
systemctl status agent

  至此,客户端就算安装完成。可以登录夜莺管理web页面,将游离客户端挂载至组织资源树。

  

 

 二、业务指标监控方案

  根据自身业务监控需求,自定义指标收集方案,定期上传指标数据至服务端。

  业务指标通过http接口方式上报数据。

private void pushDataToFalcon(String metric, int count, Integer step){
		MetricVo vo = new MetricVo();
		vo.setCounterType("GAUGE");
                // 策略名称
		vo.setMetric(metric);
                // 监控间隔 秒
		vo.setStep(step);
                // 客户端ip
		vo.setEndpoint(endPoint);
		vo.setTimestamp(System.currentTimeMillis()/1000);
		vo.setValue((double) count);

		HttpHeaders header = new HttpHeaders();
		header.setContentType(MediaType.APPLICATION_JSON);
                // 服务端秘钥,可在夜莺web页面查看
		header.add("X-User-Token",token);
		HttpEntity<List<MetricVo>> entity = new HttpEntity<>(Lists.newArrayList(vo), header);
		try {
			String ret = httpTemplate.postForObject(agentUrl, entity, String.class);
			FalconResult result = JSONObject.parseObject(ret, FalconResult.class);
			if (!Constants.SUCCESS.equals(result.getDat())){
				log.error("指标{}推送数据失败,参数{},返回信息{}", metric, vo, ret);
			}
		} catch (Exception e) {
			log.error("指标{}推送接口访问失败", metric, e);
		}
	}                     

  告警策略在夜莺web监控告警系统模块创建

  

 

   数据推送,满足监控指标时,即可推送告警信息至报警接收人。

  信息接收可使用企业微信
  

 

标签:compose,home,vo,监控,nightngale,nightingale,docker,n9e,搭建
From: https://www.cnblogs.com/sunshine-ground-poems/p/17147365.html

相关文章

  • php-wamp+eclipse+php环境搭建
    1.回顾:上篇已经解决了wamp与IIS冲突的问题2.这篇就开始使用wamp+eclipse搭建php的开发环境3.准备篇  3.1下载wamp软件      在百度里可以搜索到,安装的......
  • Rust开发环境搭建(Linux)
    1、使用Rustup安装       执行如下命令curl--proto'=https'--tlsv1.2-sSfhttps://sh.rustup.rs|sh       执行结果如下:        在这里使用......
  • SkeyeVSS+SkeyeARS+ SkeyeIVMS定制化边防视频监控方案的应用​
    ​我国国土幅员辽阔,拥有漫长的边境线。作为国土防卫的最后一道防线,其安全形势对国家的安全有着非同一般的影响。但因海拔、天气、地形等自然条件的影响,加上陆海边境情况复杂......
  • vs2022 快速搭建imgui工程
    vcpkginstallimgui[dx11-binding]:x64-windows-staticvcpkginstallimgui[win32-binding]:x64-windows-static新建console工程点击查看代码//d3d11.lib;d3dc......
  • 手动搭建桥接网络 2
    1.建namespace和默认空间联通#veth1在ns1上,IP:192.168.1.11#veth0从默认空间->br0,IP:192.168.1.10ipnetnsaddns1iplinkaddveth0typevethpeernamevet......
  • 【1】性能测试导学--搭建环境
                            python版本需在3.8以下,需要重新安装python,在pycharm搜索安装locustio      ......
  • myql搭建mha高可用
    myql搭建mha高可用:注:本质是主从+高可用保障(1个mha管理节点,1个mysql主节点,1个mysql从节点)下载网址:​​https://code.google.com/archive/p/mysql-master-ha/downloads​​......
  • Node.js 环境搭建教程
    Node.js环境搭建教程文章目录​​Node.js环境搭建教程​​​​一、下载与安装​​​​1、下载​​​​2、安装​​​​第一步:点击“next”​​​​第二步:勾选“Iaccept.......
  • java环境搭建
    百度下载jdk8(8u181)先登录甲骨文再下载,安装后要记得安装目录在我的电脑,属性,高级设置,环境变量里新建JAVA_HOME环境名,地址是安装目录找到Path在里面添加%JAVA_HOME%/bin和......
  • prometheus监控平台学习
    架构图PrometheusServer:收集指标和存储时间序列数据,并提供查询接口ClientLibrary:客户端库PushGateway:短期存储指标数据。主要用于临时性的任务Exporters:采......