欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > 如何使用Netdata部署高性能的服务器监控平台

如何使用Netdata部署高性能的服务器监控平台

2025/5/5 12:49:58 来源:https://blog.csdn.net/weixin_53510183/article/details/143579877  浏览:    关键词:如何使用Netdata部署高性能的服务器监控平台

简介

Netdata 是一个开源的、实时的性能和健康监控工具,专为系统、应用程序、SNMP 设备等而设计。它以其高度交互的 Web 仪表板和极低的资源开销而闻名。

主要特点:实时监控、全面监控、零配置、轻量级、交互式仪表板、可扩展性、警报和通知、分布式监控、数据收集 API、无数据库

接下来,我会带大家一起部署这样一个服务器监控平台。

部署前必要准备

  • 一个充满求知欲的大脑。

  • 一台Linux服务器(推荐腾讯云、阿里云或雨云等)。本文将以雨云为例进行演示。

我将会以 雨云 为例,带大家创建一台自己的云服务器,以便尝试本篇文章的内容。

注册链接: https://www.rainyun.com/NTEzMTM1_?s=blog

创建雨云服务器

以下步骤仅供参考,请根据实际需求选择配置。

点击“云产品”→“云服务器”→“立即购买”。

alt text

选择距离你较近的区域,以降低延迟。

alt text

选择配置。

alt text

选择Ubuntu 22.04版本。

alt text

点击“立即购买”,并完成后续购买流程。购买完成后,等待服务器部署完毕,进入管理面板,找到远程连接信息。

alt text

alt text

使用PowerShell进行远程连接:输入ssh root@你的服务器IP (例如ssh root@154.9.227.239),首次连接需输入yes,然后回车即可登录。

alt text
alt text

Linux 脚本部署 Netdata

安装

本教程以 Ubuntu 22.04 为例,其他 Linux 发行版步骤类似,可能需要根据你的发行版调整命令。

可以直接使用一键安装脚本:

curl https://get.netdata.cloud/kickstart.sh > /tmp/netdata-kickstart.sh && sh /tmp/netdata-kickstart.sh --disable-telemetry

如果想自定义一些配置,可以前往官网 Linux installation,按照自己的需求选择安装参数,如下图,也可以根据这个链接下面的其他配置命令参数:

在这里插入图片描述

验证安装: 在浏览器中访问 http://你的服务器IP:19999,即可查看 Netdata 的监控界面。

image-20241106195406889

我们不需要登录,点击右下角的 Skip and use the dashboard anonymously. 直接进入管理面板即可。

在这里插入图片描述

进来后,就可以看到我们服务器的一些状态了。

image-20241106195822657

小提示:将右上角的模式修改为 Force Play,可以避免鼠标悬停时暂停服务器状态显示。

image-20241106195840475

卸载

如果需要卸载,可以将命令行参数修改为 --uninstall 如下命令:

curl https://get.netdata.cloud/kickstart.sh > /tmp/netdata-kickstart.sh && sh /tmp/netdata-kickstart.sh --uninstall

使用 Docker 和 Docker Compose 部署 Netdata

方法一:使用 docker run 命令

运行 Docker 命令: 执行以下命令启动 Netdata 容器:

docker run -d --name=netdata \--pid=host \--network=host \-v netdataconfig:/etc/netdata \-v netdatalib:/var/lib/netdata \-v netdatacache:/var/cache/netdata \-v /:/host/root:ro,rslave \-v /etc/passwd:/host/etc/passwd:ro \-v /etc/group:/host/etc/group:ro \-v /etc/localtime:/etc/localtime:ro \-v /proc:/host/proc:ro \-v /sys:/host/sys:ro \-v /etc/os-release:/host/etc/os-release:ro \-v /var/log:/host/var/log:ro \-v /var/run/docker.sock:/var/run/docker.sock:ro \--restart unless-stopped \--cap-add SYS_PTRACE \--cap-add SYS_ADMIN \--security-opt apparmor=unconfined \netdata/netdata

参数解读:

  • --pid=host: 共享宿主机 PID namespace,允许 Netdata 监控宿主机进程。
  • --network=host: 共享宿主机网络 namespace,允许 Netdata 监控网络接口和服务。
  • -v ...: 挂载必要的目录,让 Netdata 可以访问宿主机文件系统。/hostfs 为所有文件系统的只读访问,其他为特定目录。
  • --restart unless-stopped: 除非手动停止,否则容器会在重启时自动启动。
  • --cap-add SYS_PTRACE, SYS_ADMIN: 添加必要的权限,允许 Netdata 进行系统监控。
  • --security-opt apparmor=unconfined: 关闭 AppArmor 安全限制 (谨慎使用,仅在安全环境下使用)。
  • netdata/netdata:stable: 使用 Netdata 官方镜像的稳定版本。

方法二:使用 docker-compose.yml 文件

使用 docker-compose.yml 文件定义 Netdata 容器,更易于管理和扩展。

创建 docker-compose.yml 文件: 创建一个名为 docker-compose.yml 的文件,内容如下:

version: '3'
services:netdata:image: netdata/netdatacontainer_name: netdatapid: hostnetwork_mode: hostrestart: unless-stoppedcap_add:- SYS_PTRACE- SYS_ADMINsecurity_opt:- apparmor:unconfinedvolumes:- netdataconfig:/etc/netdata- netdatalib:/var/lib/netdata- netdatacache:/var/cache/netdata- /:/host/root:ro,rslave- /etc/passwd:/host/etc/passwd:ro- /etc/group:/host/etc/group:ro- /etc/localtime:/etc/localtime:ro- /proc:/host/proc:ro- /sys:/host/sys:ro- /etc/os-release:/host/etc/os-release:ro- /var/log:/host/var/log:ro- /var/run/docker.sock:/var/run/docker.sock:rovolumes:netdataconfig:netdatalib:netdatacache:

运行 Docker Compose 命令: 执行以下命令启动 Netdata 容器:

sudo docker-compose up -d

验证安装: 无论使用哪种方法,部署完成后,在浏览器中访问 http://你的服务器IP:19999 即可查看 Netdata 的监控界面。 记住将 你的服务器IP 替换为你的服务器的实际 IP 地址。

根据你的实际情况选择合适的部署方式。 docker-compose.yml 方法更易于管理,而 docker run 方法更灵活。 在生产环境中,建议仔细考虑安全性,并根据你的需求进行相应的配置调整。

重要提示:

  • 使用 --network=host--pid=host 会赋予容器对宿主机系统很高的权限,请务必在安全的环境下使用。
  • --security-opt apparmor=unconfined 会禁用 AppArmor,降低安全性,建议在生产环境中谨慎使用,并评估其安全风险。 在生产环境中,建议使用更安全的配置,例如自定义 AppArmor 规则或其他安全措施。
  • 你可以将 netdata/netdata 替换为 netdata/netdata:edge 使用最新版本,但最新版本可能包含未经充分测试的功能。

根据你的实际情况选择合适的部署方式。 docker-compose.yml 方法更易于管理,而 docker run 方法更灵活。 在生产环境中,建议仔细考虑安全性,并根据你的需求进行相应的配置调整。

相关链接
雨云 - 新一代云服务提供商: https://www.rainyun.com/NTEzMTM1_?s=blog
我的博客:https://blog.ivwv.site

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词