
Netdata 是面向个人VPS管理员和小型团队的最佳免费实时服务器监控工具。它每秒采集CPU、内存、磁盘和网络指标,并在美观易用的仪表板上实时展示,完全免费。
目录
什么是Netdata及为何使用
Netdata是自2013年开始开发的开源系统监控软件,目前在全球超过100万个系统上运行。其主要优势包括:
- 每秒实时监控 — 即时看到变化,无需等待其他工具的30-60秒延迟
- 自动发现服务 — 自动检测正在运行的服务(Nginx、MySQL、Docker等)
- 开箱即用的精美面板 — 无需手动配置可视化图表
- 轻量级 — 仅需100-200 MB内存,CPU占用不到1%
- 100%免费 — Apache 2.0许可证,自托管无任何限制
适合人群: 个人VPS管理员、初创公司和开发者,无需投入时间配置复杂的Prometheus + Grafana即可获得强大的监控能力。
系统要求
| 组件 | 最低要求 | 推荐配置 |
|---|---|---|
| 操作系统 | Ubuntu 20.04+ / Debian 10+ | Ubuntu 22.04 LTS |
| 内存 | 512 MB | 1 GB或更多 |
| CPU | 1核 | 2核或更多 |
| 磁盘 | 1 GB(保留1天数据) | 5 GB(保留7天数据) |
| 端口 | 19999(本地或反向代理) | Nginx反向代理 + HTTPS |
AsiaGB所有1 GB内存以上的VPS套餐均完全兼容Netdata。
在Ubuntu/Debian上安装Netdata
方法一:使用kickstart脚本(推荐,最快)
在您的VPS上运行以下命令,约需2-5分钟:
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh
sh /tmp/netdata-kickstart.sh --stable-channel --disable-telemetry
参数说明:
--stable-channel— 使用稳定版本,而非每日构建版--disable-telemetry— 禁止向Netdata Inc.发送使用统计
方法二:通过包管理器安装
curl -fsSL https://packagecloud.io/netdata/netdata/gpgkey | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/netdata.gpg
echo "deb https://packagecloud.io/netdata/netdata/ubuntu/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/netdata.list
sudo apt-get update
sudo apt-get install -y netdata
验证安装
sudo systemctl status netdata
# 应显示:Active: active (running)
设置开机自启
sudo systemctl enable netdata
访问监控面板
Netdata默认在所有网络接口的19999端口监听,可立即通过以下地址访问:
http://您的VPS_IP:19999
注意: 默认情况下,Netdata未设置任何身份验证即可公开访问。如果您的VPS直接连接互联网,请在正式使用前配置安全措施。
SSH隧道(最安全的方式)
# 在本地电脑上运行
ssh -L 19999:localhost:19999 user@您的VPS_IP -N
# 然后在浏览器访问
http://localhost:19999
使用Nginx配置安全访问
使用Nginx反向代理,通过HTTPS和基本身份验证安全访问Netdata:
第一步:限制Netdata仅监听本地
编辑 /etc/netdata/netdata.conf:
[web]
bind to = 127.0.0.1
sudo systemctl restart netdata
第二步:创建Nginx虚拟主机
server {
listen 443 ssl;
server_name monitor.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/monitor.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/monitor.yourdomain.com/privkey.pem;
auth_basic "Netdata Monitoring";
auth_basic_user_file /etc/nginx/.htpasswd;
location / {
proxy_pass http://127.0.0.1:19999;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
第三步:创建密码文件
sudo apt install -y apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd admin
配置告警通知
Netdata内置超过400个预设告警模板,编辑 /etc/netdata/health_alarm_notify.conf 配置Telegram通知:
SEND_TELEGRAM="YES"
TELEGRAM_BOT_TOKEN="您的机器人TOKEN"
TELEGRAM_CHAT_ID="您的聊天ID"
sudo systemctl restart netdata
测试告警
sudo -u netdata /usr/libexec/netdata/plugins.d/alarm-notify.sh test telegram
关键监控指标
| 类别 | 指标 | 告警阈值 |
|---|---|---|
| CPU | user, system, iowait | iowait > 20% 表示磁盘瓶颈 |
| 内存 | used, cached, buffered | used > 85% 表示内存不足 |
| 磁盘I/O | reads, writes, utilization | utilization > 80% 表示性能下降 |
| 网络 | received, sent, packets | 带宽接近ISP上限 |
| 系统负载 | load1, load5, load15 | load15 > CPU核心数 |
| 进程 | running, blocked | blocked > 10 表示I/O问题 |
专业提示: 重点关注VPS上的CPU steal指标。如果steal持续超过10%,说明虚拟机管理程序正在限制您的CPU资源,需要升级套餐或更换服务提供商。
Netdata vs Prometheus/Grafana对比
| 工具 | 安装难度 | 实时性 | 资源消耗 | 适用场景 |
|---|---|---|---|---|
| Netdata | ⭐⭐⭐⭐⭐ 非常简单 | 1秒 | ~150 MB内存 | 个人VPS、中小企业 |
| Prometheus + Grafana | ⭐⭐ 复杂 | 15秒以上 | 500+ MB内存 | 企业级、集群 |
| Zabbix | ⭐⭐⭐ 中等 | 30秒以上 | 300+ MB内存 | 企业级 |
| htop/top | ⭐⭐⭐⭐⭐ 非常简单 | 实时 | 极少 | 快速排查,无历史记录 |
常见问题
Netdata能在低配VPS上运行吗?
可以。Netdata只需100-200 MB内存,CPU占用不到1%,适合所有1 GB内存以上的VPS。
Netdata真的完全免费吗?
Netdata Agent采用Apache 2.0开源许可证,100%免费,自托管使用无任何限制。企业级Netdata Cloud为付费订阅,但非必须。
如何更新Netdata?
sudo /usr/libexec/netdata/netdata-updater.sh
Netdata保留多长时间的历史数据?
默认在内存中保留约1小时的数据。可以通过配置 /etc/netdata/netdata.conf 中的dbengine模式,将数据持久化到磁盘保留数月。
可以在Docker中运行Netdata吗?
docker run -d --name=netdata \
-p 19999:19999 \
-v netdataconfig:/etc/netdata \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
--cap-add SYS_PTRACE \
netdata/netdata
总结
完整安装清单
- 安装:
sh /tmp/netdata-kickstart.sh --stable-channel --disable-telemetry - 将19999端口限制为仅本地访问
- 配置Nginx反向代理 + HTTPS
- 设置基本身份验证
- 配置Telegram/邮件告警
- 通过
https://monitor.yourdomain.com访问面板
Netdata是为每台VPS投资5分钟最值得的事情之一,它能让您在用户发现问题或网站宕机之前就发现并解决服务器故障。
如果您正在寻找可靠的VPS来运行Netdata,欢迎了解 AsiaGB VPS — SSD存储,99%正常运行时间,泰国和新加坡机房可选,提供中文支持。