返回博客
一月 13, 2026指南

如何设置服务器监控

关于设置 Netdata、Prometheus 等服务器监控工具以及日志管理的完整指南,用于主动服务器管理。

如何设置服务器监控

服务器监控对于维持最佳性能、及早发现问题并确保高可用性至关重要。本指南涵盖了为您的 Hiddence 服务器设置全面监控解决方案的内容。

安装 Netdata(实时监控)

Netdata 通过精美的 Web 界面提供实时性能监控:

bash
# 安装 Netdata
bash <(curl -Ss https://my-netdata.io/kickstart.sh)

# 访问仪表板:http://your-server-ip:19999

# 配置 Netdata
sudo nano /etc/netdata/netdata.conf
# 设置 bind to = your-server-ip

# 重启 Netdata
sudo systemctl restart netdata

设置 Prometheus 和 Grafana

用于带有自定义仪表板的高级监控:

bash
# 下载 Prometheus
wget https://github.com/prometheus/prometheus/releases/download/v2.45.0/prometheus-2.45.0.linux-amd64.tar.gz
tar xvfz prometheus-*.tar.gz
cd prometheus-*

# 创建配置
nano prometheus.yml

# 启动 Prometheus
./prometheus --config.file=prometheus.yml

# 安装 Node Exporter 用于系统指标
wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz
tar xvfz node_exporter-*.tar.gz
cd node_exporter-*
./node_exporter

设置电子邮件警报

为关键事件配置电子邮件通知:

bash
# 安装 mailutils
sudo apt install mailutils -y

# 配置 Postfix
sudo dpkg-reconfigure postfix
# 选择 'Internet Site' 并输入您的域名

# 测试电子邮件
echo "Test message" | mail -s "Server Alert" your-email@example.com

# 设置监控的 cron 任务
crontab -e
# 添加:*/5 * * * * /path/to/monitoring-script.sh

日志管理

设置集中式日志管理:

bash
# 安装 logrotate(通常已预装)
sudo apt install logrotate -y

# 配置日志轮转
sudo nano /etc/logrotate.d/myapp

# 示例配置:
/var/log/myapp/*.log {
    daily
    rotate 7
    compress
    delaycompress
    missingok
    notifempty
}

# 查看系统日志
sudo journalctl -u service-name
sudo tail -f /var/log/syslog

监控最佳实践

  • 监控 CPU、内存、磁盘和网络使用情况
  • 为关键阈值设置警报(CPU > 80%,磁盘 > 90%)
  • 监控应用程序日志中的错误
  • 跟踪正常运行时间和响应时间
  • 监控安全事件和失败的登录尝试
  • 定期进行备份验证
  • 记录您的监控设置和流程