2022云栖精选-系统运维利器,百万服务器运维实战总结!一文了解最新版SysAK

简介: 张毅阿里云智能高级技术专家

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

一、SysAK框架介绍

image.png

SysAK全称System Analyse Kit,是龙蜥系统运维SIG我们通过对过往百万服务器运维经验进行抽象总结,提供一个全方位系统运维工具集,可以覆盖系统日常监控、线上问题诊断和系统故障修复等常见运维场景。主要包括三个方面

l  系统监控:针对各种系统资源(CPU、内存、网络、文件IO、内核管理结构等)提供更精细化资源监控,帮助业务运维实现细粒度运维调度,高效运用资源

l  系统诊断:诊断的典型问题如负载异常、网络抖动、内存泄漏、io毛刺、性能瓶颈、应用异常等,针对性提供工具,同时尽量减少工具的专业性,让用户更易使用和解读。

l  系统介入:主要针对故障注入、系统恢复和故障隔离3种情况提供系统介入的能力。

image.png

SysAK 框架包括两大模式,分别为监控模式和诊断模式。

系统资源瓶颈指标包括CPU瓶颈、内存瓶颈网络瓶颈IO 瓶颈通过瓶颈监控可以发现应用运行过程中对资源依赖度,再通过依赖度有效配合其他数据,对应用做合理调度资源分配

除了硬件四大资源之外,系统软件本身也也存在瓶颈,比如Linux内核系统实现各种文件句柄、cache、共享资源访问过程中都有可能会产生并发瓶颈SysAK 针对于此也做了很多工作。

干扰是应用运行过程中是比较常见因素,会引发抖动或运行中断等。针对目前云原生的趋势下,SysAK实现了容器资源可视化。

诊断模式及时发现问题根据问题根因做诊断,随用随起根据用户运维场景目前支持这三类:

l  系统负载分析:系统负载时系统运维过程中的典型问题,可以针对于此进行根因分析,避免影响进程堆栈。

l  系统健康一键诊断:比如对系统各个资源维度进行分析,查看配置是否合理等。

l  IO问题自动诊断:比如分析IO 打满,是应用瓶颈还是业务底层存储瓶颈导致

除了用户场景,我们也针对高级技术人员提供了更深层次的数据诊断,比如系统调用数据耗时较长的函数中断运行统计、调度模块内存模块延时抖动、内存泄露等,会根据每个子系统特点做专项功能诊断。

SysAK已经在龙蜥开源,我们希望更多开发者加入运维发展得更好。

image.png

SysAK通过松散耦合、依赖管理、多架构多版本的构建支持等方式保障工具的开发者仅需一次开发、无需额外工作,即可在主流的架构和操作系统版本上集成。


二、SysAK监控场景应用

image.png

SysAK的监控服务mservice主要提供了资源监控、异常告警、根因分析三大能力。其中异常告警功能会设定特殊阈值,提供告警,并进行自动分析。

image.png

SysAK能够利用增强指标监控容器资源的使用,主要依托于龙蜥 OS 内核增强特性以及SysAK 本身的扩展。

计算资源方面:包括容器负载运行和阻塞任务数。

内存资源方面:内存使用过程中会频繁遇到瓶颈,主要针对延迟做了增强监控。内存回收延迟包括全局内存回收和容器内存回收,两者都都会影响容器服务运行状态。因此我们对回收延迟分布以及规整次数做了统计根据统计结果判断容器业务运行过程是否遇到瓶颈。

IO资源方面:包括容器读写等待时间、排队个数以及平均字节数。

image.png

抖动是日常运维过程偶发的问题偶发过程中难以采集实际根因数据如果数据采集过多,会影响整体系统性能;而采集过少则不足以分析问题根因。引发业务抖动的原因可以总结为以下三类:

① 进行/线程调度延迟:比如运行队列挤压排队时间过长以及高优先级应用抢占或本身调度策略设置不合理。

② 中断和软中断响应不及时:业务运行过程会依赖于中断和软中断执行过程,包括网络收发包IO 读写等。因此可以分析关中断时长来判断中断的响应时间

③ 内核态执行过长:包括系统本身存在瓶颈以及内核里其他资源竞争等情况

上述三大类原因基本能够覆盖70%-80%的抖动根因,因此针对以上三类问题进行检测,大多可以解决抖动问题。

image.png

SysAk系统健康告警做了增强。

比如应用没有发生抖动,但突然,长时间的积累会导致系统进入不可用状态比如夯机。夯机会造成较大影响,且大多不可恢复。但在此之前可以通过多种手段提前预警,比如可以通过算法查看夯机影响指标,判断是否会发生夯机,提前做健康度预判等。主要判断指标包括调度的延迟、内核态锁竞争时延、内存回收时延等。

