简介:系统运维SIG致力于打造一个集主机管理、配置部署、监控报警、异常诊断、安全审计等一系列功能的自动化运维平台。

OpenAnolis 龙蜥社区(以下简称“龙蜥社区”)正式成立系统运维(System Operation&Maintenance, sysOM)SIG。阿里云和统信软件作为系统运维 SIG 的联合发起方,将携手龙蜥社区开发者一道,努力在自动化运维领域构建强大的生态体系,促进系统运维 SIG 的相关项目快速部署于广大的业务场景。

系统运维 SIG 目标是致力于打造一个集主机管理、配置部署、监控报警、异常诊断、安全审计等一系列功能的自动化运维平台。探索和实现创新的 sysAK 工具、高效的 LCC(Libbpf  Compiler Collection)开发编译平台及 netinfo 网络抖动监控系统等,实现系统问题的快速上报、分析与解决,提升集群的全自动运维效率,与社区合作伙伴一道共同构建大规模集群运维生态链。还记得我们的非典型程序猿青囊吗?在前几期的云巅论剑微信公众号里,我们介绍了sysAK 的 memleak 检测工具coredump 瘦身技术以及网络抖动监控利器netinfo,外部开发者对我们这个工具集表达了强烈期待,今天,我们将把系统运维 SIG 的第一个项目,隆重的介绍给大家,并将其正式开源。

什么是 sysAK

sysAK,全称是 system analyse kit(中文名青囊),基础来自于阿里百万服务器的多年运维经验,通过对这些经验进行抽象总结出典型场景,针对不同的运维需求提供了一系列工具,形成统一的产品进行服务。工具集包含了很多强大的底层系统运维能力,这些工具融合到了不同产品的运维平台中,实现高效的自动化运维。

sysAK 诞生背景

在系统运维过程中,资源监控与利用、问题排查与解决是核心诉求,怎么样做到这些,需要一系列的操作系统底层能力与工具,这些能力与工具目前比较多的分散在不同的场景,怎么有效的整合去发挥他们的作用以及更方便的在系统上进行部署,缺少一个整体的方案,特别是在现代云计算中心中,集群大规模的机器通常包含不同的业务场景、系统及硬件平台,对这些能力与工具也有着非常高的要求。同时目前很多现有的工具对专业知识要求过高,对普通运维人员来说存在不低的门槛。因此 sysAK 诞生的目标是通过统一的跨平台工具集补齐系统运维现有能力,并高效易用的发挥作用。

sysAK 技术特点

由于不断发展和变化的复杂业务环境,工具集也需要持续迭代,以期望覆盖更多的场景,因此希望通过社区合作,共同打造出这个跨平台的统一工具集。为此,sysAK 在技术实现上采用包容的框架:

工具集支持多种语言格式,c、shell、python、go 等,方便不同语言习惯的开发者进行开发,快速集成;同时针对需要采集系统内核数据的情况,也同时兼容 Linux kernel module 和 eBPF 两种技术,对内核版本不做限制。当然除了功能外,sysAK 还首提自我资源控制的概念,避免工具运行过程中对系统的资源消耗和产生大的干扰。

sysAK 核心能力

目前工具集覆盖系统运维典型场景,包括三大类功能:

1、线上问题分析诊断:

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

2、资源监控:

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

3、系统介入:

  • 主要针对 2 种情况提供系统介入能力:

一是问题分析诊断时,需要验证特定 case 或模拟注入才能真实确定问题进行修复;

二是总有不可预期的问题会发生,对于业务来说很多问题发生后,怎样快速恢复和止损才是第一要务,对于不是整机异常的问题(系统级死锁、夯机),提供介入能力对系统进行恢复或故障隔离等。

sysAK 规划

sysAK 在龙蜥社区开源,并采取 SIG 共建协作模式,每季度发布新版本更新,包含关键 bug 修复和新特性、新能力,并逐步将产品完整能力开源。

目前已将代码放到了龙蜥社区进行了托管,先期开源的代码除包括基础开发平台、以及前面大家非常关注的内存泄漏工具(memleak,见 AK47 所向披靡一文)外,另外还包含了一些常用的工具:loadtask(系统负载分析)、runlatency(系统抖动分析)、sysmonitor(sys cpu异常自动数据抓取)、taskctl(进程异常注入)、tracesig(进程信号跟踪)、cpuirq(中断信息分析)。sysAK 里会逐步集成和开放很多其他强大的工具,下一阶段开放的重点工具包括:

netinfo—网络状态实时监控与分析,精确分析网络问题

ossre—沉淀阿里云运维知识库,自动分析快速识别已知问题

appscan—进程性能瓶颈快速界定,业务调优利器,在多个客户现场调优中发挥了实际作用

ulockcheck—应用锁分析工具

sysconf—系统配置差异精准分析,辅助业务调优与分析变更导致的问题

sysAK 项目地址:代码组

原文链接

本文为阿里云原创内容,未经允许不得转载。

