VPS

在VPS上安装Netdata实时监控服务器资源

📅 2026年10月27日 ⏱ 阅读约10分钟 🐧 Ubuntu 22.04 / Debian 12

Netdata VPS实时服务器监控仪表板

实时监控VPS对于运行网站或应用程序的任何人来说都至关重要。Netdata是一款免费的开源工具,可通过精美的Web仪表板实时查看CPU、内存、磁盘I/O、网络流量及超过2000个指标。安装简单,开箱即用。

1. 什么是Netdata,为什么使用它?

Netdata是一个轻量级监控代理,每1秒收集一次指标——而其他大多数工具每10-60秒才收集一次。这使得CPU或内存峰值的检测更加精准。

✅ Netdata的主要优势:一键安装,仪表板立即可用,支持300+插件(Nginx、MySQL、Docker、Redis等),自托管完全免费

Netdata适合以下场景:

2. 系统要求

Netdata支持所有主流Linux发行版。最低要求:

组件最低要求推荐配置
内存512 MB1 GB+
CPU1个虚拟核心2个虚拟核心+
磁盘200 MB(SSD)1 GB+(用于数据保留)
操作系统Ubuntu 20.04+Ubuntu 22.04 / Debian 12
网络端口19999(本地)通过反向代理使用HTTPS

ℹ️ 注意:AsiaGB所有VPS套餐均使用SSD存储,运行Ubuntu/Debian,完全兼容Netdata所有功能。

3. 在Ubuntu/Debian上安装Netdata

最简单的方法是使用Netdata官方安装脚本:

# 先更新软件包列表
sudo apt update && sudo apt upgrade -y

# 使用一行命令安装Netdata
wget -O /tmp/netdata-kickstart.sh https://my-netdata.io/kickstart.sh
sh /tmp/netdata-kickstart.sh --stable-channel --disable-telemetry

重要参数说明:

通过APT安装(Ubuntu/Debian)

# 添加Netdata APT仓库
curl -s https://packagecloud.io/install/repositories/netdata/netdata/script.deb.sh | sudo bash

# 安装
sudo apt install netdata -y

# 启用并启动服务
sudo systemctl enable netdata
sudo systemctl start netdata

验证安装

sudo systemctl status netdata
# 应显示:Active: active (running)

4. 访问监控仪表板

安装后,Netdata在19999端口运行,访问地址:

http://您的VPS_IP:19999

⚠️ 安全提示:不要直接将19999端口暴露在公网上,请使用SSH隧道或Nginx反向代理(见下一节)。

通过SSH隧道访问(最安全的方式)

# 在本地机器上运行
ssh -L 19999:localhost:19999 user@您的VPS_IP -N

# 然后在浏览器中打开
http://localhost:19999

5. 使用Nginx反向代理保护访问安全

如需通过域名以HTTPS方式访问Netdata,需配置Nginx反向代理:

sudo apt install nginx -y

# 创建配置文件
sudo nano /etc/nginx/sites-available/netdata

添加以下配置:

upstream netdata {
    server 127.0.0.1:19999;
}

