NetData搭建 – Linux性能实时监测工具

标签(空格分隔): NetData


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

  1. interactive bootstrap dashboards, 酷炫
  2. 所有请求每个metreic都在0.5ms内响应,即便是一台烂机器
  3. 非常高效,每秒采集数千个指标,但仅占cpu单核1%,少量MB的内存以及完全没有磁盘IO
  4. 提供复杂的、各种类型的告警,支持动态阈值、告警模板、多种通知方式等
  5. 可扩展,使用自带的插件API(比如bash, python, perl, node.js, java, go, ruby等)来收集任何可以衡量的数据
  6. 零配置:安装后netdata会自动的监测一切
  7. 零依赖:netdata有自己的web server, 提供静态web文件和web API
  8. 零维护:只管跑上!
  9. 支撑多种时间序列后端服务,比如graphite, opentsdb, prometheus, json document DBs

NetData工作界面

系统环境 IP地址
Centos7.5 192.168.200.128

下载安装netData

# 下载项目代码
[root@localhost ~]# yum -y install git
[root@localhost ~]# git clone https://github.com/firehol/netdata.git  #下载速度会非常非常非常的慢,我下载了两个钟头
netdata.git
Cloning into 'netdata'...
remote: Enumerating objects: 52564, done.
Receiving objects:   0% (30/52564), 20.01 KiB | 15.00 KiBReceiving objects:   0% (60/52564), 36.01 KiB | 15.00 KiBReceiving objects:   0% (104/52564), 52.01 KiB | 11.00 KiReceiving objects:   0% (151/52564), 68.01 KiB | 7.00 KiBReceiving objects:   0% (193/52564), 84.01 KiB | 7.00 KiBReceiving objects:   0% (223/52564), 100.01 KiB | 8.00 KiReceiving objects:   0% (240/52564), 108.01 KiB | 8.00 Kiremote: Total 52564 (delta 0), reused 0 (delta 0), pack-reused 52564
Receiving objects: 100% (52564/52564), 35.74 MiB | 11.00 KiB/s, done.
Resolving deltas: 100% (36796/36796), done.# 安装编译所需要的包
[root@localhost ~]# yum -y install epel-release
[root@localhost ~]# yum -y clean all
[root@localhost ~]# yum makecache
[root@localhost ~]# yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git  autoconf autogen automake pkgconfig libuv-devel
# 运行自带的安装启动脚本
[root@localhost ~]# cd ./netdata
[root@localhost netdata]# ./netdata-installer.sh

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

启动和配置

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

开启 KSM 以节省储存占用

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

 --- Check KSM (kernel memory deduper) ---Memory de-duplication instructionsYou 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/runecho 1000 >/sys/kernel/mm/ksm/sleep_millisecsIf 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)。

#出现以下内容代表成功,可以直接在浏览器IP/19999进行访问
The following non-fatal errors were encountered during the installation process:* Could not find cmake, which is required to build libwebsockets. The install process will continue, but you may not be able to connect this node to Netdata Cloud.--- We are done! --- ^|.-.   .-.   .-.   .-.   .-.   .  netdata                          .-.   .-|   '-'   '-'   '-'   '-'   '-'   is installed and running now!  -'   '-'  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->enjoy real-time performance and health monitoring...

启动/关闭netData
# 停止
[root@localhost ~]# systemctl stop netdata
# 启动
[root@localhost ~]#systemctl start netdata
# 重启
[root@localhost ~]# systemctl restart netdata
# 开机启动
[root@localhost ~]# systemctl enable netdata
# 卸载
[root@localhost ~]# ./netdata-uninstaller.sh --force

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


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

使用Nginx配置域名访问,设置账号密码授权
由于netdata没有帐号密码体系,为保护服务器隐私,我们要使用nginx反向代理配置域名访问,并使用账号密码授权。
事先准备:
如果服务器没有Nginx,安装: yum install nginx
netdata的域名,如: netdata.example.com
生成Nginx密码文件

# 密码文件存放位置自定义,路径需记录下来,放在Nginx配置中。
[root@localhost ~]# 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 thislisten 80;# the virtual host name of this,请求改具体域名server_name netdata.example.com;# auth passwordauth_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配置中。
[root@localhost ~]# 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

