1.背景
在CentOS停更,国有企业纷纷摒弃原有的开发与运维工具,全面拥抱国产。我司也顺应号召,更换原有CentOS系统。
在新系统选型上,我司有以下要求:
- 国产、快速更新迭代、社区活跃;
- 拥有一定知名度,在市场有保有一定份额;
- 后期维护友好,提供7*24小时服务;
- 稳定可靠,广泛兼容;
- 迁移快捷;
- 提供一系列监控、系统修复、问题诊断工具;
由于我司运维人员较少,我们最关注的就是如何减少运维成本和提供强力有效的运维工具。所以在一众产品中,选择浪潮信息云峦KeyarchOS。
2.什么是KeyarchOS
KeyarchOS是一款基于Linux内核、龙蜥等开源技术自主研发的一款服务器操作系统,广泛兼容传统 CentOS 生态产品和创新技术产品,可为用户提供整套可视CentOS to KeyarchOS 迁移方案。
KeyarchOS可广泛应用于大数据、云计算、人工智能、海量存储等应用场景,支持光盘、U盘、PXE 等安装方式,具备稳定可靠、高效软硬协同、全天候智能化运维、安全可信等特性,增强了对云计算、人工智能等场景的支持,性能稳定性领先,生态完善,符合金融、能源、交通、通信、教育、医疗等关键行业的应用要求。在服务器操作系统领域,从最早的 KUX 开始,浪潮信息已经有 10 余年的研发和技术经验,相关产品在关键行业广泛应用,累计装机超 20 万台
3.KeyarchOS特点
3.1 强安全性
在 Linux 安全特性的基础上,采用 TCM/TPM 可信启动、统一 PAM 认证模块、多因子认证、国密算法、主机加固软件、CVE 漏洞发现与修复等多种安全策略和安全机制,为用户提供全方位的安全防护体系。
3.2 高可用、高可靠
KeyarchOS可作为数据库服务器、应用服务器、虚拟机 GuestOS 使用,以及操作系统数据中心建设的基础。KeyarchOS提供多节点高可用部署的底层支持,支持主/主,主/从,N+1,M+N 的多种混合部署策略,系统采用热补丁升级及漏洞修复机制,内核在不停机状态下进行升级和漏洞修复,进一步提升 KOS 系统内核的不停机时间,有效提高了操作系统的可靠性,保证用户业务的连续性。
3.3 多种服务
提供产品使用指导、远程技术支持、系统安装部署支持服务、版本升级服务、现场巡检服务、迁移服务、现场支持服务等多种服务,保证7*24小时服务支持。
3.4 全天候智能化运维-排障&调优工具
提供智能化运维工具 ,覆盖系统的日常监控、线上问题诊断和系统故障修复等常见运维场景 。工具的整体设计上,力图让运维工作回归简单,让系统运维人员不需要深入了解内核就能找出问题的所在。
4.智能化运维工具KSysAK的强大之处
最终我司选择KeyarchOS,KSysAK工具起到一锤定音的作用。下面将着重介绍KSysAK的强大之处。
Linux操作系统内存泄露是指在程序运行或操作系统运行过程中,进程无法正确释放已经不再使用的内存空间,导致内存消耗过高的,内存泄露可能导致系统性能下降,甚至引起系统崩溃,严重影响系统的稳定性和可靠性。Linux内核内存分配有几种不同的机制,其中包括slab、page。
slab通过预先分配一些固定大小的内存块,再从这些内存块中分配和回收内存。当需要分配一个内存对象时,slab分配器会从空闲的slab选取并分配。
page是内核通过页来分配和管理物理内存。在页分配时,内核会将物理内存分为大小为4KB的页框,并将这些页框映射到虚拟内存空间中。
4.1 page内存泄露检测
KeyarchOS默认初始化ksysak,当获取到服务后,执行以下命令即可。
ksysak memleak -t page -i 60
执行完毕后,屏幕会输出以下信息,其中包括正在执行的shell命令和未释放的内存汇总,可以发现目前系统很健康。
下面加载模拟page 内存泄露的程序,再次执行上文命令。
在未释放内存列表中记录了申请page页的进程,进程id, 指针, page也存在时间, 函数调用的堆栈信息等。在未释放内存汇总中会记录相同函数申请page页的数量大小等,以及函数名称等,并按降序进行排列,通过输出,可以精确定位问题。
4.2 slab 内存泄露检测
获取到服务后,执行以下命令。
ksysak memleak -t slab -i 60
此时未发现slab内存泄漏。
接下来加载模拟slab内存泄露的程序。
在未释放内存汇总中会记录被未释放slab内存被标记的函数申请的次数, 函数名, 标记次数,泄露的slab基本信息,疑似泄露object的指针及相似object的数量,以及疑似泄露的函数名及地址。通过输出,可以准确定位到泄漏函数。
4.3 OS异常分析
执行以下命令,可以输出OS异常分析。
ksysak ossre_client -d
OS异常分析提供以下输出:
- 检查是否存在硬件错误,如内存,硬盘错误,并给出修复建议;
- 扫描系统配置文件,给出可能需要优化的配置建议;
- 扫描操作系统软件版本, 给出补丁建议;
- 监测CPU,内存, 存储等使用情况,当使用量达到阈值时,给出警告信息;
- 扫描系统日志文件,根据日志中的error信息,给用户提示可能导致的原因及修复方法;
- 通过读取coredump文件,给用于提示系统panic原因及修复方法;
4.4 检测系统中延迟抖动
服务器操作系统运行过程中,对应用运行的干扰源可能会很多,但干扰不一定会对业务造成影响,所以至少需要包含这些干扰源的频率和运行时间,来评估是否是关键因素。
Runlatency 作为系统运维工具KSysAK的一个子工具,用于诊断系统中可能影响应用运行延迟抖动的地方并输出延迟因素。
通过以下操作可以操作Runlatency:
- 执行ksysak runlatency -e 启动延迟抖动监控
- 执行ksysak runlatency -r ./out , 将监控数据输出到out目录下
- 执行ksysak runlatency -d 关闭监控
查看out目录下的输出结果如下:
包括nosch、 hard、 soft 类型的延迟信息、所属CPU、进程id、延时时间、命令行、堆栈信息等。
5.使用感受
在体验过程中,相对于传统操作系统,有以下优点:
- 在保证原有系统流程下,操作与命令更加细腻,易上手,功能更多。
- 预安装智能运维工具,无需额外购买与安装。
- 日志输出汉语,国人使用更加方便。
- CentOS迁移至KeyarchOS简洁快速。
- 监控软件KSysAK简单快捷,操作方便,输出明了。
在实际体验中,KSysAK非常好用,简单的命令就可以将用户关注的服务器数据全部输出,同时希望厂家能够丰富监控套件,完善智能运维生态,比如加入一键解决内存泄漏工具、监控报警、一键优化系统等功能。
6.总结
在近期体验中,KeyarchOS提供良好的用户体验,适配达梦数据库、金蝶、宝蓝德等一系列国产软件,将全流程国产化推向进程。
同时方便快捷的迁移流程,强大简易的智能化运维工具令人爱不释手。相对于传统linux系统,KeyarchOS更加细腻,图形化界面设计更加符合国人操作习惯。
如果感兴趣,可以访问官网获取激活码即刻体验呦。