Kubernetes v1.36:暂停作业的可变容器资源(测试版)

💡 原文英文,约700词,阅读约需3分钟。
📝

内容提要

Kubernetes v1.36引入了暂停作业时可修改容器资源请求和限制的功能,允许在作业暂停期间调整CPU、内存和GPU等资源。这使集群管理员能够根据当前资源情况优化作业资源分配,避免了删除作业的麻烦。该功能在v1.36及以上版本中默认启用。

🎯

关键要点

  • Kubernetes v1.36引入了暂停作业时可修改容器资源请求和限制的功能,允许在作业暂停期间调整CPU、内存和GPU等资源。

  • 该功能最初在v1.35中作为alpha版本引入,现在在v1.36中推广为beta版本,默认启用。

  • 集群管理员可以根据当前资源情况优化作业资源分配,避免了删除作业的麻烦。

  • 在暂停状态下,作业的资源请求和限制可以被修改,允许在作业恢复之前进行调整。

  • 如果集群资源不足,队列控制器可以更新作业的资源请求,确保作业能够在可用资源下继续运行。

  • Kubernetes API服务器放宽了暂停作业的pod模板资源字段的不可变性约束,允许在特定条件下进行资源更新。

  • 对于使用动态资源分配的工作负载,资源声明模板仍然是不可变的,必须单独重新创建以匹配任何资源更改。

延伸问答

Kubernetes v1.36的新功能是什么?

Kubernetes v1.36引入了暂停作业时可修改容器资源请求和限制的功能,允许在作业暂停期间调整CPU、内存和GPU等资源。

如何在Kubernetes中暂停作业并修改资源?

可以通过创建一个暂停的作业,然后使用kubectl edit命令更新其容器资源,最后通过kubectl patch命令恢复作业。

为什么Kubernetes允许在暂停状态下修改作业资源?

允许修改作业资源是为了根据当前集群资源情况优化作业资源分配,避免删除作业的麻烦。

Kubernetes v1.36中的资源更新有什么限制?

资源更新必须在作业的状态为非活动时进行,且资源限制必须大于或等于请求,扩展资源必须以整数形式指定。

动态资源分配在Kubernetes中如何影响作业?

使用动态资源分配的工作负载,其资源声明模板仍然是不可变的,必须单独重新创建以匹配任何资源更改。

Kubernetes v1.36的这个功能对集群管理员有什么好处?

集群管理员可以根据当前资源情况灵活调整作业资源,避免因资源不足而删除作业,提升资源利用效率。

➡️

继续阅读