千家信息网

Linux下NetData工具的搭建方法

发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,本篇内容介绍了"Linux下NetData工具的搭建方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成
千家信息网最后更新 2025年02月04日Linux下NetData工具的搭建方法

本篇内容介绍了"Linux下NetData工具的搭建方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

从Github上能够看到netdata的主要功能,主要有几点:

  • interactive bootstrap dashboards, 酷炫

  • 所有请求每个metreic都在0.5ms内响应,即便是一台烂机器

  • 非常高效,每秒采集数千个指标,但仅占cpu单核1%,少量MB的内存以及完全没有磁盘IO

  • 提供复杂的、各种类型的告警,支持动态阈值、告警模板、多种通知方式等

  • 可扩展,使用自带的插件API(比如bash, python, perl, node.js, java, go, ruby等)来收集任何可以衡量的数据

  • 零配置:安装后netdata会自动的监测一切

  • 零依赖:netdata有自己的web server, 提供静态web文件和web API

  • 零维护:只管跑上!

  • 支撑多种时间序列后端服务,比如graphite, opentsdb, prometheus, json document DBs

NetData工作界面

系统环境:

Centos7

下载安装netData

# 下载项目代码 ➜ git clone https://github.com/firehol/netdata.git # 安装变异所需要的包 ➜ yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig # 运行自带的安装启动脚本 ➜ cd ./netdata ➜ ./netdata-installer.sh

安装启动脚本时,提示netData安装的详细目录,按下Enter键执行。


安装启动脚本

启动和配置

安装完成后,脚本输出一段信息,包括:KSM、端口、启动命令

开启 KSM 以节省储存占用

如果有下列信息,说明你的系统有 KSM,但是未启用,可以按照说明执行两句echo命令,节省 40-60% 的储存空间。

 --- Check KSM (kernel memory deduper) --- Memory de-duplication instructions You have kernel memory de-duper (called Kernel Same-page Merging, or KSM) available, but it is not currently enabled. To enable it run:  echo 1 >/sys/kernel/mm/ksm/run  echo 1000 >/sys/kernel/mm/ksm/sleep_millisecs If you enable it, you will save 40-60% of netdata memory.

web端口配置

默认的web访问端口为19999。

netdata by default listens on all IPs on port 19999, so you can access it with:  http://this.machine.ip:19999/

如果修改端口,需要编辑配置文件/etc/netdata/netdata.conf 中的 # default port = 19999。去掉注释符号#,端口尽量改掉默认的19999 !!!

修改端口后重启生效。

如果有防火墙,需开放端口(CentOS7使用firewalld)。


修改web端口

启动/关闭netData

# 停止 ➜ systemctl stop netdata # 启动 ➜ systemctl start netdata # 重启 ➜ systemctl restart netdata # 开机启动 ➜ systemctl enable netdata # 卸载 ➜ ./netdata-uninstaller.sh --force

至此,NetData安装启动完毕,可以通过http://host_ip:port 进行访问,无需账号密码。

下面将结合Nginx设置账号密码。

使用Nginx配置域名访问,设置账号密码授权

由于netdata没有帐号密码体系,为保护服务器隐私,我们要使用nginx反向代理配置域名访问,并使用账号密码授权。

事先准备:

  • 如果服务器没有Nginx,安装: yum install nginx

  • netdata的域名,如: netdata.example.com

生成Nginx密码文件

# 密码文件存放位置自定义,路径需记录下来,放在Nginx配置中。 ➜ printf "netdata:$(openssl passwd -apr1)" > /usr/local/nginx/conf/htpasswd

配置nginx.conf

在 ...nginx/conf.d 中创建netdata.conf文件,写入如下内容,适当修改端口号、域名、auth_basic_user_file。

upstream backend {  # the netdata server,请修改具体端口号  server 127.0.0.1:19999;  keepalive 64; } server {  # nginx listens to this  listen 80;  # the virtual host name of this,请求改具体域名  server_name netdata.example.com;    # auth password  auth_basic "netdata Login";  # 上一步生成的密码文件路径  auth_basic_user_file /usr/local/nginx/conf/htpasswd;  location / {  proxy_set_header X-Forwarded-Host $host;  proxy_set_header X-Forwarded-Server $host;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  proxy_pass http://backend;  proxy_http_version 1.1;  proxy_pass_request_headers on;  proxy_set_header Connection "keep-alive";  proxy_store off;  } }

重启nginx

# 密码文件存放位置自定义,路径需记录下来,放在Nginx配置中。 ➜ systemctl reload nginx

重启Nginx后,可以直接通过域名netdata.example.com访问,并且需要输入账号和密码。但是依然可以通过http://IP:Port的方式访问,接下来禁用IP访问。

NetData禁用外部IP请求

  • 打开NetData配置文件:/etc/netdata/netdata.conf,web项的 bind to修改如下:

[web]  bind to = 127.0.0.1 ::1
  • 重启NetData: systemctl restart netdata

"Linux下NetData工具的搭建方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

密码 配置 文件 端口 域名 账号 脚本 内容 路径 服务 工具 方法 接下来 位置 信息 口号 可以通过 命令 多种 方式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 主dns服务器长什么样 推荐的数据库管理系统mysql 计算机数据库基础与应用 建立小团队软件开发管理 淮安快通网络技术有限公司 全球司法数据库 宁德时代软件开发工程师待遇 华为服务器管理口怎么进去 软件开发方向学习 支付宝里的数据库是什么 清除表格数据库的方法 天津服务器推荐云空间 网络安全之网络防病毒课程设计 数据库中如何插入新的元组 网络安全员证书等级 小学生 网络安全 资料 为什么要用数据库中间件 互联网项目与软件开发 南京市网络安全通报 通信网络安全原理与实践期末考试 数据库恢复机制的基本原理 网络安全与攻防专业就业前景 dns服务器相关知识linux 机械动力如何安装在服务器上 项目中数据库转换 excel区分两列数据库 深圳好玩互动网络技术 国内卖数据库的公司有哪些 人事管理系统数据库all 数据库无法附加高版本
0