龙蜥社区成立系统运维SIG,重磅开源sysAK系统运维工具集的更多相关文章

  1. 一站式云原生体验|龙蜥云原生ACNS + Rainbond

    关于 ACNS 龙蜥云原生套件 OpenAnolis Cloud Native Suite(ACNS)是由龙蜥社区云原生 SIG 推出的基于 Kubernetes 发行版本为基础而集成的套件能力,可以 ...

  2. 长沙4月21日开发者大会暨.NET社区成立大会活动纪实

    活动总结 2019年4月21日是一个斜风细雨.微风和煦的美好日子,由长沙.NET技术社区.腾讯云云加社区.微软Azure云技术社区.中国.NET技术社区.长沙柳枝行动.长沙互联网活动基地(唐胡子俱乐部 ...

  3. CentOS即将停止维护,拥抱阿里“龙蜥“(Anolis OS),VMware安装Anolis OS与介绍

    一.前言 大家在自己电脑来进行服务器的一些操作时,基本都是使用CentOS 7或者是CentOS 8,但是2021年底CentOS 8宣布停止了维护:CentOS 7 在2024年6月30日也会停止维 ...

  4. 安全运维中基线检查的自动化之ansible工具巧用

    i春秋作家:yanzm 原文来自:安全运维中基线检查的自动化之ansible工具巧用 前几周斗哥分享了基线检查获取数据的脚本,但是在面对上百台的服务器,每台服务器上都跑一遍脚本那工作量可想而知,而且都 ...

  5. VC、OpenGL、ArcGIS Engine开发的二维三维结合的GIS系统

    一.前言 众所周知,二维GIS技术发展了近四十年,伴随着计算机软硬件以及关系型数据库的飞速发展,二维GIS技术已日臻完善.在对地理信息的分析功能上有着无可比拟的优势.一些宏观的地理信息,一维的地理信息 ...

  6. Java知识系统回顾整理01基础06数组06二维数组

    一.一维数组和二维数组 这是一个一维数组, 里面的每一个元素,都是一个基本类型int int a[] =new int[]{1,2,3,4,5}; 这是一个二维数组,里面的每一个元素,都是一个一维数组 ...

  7. 2015十大顶级开源ERP系统点评

    如今,企业资源规划(ERP)和客户关系管理(CRM)系统的必要性已经被各种组织和企业所认可:ERP和CRM能够直接为企业的业务效率和利润做出贡献. 但是随着今天企业商业形态的日趋多样化,互联网新经济的 ...

  8. 想要搭建个论坛?Guide哥调研了100来个 Java 开源论坛系统,发现这 5 个最好用!

    大家好!我是 Guide 哥,Java 后端开发.一个会一点前端,喜欢烹饪的自由少年. 最近有点小忙.但是,由于前几天答应了一位读者自己会推荐一些开源的论坛系统,所以,昨晚就简单地熬了个夜,对比了很多 ...

  9. ios 中生成二维码和相册中识别二维码

    iOS 使用CIDetector扫描相册二维码.原生扫描 原生扫描 iOS7之后,AVFoundation让我们终于可以使用原生扫描进行扫码了(二维码与条码皆可)AVFoundation可以让我们从设 ...

  10. 开源社交系统ThinkSNS v4.6.1更新日志及功能详解!

    ThinkSNS 开源社交系统 v4.6.1更新日志 [修复]聊天无法使用emoji问题 [修复]后台禁用用户后,app第三方登录可登录问题 [修复]部分接口问题 [修复]h5个人中心获取用户信息问题 ...

随机推荐

  1. x86架构的内存溢出攻击原理演示(加强对计算机运行原理的理解,说明内存溢出的危害)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  2. 简单使用vim编辑器的用法

    vim的使用笔记可以涵盖很多内容,以下是一些基本操作和常见命令的简要总结: 启动Vim 打开或创建文件:vim filename 基本模式切换 正常模式(Normal Mode):启动时默认进入此模式 ...

  3. Cesium之CustomShader

    1. 引言 Cesium自1.87.1版本,开始支持3DTileset使用CustomShader: Added CustomShader class for styling Cesium3DTile ...

  4. postgresql关于array类型有交集(包含查询数据任意元素,有重叠&&)的一些查询方法以及sqlalchemy语句实现

    表接结构如下 class MachineFixDoc(Base): """ 设备报修单,代理或用户向公司申请报修 """ __tablena ...

  5. KingbaseES 物化视图与源表的依赖关系

    KingbaseES例程_重建物化视图的源表 概述 数据结构的修改步骤,数据表先删除,然后创建.如果数据表是物化视图的源表,则提示依赖关系. Oracle的实施 创建数据表和物化视图 create t ...

  6. 【Java】归并排序

    代码: 1 public static void mergeSort(int[] arr) { 2 if (arr == null || arr.length < 2) { 3 return; ...

  7. Impala 高性能、低延迟的大数据查询引擎

    Impala是什么? Impala提供对大数据更快速,交互式 SQL查询. Impala支持对存储在HDFS.HBase及S3等数据查询. Impala使用和Hive相同的元数据.SQL定义.ODBC ...

  8. #位运算#CF959E Mahmoud and Ehab and the xor-MST

    题目 \(n\)个点的完全图标号为\([0,n-1]\),\(i\)和\(j\)连边权值为\(i\: xor\:j\),求MST的值 分析 考虑MST有两种解法一种是Prim一种是Kruskal,Pr ...

  9. Spring内存马分析

    环境搭建 踩了很多坑....,不过还好最后还是成功了 IDEA直接新建javaEE项目,然后记得把index.jsp删了,不然DispatcherServlet会失效 导入依赖: <depend ...

  10. C++读取配置文件ini

    一.设置 ini 保存位置 // 保存到 appdata 中 LPCWSTR GetIniPath() { WCHAR buffer[MAX_PATH]; BOOL result = SHGetSpe ...