新闻动态
当前位置:首页 > 新闻动态
KeyarchOS工具系列 | 操作系统运维工具KSysAK,解决运维难题!
2024-05-08

浪潮信息的服务器操作系统云峦KeyarchOS(简称KOS)内置了丰富的工具软件,涵盖了系统运维、故障诊断、性能调优、安全可信等多个方面。我们推出了一系列报道,本期为第五篇,介绍KeyarchOS操作系统运维工具KSysAK。

1、背景

在系统运维的实践中,资源的有效监控与高效利用、问题的精准排查与及时解决构成了运维工作的核心目标。为实现这些目标,需要依托一系列强大的操作系统底层能力与专业工具,然而,这些能力与工具当前却分散于多个不同的应用场景之中,缺乏统一的管理与调度。特别是当前云计算大数据等新一代基础设施广泛应用,随着大规模集群的部署,涉及不同硬件平台、系统架构和复杂多变的业务场景,对运维所需的能力与工具提出了更高的整合性和专业性要求。因此,构建一个全面、集成的运维方案显得尤为重要,以满足系统构件日益庞杂的管理需求。

2、技术挑战

在传统的Linux操作系统中,现有的运维手段能力有限,体现在:缺乏持续监控能力,缺乏低成本简单易用的系统诊断工具,异常检测与根因分析成本高等。解决这些运维问题则面临以下难点:

持续监控能力:系统监控通常需要侵入系统内核,这种情况可能引起系统运行异常,为解决这个问题,需要实现一种无侵入的系统检测能力;同时,系统监控往往伴随着负载的增加,如何持续、精细化、低负载的监控系统,需要提供一种新的检测架构及方法。

        系统诊断能力:不同场景,异常检测的方法也不同, 需要一种自适应地满足不同场景异常检测与故障诊断需求的能力;同时,需要提供更易使用更易解读的诊断结果。

系统介入能力:运维的核心目标是减少或避免业务损失,需要运维工具提供一定的系统恢复能力。

3、工具介绍

云峦KeyarchOS系统异常定位分析工具KSysAK是云峦操作系统研发及运维人员总结开发及运维经验,在龙蜥开源项目SysAK的基础上,设计和研发的多个运维工具的集合,可以覆盖系统的日常监控、线上问题诊断和系统故障修复等常见运维场景。工具的整体设计上,力图让运维工作回归简单,让系统运维人员不需要深入了解内核就能找出问题的所在。

640.png

KSysAK工具功能架构图

4、功能特性

作为一款功能全面的服务器操作系统运维工具包,KSysAK由一系列子工具组成,这些工具针对网络(例如pingtrace)、内存(如memleak)、调度(如runlatency)以及系统健康检查(如ossre)等方面的日常运维任务提供了强大支持。KSysAK具备两种工作模式:监控模式和诊断模式,以适应不同的运维需求。具体说明如下:

监控模式

在监控模式下,KSysAK会持续在后台运行,实时监控系统的关键性能指标,包括CPU、内存、网络、文件IO以及内核管理结构等资源。这有助于运维人员进行细粒度的运维调度和资源控制,确保系统稳定运行。

诊断模式

诊断模式是一种随用随启的工作方式,主要用于系统出现异常时分析问题的根本原因。它提供了专门针对负载异常、网络抖动、内存泄漏、I/O异常、性能瓶颈等问题的诊断工具。该模式旨在降低工具的复杂性,提高易用性,使用户更容易理解和使用诊断结果。诊断模式适用于出现问题时的即时分析和故障修复。

通过这两种模式的结合,KSysAK能够有效地对系统进行日常监控和问题诊断,帮助运维人员及时发现并解决系统中出现的各种问题,保证系统的高效稳定运行。

5、技术架构

KSysAK目前主要包含十个工具,并根据实现的方式不同划分为三类:

  • 基于内核模块的工具:对内核实现一些增强功能,需要通过内核模块的方式来进行实现基础框架用于对系统资源的监控和诊断。
  • 基于eBPF的工具:对于一些内核的跟踪与诊断,可以基于eBPF获取tarce信息,其中的组件包括pingtrace,tracesig。
  • 用户层工具:使用操作系统现有系统监控及检测工具获取所需数据并对系统进行诊断,其中的组件包括loadtask、sysmonitor、swap、ossre_client和cpuriq。

640.png

KSysAK工具技术架构图

6、应用场景

KSysAK在KeyarchOS操作系统中主要面向场景包括数据库、分布式存储、虚拟化、云原生等。为金融、电信、互联网等行业客户提供全栈可观测能力,实现操作系统的全方位监控和故障诊断能力。

网络抖动诊断分析:

网络抖动具有“高频率复发、问题根因攻克难”的特征,一直是困扰运维人员的老大难问题,尤其是当前云计算场景下,网络拓扑复杂,业务承载形态多样,容器、虚拟机和传统物理机并存,主流业务应用呈现微服务众多、多语言开发、多通信协议等特征趋势,这给运维人员定位网络抖动问题带来巨大挑战。

KSysAK内置网络抖动分析工具pingtrace,帮助运维人员快速直观的分析网络抖动异常。pingtrace通过在用户态构造探测协议报文,在独有的 pingtrace 头部增加 icmp、 tcp及udp 协议头,可以进行多种协议探测,同时基于eBPF 技术,以内核无侵入的方式窥探系统内部细节,开销远远小于 tcpdump 等已有工具,并可实时展示各个数据链路的时延信息,快速发现问题边界。

pingtrace分为客户端和服务端,客户端会像服务端发送自定义的ICMP,server会解析数据包并返回数据包,返回的数据包办好 报文时间错,系统中断延时、调度延时等信息,通过在client端的数据聚会,综合分析,给出网络时延的精确原因。

640.png

640.png

调度延迟诊断分析:

Load作为服务器运行负载的一个典型指标,经常被运维人员用于评价系统运行是否良好的一个关键因素。运维人员可以方便的拿到当前是哪些进程导致Load过高,但如何分析导致load过高的原因,需要专业的操作系统知识储备。

KSysAK内置的loadtask用于load异常根因分析,运维人员可以轻松上手分析load异常,loadtask会进行全方位的系统分析,除获取进程运行栈外,还自动分析内存压力、cpu 压力、IO压力、系统错误,并将这些因素和进程栈进行关联,跟当前进程对照,上下文结合,给出最后精确的 Load 异常原因,让运维人员直接根据这个作出决策。结果呈现上,ksysak loadtask支持输出基于火焰图的可视化分析结果。

640.png

后续KSysAK工具会持续丰富监控和诊断工具,大家敬请期待!

关注我们

Copyright © 2024 浪潮信息 鲁ICP备13028953号-12

售前咨询

售后服务

回到顶部

回到顶部

售前咨询
售后服务