认识A-Tune
简介
操作系统作为衔接应用和硬件的基础软件,如何调整系统和应用配置,充分发挥软硬件能力,从而使业务性能达到最优,对用户至关重要。然而,运行在操作系统上的业务类型成百上千,应用形态千差万别,对资源的要求各不相同。当前硬件和基础软件组成的应用环境涉及高达7000多个配置对象,随着业务复杂度和调优对象的增加,调优所需的时间成本呈指数级增长,导致调优效率急剧下降,调优成为了一项极其复杂的工程,给用户带来巨大挑战。
其次,操作系统作为基础设施软件,提供了大量的软硬件管理能力,每种能力适用场景不尽相同,并非对所有的应用场景都通用有益,因此,不同的场景需要开启或关闭不同的能力,组合使用系统提供的各种能力,才能发挥应用程序的最佳性能。
另外,实际业务场景成千上万,计算、网络、存储等硬件配置也层出不穷,实验室无法遍历穷举所有的应用和业务场景,以及不同的硬件组合。
为了应对上述挑战,openEuler推出了A-Tune。
A-Tune是一款基于AI开发的系统性能优化引擎,它利用人工智能技术,对业务场景建立精准的系统画像,感知并推理出业务特征,进而做出智能决策,匹配并推荐最佳的系统参数配置组合,使业务处于最佳运行状态。
架构
A-Tune核心技术架构如下图,主要包括智能决策、系统画像和交互系统三层。
- 智能决策层:包含感知和决策两个子系统,分别完成对应用的智能感知和对系统的调优决策。
- 系统画像层:主要包括自动特征工程和两层分类模型,自动特征工程用于业务特征的自动选择,两层分类模型用于业务模型的学习和分类。
- 交互系统层:用于各类系统资源的监控和配置,调优策略执行在本层进行。
支持特性与业务模型
支持特性
A-Tune支持的主要特性、特性成熟度以及使用建议请参见表1。
表 1 特性成熟度
支持业务模型
根据应用的负载特征,A-Tune将业务分为11大类,各类型的负载特征和A-Tune支持的应用请参见表2。
表 2 支持的业务类型和应用
业务大类 | 待规划的应用 | |||
N/A | ||||
N/A | ||||
N/A | ||||
Hadoop-hdfs、Hadoop-spark | ||||
N/A | ||||
N/A | ||||
N/A | ||||
N/A | ||||
网络瓶颈、IO瓶颈 | Ceph | |||
virtualization | 虚拟化 | 算力瓶颈、内存瓶颈、IO瓶颈 | Consumer-cloud、Mariadb | N/A |
docker | 容器 | 算力瓶颈、内存瓶颈、IO瓶颈 | Mariadb | N/A |