龙蜥社区成立系统运维SIG,重磅开源sysAK系统运维工具集
简介:系统运维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系统运维工具集的更多相关文章
- 一站式云原生体验|龙蜥云原生ACNS + Rainbond
关于 ACNS 龙蜥云原生套件 OpenAnolis Cloud Native Suite(ACNS)是由龙蜥社区云原生 SIG 推出的基于 Kubernetes 发行版本为基础而集成的套件能力,可以 ...
- 长沙4月21日开发者大会暨.NET社区成立大会活动纪实
活动总结 2019年4月21日是一个斜风细雨.微风和煦的美好日子,由长沙.NET技术社区.腾讯云云加社区.微软Azure云技术社区.中国.NET技术社区.长沙柳枝行动.长沙互联网活动基地(唐胡子俱乐部 ...
- CentOS即将停止维护,拥抱阿里“龙蜥“(Anolis OS),VMware安装Anolis OS与介绍
一.前言 大家在自己电脑来进行服务器的一些操作时,基本都是使用CentOS 7或者是CentOS 8,但是2021年底CentOS 8宣布停止了维护:CentOS 7 在2024年6月30日也会停止维 ...
- 安全运维中基线检查的自动化之ansible工具巧用
i春秋作家:yanzm 原文来自:安全运维中基线检查的自动化之ansible工具巧用 前几周斗哥分享了基线检查获取数据的脚本,但是在面对上百台的服务器,每台服务器上都跑一遍脚本那工作量可想而知,而且都 ...
- VC、OpenGL、ArcGIS Engine开发的二维三维结合的GIS系统
一.前言 众所周知,二维GIS技术发展了近四十年,伴随着计算机软硬件以及关系型数据库的飞速发展,二维GIS技术已日臻完善.在对地理信息的分析功能上有着无可比拟的优势.一些宏观的地理信息,一维的地理信息 ...
- Java知识系统回顾整理01基础06数组06二维数组
一.一维数组和二维数组 这是一个一维数组, 里面的每一个元素,都是一个基本类型int int a[] =new int[]{1,2,3,4,5}; 这是一个二维数组,里面的每一个元素,都是一个一维数组 ...
- 2015十大顶级开源ERP系统点评
如今,企业资源规划(ERP)和客户关系管理(CRM)系统的必要性已经被各种组织和企业所认可:ERP和CRM能够直接为企业的业务效率和利润做出贡献. 但是随着今天企业商业形态的日趋多样化,互联网新经济的 ...
- 想要搭建个论坛?Guide哥调研了100来个 Java 开源论坛系统,发现这 5 个最好用!
大家好!我是 Guide 哥,Java 后端开发.一个会一点前端,喜欢烹饪的自由少年. 最近有点小忙.但是,由于前几天答应了一位读者自己会推荐一些开源的论坛系统,所以,昨晚就简单地熬了个夜,对比了很多 ...
- ios 中生成二维码和相册中识别二维码
iOS 使用CIDetector扫描相册二维码.原生扫描 原生扫描 iOS7之后,AVFoundation让我们终于可以使用原生扫描进行扫码了(二维码与条码皆可)AVFoundation可以让我们从设 ...
- 开源社交系统ThinkSNS v4.6.1更新日志及功能详解!
ThinkSNS 开源社交系统 v4.6.1更新日志 [修复]聊天无法使用emoji问题 [修复]后台禁用用户后,app第三方登录可登录问题 [修复]部分接口问题 [修复]h5个人中心获取用户信息问题 ...
随机推荐
- 关于进程同步与互斥的一些概念(锁、cas、futex)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明 无 前言 最近为了实现在android lin ...
- drf(JWT认证)
一. jwt实现过程 1. 构建jwt过程 第一: 用户提交用户名和密码给服务端,如果登录成功,使用jwt创建一个token,并给用户返回 eyJ0eXAiOiJqd3QiLCJhbGciOiJIUz ...
- Android实际开发bug大总结
目录介绍 1.1 java.lang.UnsatisfiedLinkError找不到so库异常 1.2 java.lang.IllegalStateException非法状态异常 1.3 androi ...
- C# 12 拦截器 Interceptors
拦截器Interceptors是一种可以在编译时以声明方式替换原有应用的方法. 这种替换是通过让Interceptors声明它拦截的调用的源位置来实现的. 您可以使用拦截器作为源生成器的一部分进行修改 ...
- Python 如何通过网易163邮箱自动发送邮件
一.发送邮件的前提是必须开通发件服务器获取对应授权密码. 二.对应代码如下所示 import smtplib from email.mime.text import MIMEText from ema ...
- 不用写一行代码!Python最强自动化神器!
1.Playwright介绍 Playwright是一个由Microsoft开发的开源自动化测试工具,它可以用于测试Web应用程序.Playwright支持多种浏览器,包括Chrome.Firefox ...
- Scala mutable.Map可变的Map
1 package chapter07 2 3 import scala.collection.mutable 4 5 object Test09_MutableMap { 6 def main(ar ...
- MySQL访问控制和用户管理
访问控制 你需要给用户提供他们所需的访问权,且仅提供他们所需的访问权.这就是所谓的访问控制,管理访问控制需要创建和管理用户账号. 多数用户只需要对表进行读和写,但少数用户甚至需要能创建和删除表: ...
- #dp,高精度#洛谷 4295 [SCOI2003]严格N元树
题目 求有多少棵严格 \(n\) 叉树深度为 \(k\) 分析 考虑往下放子孙挺难维护的,考虑在上面换新的根. 设 \(dp[i]\) 表示深度不超过 \(i\) 的方案数,那么 \(dp[i]=dp ...
- Debian 11 x64 安装 MySQL 8.0.33
更新 sudo apt update sudo apt install gnupg 安装 DEB Package wget -c https://dev.mysql.com/get/mysql-apt ...