server {
    listen 443 ssl;
    server_name monitor.example.com;

    ssl_certificate /etc/letsencrypt/live/monitor.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/monitor.example.com/privkey.pem;

    auth_basic "Netdata Monitoring";
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://netdata;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
# 创建密码文件
sudo htpasswd -c /etc/nginx/.htpasswd admin

# 启用配置
sudo ln -s /etc/nginx/sites-available/netdata /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

6. 配置告警通知

Netdata内置告警系统,可通过邮件、Slack、Telegram、PagerDuty等发送通知。

配置邮件告警

sudo nano /etc/netdata/health_alarm_notify.conf
# 邮件设置
SEND_EMAIL="YES"
DEFAULT_RECIPIENT_EMAIL="[email protected]"

配置Telegram告警

SEND_TELEGRAM="YES"
TELEGRAM_BOT_TOKEN="您的机器人Token"
DEFAULT_RECIPIENT_TELEGRAM="您的Chat_ID"

💡 提示:Netdata内置数百条预配置告警规则,如CPU超过90%、内存超过85%、磁盘超过80%等,无需手动编写。

7. 启用额外插件

Netdata支持数百个插件,大多数可自动检测无需手动配置:

插件监控内容自动检测
Nginx请求数、活跃连接、响应状态码✅ 是
MySQL/MariaDB查询数、连接数、InnoDB✅ 是
Docker每个容器的CPU/内存✅ 是
Redis缓存命中率、内存、连接客户端✅ 是
PHP-FPM进程池状态、慢请求需手动配置
Postfix邮件队列、投递速率✅ 是

启用MySQL插件

# 在MySQL中创建Netdata用户
mysql -u root -p -e "CREATE USER 'netdata'@'localhost' IDENTIFIED BY ''; GRANT USAGE ON *.* TO 'netdata'@'localhost'; FLUSH PRIVILEGES;"

sudo systemctl restart netdata

8. 连接Netdata Cloud(免费)

Netdata Cloud让您无需开放额外端口即可从任何地方查看仪表板:

  1. 在app.netdata.cloud注册免费账户
  2. 创建Space和War Room
  3. 点击"Connect Nodes"并复制claim token
  4. 在VPS上运行:
sudo netdata-claim.sh -token=您的TOKEN -rooms=您的ROOM_ID -url=https://app.netdata.cloud

🔒 安全性:Netdata Cloud使用TLS加密的Agent-Cloud Link。监控数据不经过云端——通过WebSocket直接从浏览器发送到代理,非常安全。

9. 性能调优

如果VPS内存有限,可以减少Netdata的资源占用:

sudo nano /etc/netdata/netdata.conf
[global]
    # 减少历史数据保留时间
    history = 3600        # 1小时(默认值)

    # 降低更新频率(节省CPU)
    update every = 2      # 每2秒而非1秒

[plugins]
    # 禁用不需要的插件
    python.d = no
    node.d = no

修改后重启服务:

sudo systemctl restart netdata

10. Netdata与其他监控工具对比

工具实时精度安装难度插件数告警费用
Netdata1秒非常简单300+内置免费
Prometheus+Grafana15秒+复杂多需手动配置免费
Zabbix30秒复杂多内置免费
Datadog15秒简单多内置付费
New Relic1分钟简单多内置付费

Netdata在安装便捷性和实时精度方面胜出,非常适合不想进行复杂配置的开发者。

11. 常见问题

❓ Netdata占用多少内存?
通常30-100MB,取决于启用的插件数量。适合1GB内存及以上的VPS。

❓ Netdata和Grafana有什么区别?
Netdata安装后立即可用;Grafana需要先配置Prometheus或InfluxDB数据源,但灵活性更高。

❓ 数据保存多长时间?
默认:1秒精度保存1小时,每分钟精度保存6小时,每小时精度保存6天,可在netdata.conf中调整。

❓ 暴露19999端口安全吗?
不安全。请使用SSH隧道、Nginx反向代理加Basic认证或Netdata Cloud。

❓ 可以在AsiaGB VPS上安装吗?
可以。AsiaGB VPS运行Ubuntu/Debian,配备SSD存储,完全支持Netdata所有功能。

❓ Netdata Cloud免费吗?
有免费套餐,节点数量不限。Business套餐提供更长保留期和高级告警功能。

📝 总结

Netdata是VPS上最易用、实时精度最高的监控工具。主要步骤:

  • ✅ 使用一键安装脚本完成安装
  • ✅ 通过SSH隧道或Nginx反向代理访问仪表板
  • ✅ 配置Telegram/邮件告警
  • ✅ Nginx/MySQL/Docker插件自动检测
  • ✅ 连接Netdata Cloud实现随处访问

需要支持Netdata的VPS,配备SSD存储和99%正常运行时间保障?查看AsiaGB VPS套餐,每月仅需500泰铢起