centos stream8如何监控
小樊
33
2026-01-04 02:18:13
CentOS Stream 8 监控实践指南
一 命令行即时监控
- 进程与资源总览:使用 top/htop(htop 需启用 EPEL 后安装)查看按 CPU/内存排序的进程;配合 vmstat 1 观察 CPU、内存、IO、上下文切换;用 free -h 检查 可用/已用内存与 Swap;磁盘空间用 df -h,inode 用 df -i;磁盘 I/O 用 iostat -x 1(需安装 sysstat);网络套接字与连接用 ss -s 或传统的 netstat;带宽占用用 iftop(需安装)。这些命令适合快速定位“卡在哪”。
- 历史与系统活动:启用 sar(同样来自 sysstat)做长期数据留存与回看,例如 sar -u 1 60 记录 1 秒一次、共 60 次的 CPU 利用率;也可查看历史 磁盘/网络/内存报表。
- 网络连通与解析:排障时先 ping 目标地址,用 curl 验证应用可达性;查看网卡与链路状态用 ip link;核对 IP/掩码/网关 用 ip addr;域名解析用 nslookup/dig;服务状态与日志用 systemctl status <服务名> 与 journalctl -xe 精确定位错误。
二 图形化与平台化监控
- Zabbix:企业级方案,支持 分布式监控、告警、可视化。在 CentOS Stream 8 上可部署 Zabbix Server + MariaDB + Zabbix Web + Zabbix Agent,通过 Web 界面统一管理主机、指标与触发器。
- Prometheus + Grafana:以 时间序列数据库 为核心的监控栈,配合 Grafana 做仪表盘可视化;适合容器与动态环境,指标采集灵活、扩展性强。
- 其他可选:Nagios 等老牌平台,适合做 可用性与服务状态 的基础监控与告警。
三 快速搭建 Zabbix 6.2 示例
- 安装仓库与组件:
- 安装 Zabbix 仓库:rpm -Uvh https://repo.zabbix.com/zabbix/6.2/rhel/8/x86_64/zabbix-release-6.2-3.el8.noarch.rpm
- 安装服务与前端:dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent mariadb-server
- 初始化数据库(示例):
- systemctl start mariadb && systemctl enable mariadb
- mysql -uroot -p
- CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
- CREATE USER zabbix@localhost IDENTIFIED BY ‘YourStrongPassword’;
- GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost;
- SET GLOBAL log_bin_trust_function_creators = 1;
- quit
- zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
- mysql -uroot -p -e “SET GLOBAL log_bin_trust_function_creators = 0;”
- 启动服务:systemctl start zabbix-server zabbix-agent httpd php-fpm && systemctl enable zabbix-server zabbix-agent httpd php-fpm
- 访问 http://<服务器IP>/zabbix 完成前端配置,默认账号 Admin/zabbix。提示:生产环境请为数据库与 Zabbix 设置强密码、合理分配资源并开启防火墙策略。
四 自动化巡检与告警脚本
- 轻量巡检脚本思路:汇总 OS 版本、内核、主机名、运行时间、CPU 型号/核数/负载、内存使用、磁盘使用率、网卡 RX/TX 等关键指标,便于定时巡检或邮件推送。可参考如下片段(按需扩展与加阈值判断):
- 系统信息:uname -r/-m/-n,cat /etc/redhat-release,uptime
- CPU:grep -c ^processor /proc/cpuinfo;lscpu;cat /proc/loadavg
- 内存:free -m 或 /proc/meminfo
- 磁盘:df -h(关注 Use%)、df -i(关注 IUse%)
- 网络:ip -s link;ifconfig 或 /proc/net/dev 提取 RX/TX
- 定时与告警:用 cron 定期执行脚本并将输出重定向到日志或发送邮件(如 mailx/sendmail);结合 Zabbix 或 Prometheus Alertmanager 配置阈值与通知渠道(邮件、企业微信、钉钉、Webhook 等)实现 7×24 告警闭环。