更新时间:2025-04-03 GMT+08:00

ccictl set resources

操作背景

为定义 Pod 模板的任一资源指定计算资源要求(CPU、内存)。 如果 Pod 被成功调度,将保证获得所请求的资源量,但可以在某一瞬间达到其指定的限制值。

对于每类计算资源,如果只指定限制值而省略请求值,则请求值将被默认设置为限制值。

可能的资源包括(不区分大小写):使用 "ccictl api-resources" 查看受支持资源的完整列表。

ccictl set resources (-f FILENAME | TYPE NAME)  ([--limits=LIMITS & --requests=REQUESTS]

示例

# 将 Deployment nginx 中容器 nginx 的 CPU 限制设置为 "200m", 将内存限制设置为 "512Mi"
ccictl set resources deployment nginx -c=nginx --limits=cpu=200m,memory=512Mi

# 为 nginx 中的所有容器设置资源请求和限制
ccictl set resources deployment nginx --limits=cpu=200m,memory=512Mi --requests=cpu=100m,memory=256Mi

# 移除 nginx 中容器对资源的资源请求
ccictl set resources deployment nginx --limits=cpu=0,memory=0 --requests=cpu=0,memory=0

# 打印基于本地清单更新 nginx 容器限制的结果(以 YAML 格式),不向服务器发送请求
ccictl set resources -f path/to/file.yaml --limits=cpu=200m,memory=512Mi --local -o yaml

选项

--all

如果为真,则选择指定资源类型的命名空间中的所有资源。

--allow-missing-template-keys     默认值:true

如果为 true,在模板中字段或映射键缺失时忽略模板中的错误。 仅适用于 golang 和 jsonpath 输出格式。

-c, --containers string     默认值:"*"

所选 Pod 模板中要更改的容器名称 - 可以使用通配符。

-f, --filename strings

文件名、目录或文件 URL 组成的列表,用于标识要更新环境的资源。

-h, --help

resources 操作的帮助命令。

--limits string

指定请求里容器的limit资源。例如,“cpu=100m,memory=256Mi”。 请注意,服务器端组件可能会根据服务器配置(例如 LimitRange)分配请求。

--local

如果为真,`set image` 将不会与 API 服务器通信,而是在本地运行。

-o, --output string

输出格式。可选值为: json、yaml、name、go-template、go-template-file、template、templatefile、jsonpath、jsonpath-as-json、jsonpath-file。

-R, --recursive

递归处理在 -f、--filename 中给出的目录。当您想要管理位于同一目录中的相关清单时很有用。

--requests string

指定容器的资源请求。例如,“cpu=100m,memory=256Mi”。 请注意,服务器端组件可能会根据服务器配置(例如 LimitRange)分配请求。

-l, --selector string

过滤所用的选择算符(标签查询),支持 '='、'==' 和 '!='。 (例如 -l key1=value1,key2=value2)。匹配的对象必须满足所有指定的标签约束。

--template string

当 -o=go-template、-o=go-template-file 时使用的模板字符串或模板文件路径。 模板格式为 golang 模板 [http://golang.org/pkg/text/template/#pkg-overview]。

ccictl选项亦可在子命令中生效,列表如下:

父命令ccictl选项列表