小企业网站建设多少钱,网站开发涉及服务,硬件开发简历,站长工具爱情岛简介#xff1a;What is sysAK、典型工具介绍、开源 3 方面介绍了 sysAK 系统#xff0c;目前 sysAK 工具集已经在龙蜥社区开源#xff0c;并且在系统运维 SIG、跟踪诊断 SIG 一起共建#xff0c;希望大家后期加入 SIG 一起讨论共建。
编者按#xff1a;本文整理自「云栖…简介What is sysAK、典型工具介绍、开源 3 方面介绍了 sysAK 系统目前 sysAK 工具集已经在龙蜥社区开源并且在系统运维 SIG、跟踪诊断 SIG 一起共建希望大家后期加入 SIG 一起讨论共建。
编者按本文整理自「云栖大会龙蜥专场论坛」的技术分享。作者张毅系统运维SIG 核心人员。另龙蜥专场视频已经上线至龙蜥社区官网欢迎观看云栖大会龙蜥专场论坛。
系统运维 SIG 已在龙蜥社区建立 SIG 组。目前 sysAK 工具集已经在龙蜥社区开源并且在系统运维 SIG、跟踪诊断 SIG 一起共建希望大家后期加入 SIG 一起讨论共建。本文将从技术角度分享 sysAK 系统。
一、 What is sysAK
sysAK 是我们去年才提的概念但里面的功能来自于我们多年来在阿里百万规模的服务器运维经验。在系统运维过程中资源监控与利用、问题排查与解决是核心诉求因此 sysAK 覆盖系统运维的三大典型场景。 1、系统监控。除了常规的一些系统健康指标外sysAK 还会针对各种系统资源提供更精细化的资源监控帮助业务运维实现细粒度的运维调度和资源控制进而高效运用资源。
2、系统诊断。这是对于典型的问题做分析的覆盖比如说负载异常、网络抖动、内存泄漏、IO 毛刺、性能瓶颈、应用异常等等。
3、系统介入。这块更重要的一点是故障修复因为我们的系统运维终极目标是减少或者避免业务损失故障总是不可预期的会发生发生之后我们能快速发现和分析也需要对这个问题本身做一些修复或止血所以 sysAK 也会提供一些系统不具备但常用的故障修复手段在里面。
覆盖比较全的场景做了可用工具集其实还是不够的另外一个目标是工具怎么做的好用。好用有很多因素我认为至少要具备以下三点
1、 对普通用户来说易懂。比如说现在的一些服务越来越多系统越来越复杂现在一些工具对运维来说要去了解背后的专业知识才能使用。运维工具输出结果要直达问题的核心用户直接能看懂不管是诊断结果或是修复建议。
2、 对运行系统来说影响少。工具本身要尽量减少对系统的扰动sysAK 通过高性能实现来做并通过统一的资源框架来做管理工具可以随时随地常态化运行。这样的话对系统问题及时发现是非常有好处的。
3、 对其他平台接口友好便于被集成。sysAK 工具集可以做成标准化输出形式在大型集群平台上也可以做集群化运维。 二、典型工具介绍
下面可根据一些分类场景的典型工具来看 sysAK 是怎么达到这些目的。
系统运维的话Load 作为服务器运行负载的一个典型指标经常被运维人员用于评价系统运行是否良好的一个关键因素其计算本身是比较简单的就只是简单恒量运行任务和 IO 等待任务的数量。对于运维人员来说他可以方便的拿到当前是哪些进程导致 Load 高但背后是什么导致原因各种各样。系统错误或者硬件错误都可能会导致 Load 高只是拿到进程情况没有专业的操作系统知识是无法继续分析的。所以 loadtask 工具会进行全方位的系统分析除获取进程运行栈外还自动分析内存压力、cpu 压力、IO 压力、系统错误并将这些因素和进程栈进行关联跟当前进程对照上下文结合给出最后精确的 Load 异常原因让运维人员直接根据这个作出决策。 内存泄露是内存问题的典型场景对于内存泄露问题通常我们的一些工具也是通过分配和释放、是否匹配的模式去识别泄露点在哪里但这只是第一步工作。第二步工作才是最关键的因为分配和释放不匹配其实是正常情况下也会出现我们要对这个数据特征模式做分析排除干扰因素才能知道是否真的泄露了而这块的工作花的时间是最多的所以我们对于内核内存通过以前的历史经验总结出来了一些模型把数据分析的过程总结放在工具里面我们通过这个工具可以自动快速的找到泄露点在哪个地方。
锁竞争分析工具锁竞争是比较常见的业务效率低下或突发抖动的原因之一通过静态分析我们可以找到锁的持有者是谁但是一般业务抖动、长时间性能上不去这是动态的锁的过程ulockcheck 工具会跟踪锁的持有释放流程对持有锁的时间时长和频率进行分析真正判断出来到底是因为某一些任务持有过长还是业务竞争锁比较激烈并且给出竞争场景的上下文帮助业务开发人员精准判断出优化点在哪儿。 第四个是网络类问题网络问题分析更是专业性极强的事情通常需要抓包并分析数据报文耗费大量时间。我们开发的 PingTrace 工具通过在内部封装自定义网络报文协议在 server、clinent 对报文经过的全链路流程进行记录除各个时间段进行精准时间统计外还包括这个过程中所有的系统中断或者调度因素的影响做综合性判断把数据聚合出来最后给出时延的精确原因。 第五个是性能瓶颈快速界定工具。业界有太多针对不同场景(从应用到硬件)的专业性能调优工具找到性能瓶颈从程序或者系统级别去修改优化我们接下来有一个议题也会讲性能调优工具。appscan 工具可能更侧重于运维人员对运维人员来说通常不会涉及到业务或系统具体怎么调优这么细致的力度他更关注的是系统是否满足业务运行哪一类资源是瓶颈是否可以从运维手段上得到解决因而除了帮助优化外appscan 工具尽可能的从应用可能使用到资源的上去分析帮助运维做出决策。 最后一个工具是ossre这不是单独的工具它其实是我们内部运行的自动化诊断专家系统前端会分析数据、采集数据后端会有大数据人工智能的方式去分析这个系统能存在的问题或者是已知问题。其前端集成到了 sysAK 中也可单独使用对于一些不需要后端大量数据也可分析出的已知问题给出解决方案。 三、开源
由于不断发展和变化的复杂业务环境工具集也需要持续迭代以覆盖更多的场景因此希望通过社区合作共同打造出这个跨平台的统一工具集为此工具集支持多种语言格式c、shell、python、go 等方便不同语言习惯的开发者进行开发快速集成同时针对需要采集系统内核数据的情况也同时兼容 Linux kernel module 和 eBPF 两种技术对内核版本不做限制。 目前 sysAK 工具集的代码已经在龙蜥社区进行了托管并且在系统运维 SIG、跟踪诊断 SIG 中进行开源希望大家后期加入 SIG 一起讨论共建。谢谢
原文链接
本文为阿里云原创内容未经允许不得转载。