已合并
iSulad支持 cgroupv2测试报告 #690
AtomGit-Bot创建于 2024年5月13日
iSulad支持 cgroupv2测试报告 #690
已合并
AtomGit-Bot创建于 2024年5月13日
refs/pull/690/head合入到master
1 个文件变更+143-0
ATest_Result/openEuler_24.03_LTS/openEuler_22.03_LTS_SP4 iSulad支持cgroupv2测试报告.md+143-0
@@ -0,0 +1,143 @@
1+ 
2+ 
3+![avatar](../../images/openEuler.png)
4+ 
5+版权所有 © 2024 openEuler社区
6+ 您对“本文档”的复制、使用、修改及分发受知识共享(Creative Commons)署名—相同方式共享4.0国际公共许可协议(以下简称“CC BY-SA 4.0”)的约束。为了方便用户理解,您可以通过访问https://creativecommons.org/licenses/by-sa/4.0/ 了解CC BY-SA 4.0的概要 (但不是替代)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:https://creativecommons.org/licenses/by-sa/4.0/legalcode。
7+ 
8+修订记录
9+ 
10+| 日期 | 修订 版本 | 修改描述 | 作者 |
11+| ---------- | ----------- | -------- | ------ |
12+| 2024-05-11 | 1.0 | 创建 | 储成凯 |
13+ 
14+ 关键词: cgroup v2、isulad
15+ 
16+
17+ 
18+摘要:
19+本报告主要描述在使用cgroup v2场景下isulad进行功能有效性可靠性等方面的测试,本文对测试过程进行记录说明,给出测试评估与总结。
20+本报告主要基于openEuler 24.03-LTS版本
21+ 
22+ 
23+缩略语清单:
24+ 
25+| 缩略语 | 英文全名 | 中文解释 |
26+| ------ | -------- | -------- |
27+| | | |
28+ 
29+# 1 特性概述
30+ 
31+cgroup是linux中用于限制进程组资源的机制。cgroup目前包括两个版本,cgroup v1和cgroup v2。
32+ 
33+cgroup v2的目标是取代cgroup v1,cgroup v2相较于cgroup v1具有以下优势:
34+- 统一层次结构:cgroup v2 引入了一个统一的层次结构,将不同的资源控制(如 CPU、内存等)合并到一个层次结构中。这消除了 cgroup v1 中的分离层次结构,使得资源配置更加直观和简化。
35+- 细粒度资源控制:cgroup v2 提供了更细粒度的资源控制,允许用户对各个进程组进行更精细的资源限制和分配。它支持对 CPU、内存、IO、网络、设备等资源进行精确的控制和配额分配。
36+- 改进的性能:cgroup v2 在性能方面进行了一些改进,包括减少锁竞争和提高资源分配的效率。这可能导致更好的性能和扩展性,特别是在大规模部署和高负载环境下。
37+- cgroup v2 结合 eBPF 可以在运行时动态修改设备访问规则,而无需重新加载内核模块或重启容器。这使得容器的设备访问策略可以根据实际需求进行动态调整和更新,提高了容器环境的灵活性和可管理性。
38+ 
39+iSulad目前已支持 cgroup v2。
40+ 
41+# 2 特性测试信息
42+ 
43+本节描述被测对象的版本信息和测试的时间及测试轮次,包括依赖的硬件。
44+ 
45+| 版本名称 | 测试起始时间 | 测试结束时间 |
46+| --------------------------- | ------------ | ------------ |
47+| openEuler 24.03-LTS | 2024-04-08 | 2024-04-26 |
48+ 
49+ 
50+描述特性测试的硬件环境信息
51+ 
52+| 硬件型号 | 硬件配置信息 | 备注 |
53+| -------- | ------------ | ------ |
54+| NA | NA | 虚拟机 |
55+ 
56+# 3 测试结论概述
57+ 
58+## 3.1 测试整体结论
59+ 
60+iSulad支持cgroup v2特性测试,共计执行2397个用例,转测4轮,主要覆盖功能测试、可靠性测试、性能测试以及继承用例测试,测试过程发现有效问题5个,已提issue解决。
61+ 
62+| 测试活动 | 活动评价 |
63+| ---------- | ------------------------------------------------------------ |
64+| 功能测试 | isulad接口功能测试<br>cri接口功能测试<br>容器重启测试<br>isulad资源限制生效测试<br>不支持参数使用测试<br>buffer io限速测试<br>指定cgroup父理解功能测试 |
65+| 可靠性测试 | 持续切换cgroup版本测试<br>isulad长稳测试 |
66+| 性能测试 | isulad在cgroup切换后性能对比测试 |
67+| 继承用例测试 | 继承原先isulad的用例进行测试 |
68+ 
69+## 3.2 约束说明
70+ 
71+1. 只支持cgroup 挂载点在/sys/fs/cgroup
72+2. cgroup v1与cgroup v2混用场景不支持
73+3. 该需求只涉及cgroup v2对runc容器运行时的支持
74+ 
75+## 3.3 问题分析
76+ 
77+### 3.3.1 遗留问题影响以及规避措施
78+ 
79+无遗留问题
80+ 
81+### 3.3.2 问题统计
82+ 
83+| | 问题总数 | 严重 | 主要 | 次要 | 不重要 |
84+| ------ | ---- | ---- | ---- | ---- | ---- |
85+| 数目| 5 | 0 | 1 | 4 | 0 |
86+| 百分比| 100% | 0 | 20% | 80% | 0 |
87+ 
88+# 4 详细测试结论
89+本特性重点测试openEuler 24.03-LTS版本下的isulad在使用cgroup v2时容器相关功能的有效性。
90+ 
91+## 4.1.1 功能测试结论
92+ 
93+| 序号 | 测试点 | 质量评估 | 备注
94+| -------- | ------------ | ------ |------ |
95+| 1 | isulad接口功能测试| ■ | NA |
96+| 2 | cri接口功能测试| ■ | NA |
97+| 3 | 容器重启测试| ■ | NA |
98+| 4 | isulad资源限制生效测试| ■ | NA |
99+| 5 | 不支持参数使用测试| ■ | NA |
100+| 6 | buffer io限速测试| ■ | NA |
101+| 7 | 指定cgroup父理解功能测试| ■ | NA |
102+ 
103+## 4.1.2 可靠性测试结论
104+ 
105+| 序号 | 测试点 | 质量评估 | 备注
106+| -------- | ------------ | ------ |------ |
107+| 1 | 持续切换cgroup版本测试| ■ | NA |
108+| 2 | isulad长稳测试| ■ | NA |
109+ 
110+## 4.1.3 性能测试结论
111+ 
112+| 序号 | 测试点 | 质量评估 | 备注
113+| -------- | ------------ | ------ |------ |
114+| 1 | isulad在cgroup切换后性能对比测试| ■ | NA |
115+ 
116+## 4.1.4 继承用例测试结论
117+ 
118+| 序号 | 测试点 | 质量评估 | 备注
119+| -------- | ------------ | ------ |------ |
120+| 1 | isulad在cgroup切换后性能对比测试| ■ | NA |
121+ 
122+●: 表示特性不稳定,风险高 ▲: 表示特性基本可用,遗留少量问题 ■: 表示特性质量良好
123+ 
124+# 5 测试执行
125+ 
126+## 5.1 测试执行统计数据
127+ 
128+*本节内容根据测试用例及实际执行情况进行特性整体测试的统计,可根据第二章的测试轮次分开进行统计说明。*
129+ 
130+| 版本名称 | 测试用例数 | 用例执行结果 | 发现问题单数 |
131+| --------------------------- | ---------- | ------------ | ------------ |
132+| openEuler 24.03-LTS | 2397 | 2397 | 5 |
133+ 
134+## 5.2 后续测试建议
135+ 
136+NA
137+ 
138+ 
139+ 
140+# 6 附件
141+ 
142+NA
143+