1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > NetData搭建 -- Linux性能实时监测工具

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

时间:2024-06-16 13:31:43

相关推荐

NetData搭建 -- 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工作界面

下载安装netData

# 下载项目代码[root@localhost ~]# yum -y install git[root@localhost ~]# git clone /firehol/netdata.git #下载速度会非常非常非常的慢,我下载了两个钟头netdata.gitCloning 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 52564Receiving 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的域名,如:

生成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 ;# 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后,可以直接通过域名访问,并且需要输入账号和密码。但是依然可以通过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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。