NetData搭建 -- Linux性能实时监测工具相关推荐

  1. Netdata 是一款 Linux 性能实时监测工具,以web的可视化方式展示

    Netdata 是一款 Linux 性能实时监测工具..以web的可视化方式展示系统及应用程序的实时运行状态(包括cpu.内存.硬盘输入/输出.网络等linux性能的数据). Netdata文档地址: ...

  2. 【Linux性能实时监测工具-Netdata】

    Linux性能实时监测工具-Netdata,它是Linux系统实时性能监测工具,以web的可视化方式展示系统及应用程序的实时运行状态(包括cpu.内存.硬盘输入/输出.网络等linux性能的数据).N ...

  3. linux系统可视化运维工具,界面酷炫,功能强大!这款 Linux 性能实时监控工具超好用!老斯机搞它!...

    对于维护.管理Linux系统来说,它的性能监控非常重要,特别是实时监控数据,这个数据有利于我们判断服务器的负载压力,及时调整资源调配,也有助于更好的服务于业务.所以,今天民工哥给大家安利一款 Linu ...

  4. Linux性能分析命令工具汇总

    转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...

  5. 必备的 Linux 性能诊断分析工具!(文末送书)

    阅读本文大概需要 8.8 分钟. 作者:董西孝 来源:http://t.cn/Ehs6xfz 福利:文末留言送 3 本Linux系统安全相关书籍<Linux系统安全:纵深防御.安全扫描与入侵检测 ...

  6. [收藏学习]Linux的实时监测命令

    十八.  和系统运行状况相关的Shell命令:    1. Linux的实时监测命令(watch):     watch 是一个非常实用的命令,可以帮你实时监测一个命令的运行结果,省得一遍又一遍的手动 ...

  7. Linux 性能測试工具

    Linux 性能測试工具 linux performance 查看系统配置 查看CPU信息 lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64- ...

  8. Linux性能调优工具-9张图-包你用到爽!抓紧收藏吧

    这里包含Linux 性能资料的工具图.这些使用大字体可以用作海报幻灯片.也可以将它们打印出来贴在办公室墙上.它们展示了:Linux 可观察性工具. Linux 静态性能分析工具. Linux 基准测试 ...

  9. 4)lsof linux命令,***Linux命令实时监测系统(top,htop,iotop,lsof,tcpdump,netstat,vmstat,iostat)...

    摘要:本文总结了8个非常实用的Linux命令行性能监测工具,这些命令支持所有的Linux系统,不仅可以用于监控系统,还可以发现导致性能问题的原因所在. 对每个系统/网络管理员来说,每天监测Linux系 ...

最新文章

  1. vba如何让文本框显示指定的内容_室内LED显示屏如何安装?一篇内容了解清楚
  2. java面板如何设置大小_java面板调整大小问题
  3. 笔记-组织级项目管理与大型项目管理-大型及复杂项目
  4. 中石油训练赛 - 斗地主(bfs)
  5. shp与json互转(转载)
  6. Tensorflow入门神经网络代码框架
  7. nginx 强制跳转https_Nginx服务器环境手动安装Discuz! Q非详细教程
  8. 物联网卡为什么会这么火,主要有哪些优势?
  9. PYNQ实战笔记(一)————常用的代码使用及配置技巧-持续更新
  10. IAP固件升级原理及实现详解
  11. 分门别类刷leetcode——栈、队列、堆(C++实现)
  12. 美式期权定价python_蒙特卡洛模拟和美式期权定价
  13. 集合,ArrayList的运用、 Add()、AddRange()、Clear()、 IndexOf()等
  14. Mysterious Organization
  15. 5.03GEN-B发布!PSP 2000v3/3000最新自制系统
  16. [pytorch]torch.roll函数
  17. 小白提问:C++ 不存在从 “std::string“ 到 “char *“ 的适当转换函数
  18. TP-Link SR20远程代码执行动态调试
  19. 关于IO口信号采集上下拉电阻的选择
  20. 高等数学考研笔记(八)

热门文章

  1. Forexclub:欧美价格刷新三个月高位,维持在1.0200以上
  2. 概率论分布函数的左右连续性证明
  3. CloudSim Plus仿真(二)
  4. HTML常用标签之换行标签
  5. html字体换行教程
  6. css 如何让两个层叠加,网页标准化:CSS制作多层重叠渐变
  7. 电脑部分软件连不上网
  8. java优化switch_「javaswitch」Java switch 详解 - seo实验室
  9. Excel固定首行或首列
  10. 2016年10月1日--国庆日晚上