模拟压力场景
本文主要介绍如何使用 Chaosd 模拟压力场景。该功能通过使用 stress-ng 在主机上生成 CPU 或者内存压力,支持通过命令行模式或服务模式创建压力实验。
#
使用命令行模式创建压力实验本节介绍如何在命令行模式中创建压力实验。
在创建压力实验前,可运行以下命令查看 Chaosd 支持的压力实验类型:
输出如下所示:
目前 Chaosd 支持创建 CPU 压力实验和内存压力实验。
#
模拟 CPU 压力场景#
模拟 CPU 压力命令运行以下命令可查看模拟 CPU 压力场景支持的配置:
输出如下所示:
#
模拟 CPU 压力相关配置说明配置项 | 配置缩写 | 说明 | 值 |
---|---|---|---|
load | l | 指定使用每个 worker 占用 CPU 负载的百分比。如果为 0,则表示为一个空负载;为 100 则表示满负载 | int 类型,取值范围为 0 到 100, 默认值为 10 |
workers | w | 指定用于生成 CPU 压力的 worker 数量 | int 类型,默认值为 1 |
options | o | stress-ng 的其他参数设置,一般情况下不需要配置 | string 类型,默认值为 "" |
#
模拟 CPU 压力示例输出如下所示:
#
模拟内存压力场景#
模拟内存压力命令运行以下命令可查看模拟内存压力场景支持的配置:
输出如下所示:
#
模拟内存压力相关配置说明配置项 | 配置缩写 | 说明 | 值 |
---|---|---|---|
size | s | 指定每个 vm worker 占用内存的大小 | 支持使用单位 B,KB/KiB,MB/MiB,GB/GiB,TB/TiB 来设置占用的内存大小。如果不设置,则默认占用所有可用的内存。 |
workers | w | 指定用于生成内存压力的 worker 数量 | int 类型,默认值为 1 |
options | o | stress-ng 的其他参数设置,一般情况下不需要配置 | string 类型,默认值为 "" |
#
模拟内存压力示例输出如下所示:
在运行实验时,请注意保存实验的 uid 信息。在不需要模拟压力场景时,使用 recover
命令来结束 uid 对应的实验:
输出如下所示:
#
使用服务模式创建压力实验(正在持续更新中)