结合过往经验,我们将当前的异常参考阈值定为50%

image.png

SysAK目前主要用于单机诊断和监控,而除了在机器上使用SysAK mservice命令直接查看数据外,也支持以http端口的形式对外提供数据服务,如上图。同时,也可根据数据做图形化展示。


三、未来演进路线

image.png

未来,除了完善工具本身的使用场景,我们将持续增强SysAK的其他能力。目前,SysAK仅能在系统级做诊断,后续我们也将考虑从应用级别做诊断为应用诊断提供更多数据。

另外,我们也希望 SysAK 工具持续发展,作为运维平台技术数据采集发挥特性,因此会着重于平台插件化。目前,它已经作为SysOM和云监控的组件在使用,未来希望能够作为Prometheus插件扩展以满足更多场景。

相关地址链接:
系统运维SIGhttps://openanolis.cn/sig/sysom

源码官网:https://gitee.com/anolis/sysak

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
23天前
|
运维 Ubuntu 应用服务中间件
自动化运维之路:使用Ansible进行服务器管理
在现代IT基础设施中,自动化运维已成为提高效率和可靠性的关键。本文将引导您通过使用Ansible这一强大的自动化工具来简化日常的服务器管理任务。我们将一起探索如何配置Ansible、编写Playbook以及执行自动化任务,旨在为读者提供一条清晰的路径,从而步入自动化运维的世界。
|
21天前
|
运维 网络安全 Python
自动化运维:使用Ansible实现批量服务器配置
在快速迭代的IT环境中,高效、可靠的服务器管理变得至关重要。本文将介绍如何使用Ansible这一强大的自动化工具,来简化和加速批量服务器配置过程。我们将从基础开始,逐步深入到更复杂的应用场景,确保即使是新手也能跟上节奏。文章将不包含代码示例,而是通过清晰的步骤和逻辑结构,引导读者理解自动化运维的核心概念及其在实际操作中的应用。
|
21天前
|
存储 监控 调度
云服务器成本优化深度解析与实战案例
本文深入探讨了云服务器成本优化的策略与实践,涵盖基本原则、具体策略及案例分析。基本原则包括以实际需求为导向、动态调整资源、成本控制为核心。具体策略涉及选择合适计费模式、优化资源配置、存储与网络配置、实施资源监控与审计、应用性能优化、利用优惠政策及考虑多云策略。文章还通过电商、制造企业和初创团队的实际案例,展示了云服务器成本优化的有效性,最后展望了未来的发展趋势,包括智能化优化、多云管理和绿色节能。
|
22天前
|
运维 Ubuntu 网络协议
自动化运维:使用Ansible进行服务器配置管理
在现代IT架构中,自动化运维已成为提升效率、减少人为错误的关键。本文将介绍如何使用Ansible这一强大的自动化工具来简化和标准化服务器的配置管理过程。通过具体的代码示例和操作步骤,我们将展示如何快速部署应用、管理配置以及自动化日常任务,从而确保环境的一致性和可靠性。
|
25天前
|
安全 云计算
服务器系统资源不足怎么办
服务器系统资源不足怎么办
28 4
|
1月前
|
弹性计算 监控 数据库
制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程
本文通过一个制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程,展示了企业级应用上云的实践方法与显著优势,包括弹性计算资源、高可靠性、数据安全及降低维护成本等,为企业数字化转型提供参考。
59 5
|
1月前
|
运维 安全 Ubuntu
自动化运维:使用Ansible进行服务器配置管理
在现代IT基础设施中,自动化运维是确保高效、稳定和安全服务的关键。本文将深入介绍如何使用Ansible这一开源工具来简化服务器配置管理工作,从基础安装到高级应用,我们将一步步展示如何通过Ansible Playbooks实现自动化部署和维护,旨在帮助读者构建更加灵活和可扩展的运维体系。
43 7
|
1月前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
1月前
|
缓存 监控 数据库
提高服务器响应速度是提升用户体验和系统性能的关键
提高服务器响应速度是提升用户体验和系统性能的关键
38 3
|
1月前
|
运维 监控 应用服务中间件
自动化运维的利器:Ansible实战应用
【10月更文挑战第41天】在现代IT运维领域,自动化已成为提高效率、减少错误的关键。Ansible作为一种简单而强大的自动化工具,正被越来越多的企业采纳。本文将通过实际案例,展示如何使用Ansible简化日常运维任务,包括配置管理和批量部署等,旨在为读者提供一种清晰、易懂的自动化解决方案。
28 1

热门文章

最新文章