openEuler的系统监控:高效运维管理

目录

引言

一、openEuler系统监控的关键功能

[1.1 性能监控](#1.1 性能监控)

[1.2 日志管理与分析](#1.2 日志管理与分析)

[1.3 故障诊断与性能调优](#1.3 故障诊断与性能调优)

[1.4 可视化监控](#1.4 可视化监控)

[二、配置 openEuler 的系统监控](#二、配置 openEuler 的系统监控)

[2.1 安装并使用 top 命令](#2.1 安装并使用 top 命令)

[2.2 安装并使用 iostat 命令监控磁盘 IO](#2.2 安装并使用 iostat 命令监控磁盘 IO)

[2.3 使用 netstat 查看网络流量](#2.3 使用 netstat 查看网络流量)

[2.4 安装 Prometheus 和 Grafana 实现可视化监控(适配 openEuler 24.03-LTS-SP2)](#2.4 安装 Prometheus 和 Grafana 实现可视化监控(适配 openEuler 24.03-LTS-SP2))

[2.5 配置日志管理](#2.5 配置日志管理)

[2.6 配置自动报警](#2.6 配置自动报警)

三、总结


引言

随着信息技术的不断发展和应用规模的不断扩大,企业和开发者对系统的监控需求变得愈加迫切。一个高效的系统监控方案能够帮助管理员实时了解系统性能,及时发现和解决潜在的故障问题,从而保证系统的稳定运行。openEuler,作为一款开源操作系统,提供了多种系统监控工具和方法,帮助用户对系统的各个方面进行全面监控和管理。

在本文中,我们将重点介绍 openEuler 系统的监控能力,展示如何通过内置和第三方工具监控系统性能,包括 CPU、内存、磁盘和网络的使用情况,如何通过日志和监控平台进行故障排查和性能优化。

一、openEuler系统监控的关键功能

1.1 性能监控

openEuler 提供了多种性能监控工具,帮助用户实时监控系统资源的使用情况。常见的资源包括 CPU、内存、磁盘和网络等。

  • CPU 监控:可以实时查看各个 CPU 核心的使用情况,帮助发现系统是否有过度负载或某个进程占用过多 CPU。

  • 内存 监控:实时查看内存的使用情况,包括物理内存、缓存、交换空间等。

  • 磁盘监控:监控磁盘的读写情况,帮助发现磁盘 IO 性能瓶颈。

  • 网络监控:实时查看网络流量,帮助发现网络带宽的瓶颈和异常流量。

1.2 日志管理与分析

openEuler 提供了强大的日志管理和分析功能。通过日志,管理员可以追踪系统的运行状态、检测潜在的错误和故障,并分析系统性能的变化。常见的日志管理工具包括:

  • syslog:用于记录系统日志信息,openEuler 默认启用 syslog 服务,记录系统事件、内核消息和应用程序日志。

  • Journalctl:用于查询和分析系统日志,尤其适用于 systemd 管理的服务。

1.3 故障诊断与性能调优

通过监控工具和日志分析,管理员能够及时发现并诊断系统故障。openEuler 提供了多种调优手段,包括内核参数调整、进程调度优化、内存管理等,帮助用户进行性能调优,确保系统在高负载环境下的高效运行。

1.4 可视化监控

除了命令行工具外,openEuler 还支持第三方可视化监控工具(如 Prometheus、Grafana 等),通过图形化界面帮助管理员更直观地查看和分析系统的各项指标。

二、配置 openEuler 的系统监控

接下来,我们将通过一个简单的实操案例,展示如何在 openEuler 系统上配置和使用系统监控工具,实时监控系统性能并进行故障排查。

2.1 安装并使用 top 命令

top 是 Linux 系统中常用的性能监控工具,可以实时显示系统资源的使用情况,包括 CPU、内存、磁盘和进程。

  1. 查看 CPU 使用情况:执行 top 命令后,系统将实时显示各个进程的 CPU 使用率。在 top 命令输出中,%CPU 列显示每个进程的 CPU 使用率,load average 行显示系统的负载情况。

top


  1. 查看内存使用情况:在 top 命令输出中,%MEM 列显示每个进程的内存使用情况。可以通过 free 命令来查看系统的内存总使用情况:

free -h


  1. 监控进程使用情况:使用 top 命令,可以查看各个进程的资源消耗情况。按 P 键可根据 CPU 使用情况排序,按 M 键可根据内存使用情况排序。

2.2 安装并使用 iostat 命令监控磁盘 IO

iostat 是一个用于监控磁盘 I/O 性能的工具,能够实时显示磁盘的读取、写入速率,以及系统的 CPU 使用情况。

  1. 安装 iostat 工具:默认情况下,openEuler 中未安装 iostat,需要先安装 sysstat 包:

sudo dnf install sysstat


  1. 查看磁盘 IO 情况:安装完成后,可以使用 iostat 命令查看磁盘的 I/O 情况:

iostat -x 1


该命令每秒钟输出一次磁盘的性能指标。通过观察 tps(每秒钟的磁盘 I/O 操作次数)、kB_read/s 和 kB_wrtn/s(每秒钟读取和写入的磁盘数据量)等指标,判断磁盘是否出现瓶颈。

2.3 使用 netstat 查看网络流量

netstat 是一个网络监控工具,可以实时查看网络连接的情况,包括传输数据的端口和协议。

  1. 查看网络连接情况:使用以下命令查看所有网络连接的状态:

netstat -tuln


  1. 查看网络流量:使用 netstat 配合 -i 参数查看网络接口的流量:

netstat -i


2.4 安装 Prometheus 和 Grafana 实现可视化监控(适配 openEuler 24.03-LTS-SP2)

Prometheus 和 Grafana 是当前最流行的开源监控方案组合,其中 Prometheus 负责采集和存储时间序列数据,而 Grafana 提供灵活的可视化展示界面。由于 openEuler 24.03-LTS-SP2 的默认仓库中不包含 Prometheus 与 Grafana,需要采用官方二进制方式进行部署。

  1. 安装 Prometheus(官方二进制方式)

Prometheus 官方推荐使用二进制方式安装,这符合 openEuler 的环境。

下载最新 Prometheus(使用国内镜像):

cd /opt curl -LO https://mirrors.tuna.tsinghua.edu.cn/github-release/prometheus/prometheus/LatestRelease/prometheus-2.53.0.linux-amd64.tar.gz tar -xvf prometheus-2.53.0.linux-amd64.tar.gz mv prometheus-2.53.0.linux-amd64 prometheus


  1. 创建 Prometheus systemd 服务

让 Prometheus 能作为系统服务运行:

useradd --no-create-home --shell /sbin/nologin prometheus mkdir -p /etc/prometheus mkdir -p /var/lib/prometheus cp /opt/prometheus/prometheus /usr/local/bin/ cp /opt/prometheus/promtool /usr/local/bin/ cp -r /opt/prometheus/consoles /etc/prometheus/ cp -r /opt/prometheus/console_libraries /etc/prometheus/ cp /opt/prometheus/prometheus.yml /etc/prometheus/ chown -R prometheus:prometheus /etc/prometheus /var/lib/prometheus


创建 systemd 单元:

cat <<EOF > /etc/systemd/system/prometheus.service [Unit] Description=Prometheus Monitoring After=network.target [Service] User=prometheus ExecStart=/usr/local/bin/prometheus \ --config.file=/etc/prometheus/prometheus.yml \ --storage.tsdb.path=/var/lib/prometheus \ --web.console.templates=/etc/prometheus/consoles \ --web.console.libraries=/etc/prometheus/console_libraries Restart=on-failure [Install] WantedBy=multi-user.target EOF


启动服务:

systemctl daemon-reload systemctl enable --now prometheus


访问 Prometheus:

http://服务器IP:9090


  1. 安装 Grafana(官方仓库)

Grafana 提供了官方 RPM 仓库,可以在 openEuler 中直接使用。

添加 Grafana 仓库:

cat <<EOF > /etc/yum.repos.d/grafana.repo [grafana] name=grafana baseurl=https://rpm.grafana.com/ repo_gpgcheck=0 gpgcheck=0 enabled=1 EOF


安装 Grafana:

dnf install -y grafana


  1. 启动 Grafana 服务

systemctl enable --now grafana-server


访问 Grafana:

http://服务器IP:3000


默认登录:

  • 用户名:admin

  • 密码:admin

首次登录会要求修改密码。

  1. 配置数据源与监控面板

在 Grafana 控制台:

  1. 点击 Configuration → Data Sources

  2. 添加 Prometheus

  3. 填写 URL:

http://localhost:9090


  1. 点击 Save & Test

完成后,就可以使用仪表盘展示 CPU、内存、磁盘、容器等指标,并可导入社区模板。

2.5 配置日志管理

在 openEuler 上,journalctl 是用于查看和管理日志的工具。可以通过以下命令查看系统日志:

  1. 查看最新日志

sudo journalctl -xe


  1. 查看特定服务的日志:可以查看某个服务的日志,例如查看 Nginx 服务的日志:

sudo journalctl -u nginx


2.6 配置自动报警

通过使用 Prometheus 和 Grafana,可以配置自动报警,当系统的某项指标超过预设阈值时,自动触发警报,通知管理员及时处理。

三、总结

openEuler 提供了丰富的系统监控功能,帮助管理员实时监控系统性能,及时发现潜在问题并进行故障诊断。通过使用 top、iostat、netstat 等命令行工具,结合 Prometheus 和 Grafana 等可视化工具,管理员可以更高效地进行运维管理,确保系统的稳定运行。此外,日志管理和报警系统也能帮助管理员及时发现并解决系统中的故障问题。

通过本文的介绍和实操案例,相信你已经了解了如何在 openEuler 中进行系统性能监控,优化系统运行和故障诊断。

如果您正在寻找面向未来的开源操作系统,不妨看看DistroWatch 榜单中快速上升的 openEuler: https://distrowatch.com/table-mobile.php?distribution=openeuler,一个由开放原子开源基金会孵化、支持"超节点"场景的Linux 发行版。

openEuler官网:https://www.openeuler.openatom.cn/zh/

相关推荐
潮流coder2 小时前
ssh公钥 key生成
运维·ssh
守城小轩2 小时前
基于Chrome140的Reddit账号自动化(关键词浏览)——运行脚本(三)
运维·自动化
eventer1232 小时前
构建 HertzBeat Docker 镜像的技术实践
运维·docker·容器
深耕AI3 小时前
【wordpress系列教程】02 Blocksy主题
运维·服务器·前端
遇见火星3 小时前
Jenkins核心部署流程
运维·jenkins
gaize12134 小时前
服务器异常如何解决
运维·服务器
dragoooon345 小时前
仿muduo库实现高并发服务器-面试常见问题
运维·服务器·面试
开***能5 小时前
ASI转Profinet网关助力包装全产业自动化
运维·自动化