工作负载管理

当创建了工作负载比如部署、有状态副本集、任务这类资源对象后,KubeSphere 支持对其执行查看、扩缩容、启停、删除、升级、资源监控等基本操作,以部署为例,说明如何查看、编辑和删除部署,其它类型的工作负载操作基本相似。

查看部署详情

在部署列表页,点击某个部署的名称,就可以进入到部署详情页,可以查看部署的基本信息、资源状态、版本控制、监控、环境变量、事件等。点击 更多操作 支持版本回退、弹性伸缩、编辑配置模板、编辑 yaml 配置文件或删除当前部署。

配置模板页

版本控制页

比如部署、有状态副本集、守护进程集这类工作负载都有版本的概念,若修改了其中的配置模板或 yaml 文件并点击更新后,就会新生成一个版本,在版本控制页即可查看到所有的历史版本,点击其中任意一个版本右侧的图标,即可查看其配置模板 (支持 yaml 和 json)。若更新后的新版本存在问题,点击 更多操作 支持将其版本回退到历史中的任何一个版本。

版本控制页

监控

监控详情页支持对部署资源的所有容器组 (Pod) 的 CPU 和内存的使用量、网络进、出口流量等四项指标,按自定义的时间范围进行搜索查看。

监控

当容器组 (Pod) 数量超过五个副本时,可以单击 查看全部副本 查看更多的副本监控。例如,查看一个副本数为 203 的守护进程集 node-exporter (部署在集群的所有主机上用于监控集群物理主机的 CPU、内存、网络、磁盘等情况),点击 查看全部副本

node-exporter 监控

弹窗将显示 203 个副本的监控数据,左侧可以选择多个容器组,每个容器组监控的数据将以单个曲线图显示。这对于集群规模较大的情景而言,是非常适用的。

node-exporter 全部副本

环境变量页

可查看当前部署中所有容器的环境变量。

查看容器组环境变量

事件页

相当于 Kubernetes 中的 Events,它是 kubelet 负责用来记录多个容器运行过程中的事件,包含容器事件 (创建、启动、失败等)、镜像事件 (镜像拉取失败等)、kubelet 事件 (节点失效、节点不可调度等)、Pod Worker 事件 (同步失败) 等,在实际运行环境中方便用户排错和快速定位问题。

容器组事件

编辑或删除部署

可通过 更多操作 进行版本回退、弹性伸缩、编辑配置模板和编辑配置文件。其中,编辑配置模板支持修改更新策略、容器组模板、健康检查器和存储卷等配置,编辑配置文件在代码模式下是编辑对应的 yaml 文件,完成后点击右下方的更新按钮,就会按照配置文件进行更新。如果只是修改部署的描述信息,可以使用部署详情页左上角的 编辑信息 进行修改。

更新部署

修改副本数

点击蓝色部分的上、下图标即可增加或减少容器组的期望副本数 (Desired Replicas),只有部署和有状态副本集可以修改其副本数。如下所示,点击 增加副本数 图标,期望副本数由 1 增加至 2,可以看到容器组列表显示新增了一个 Pod,状态显示 ContainerCreating

修改副本

版本回退

若修改了其中的配置模板或 yaml 文件并点击更新后,就会新生成一个版本,如果该新版本存在问题,可以点击 版本回退,在弹窗中选择需要回退的历史版本。

版本回退

配置弹性伸缩

弹性伸缩 (Horizontal Pod Autoscaling) 顾名思义就是使 Pod 能够水平自动伸缩,利用弹性伸缩,KubeSphere 能够根据监测到的 CPU 利用率或内存使用率自动地扩容或缩容部署 (Deployment),也只有部署才可以配置弹性伸缩。关于如何配置弹性伸缩,详见 弹性伸缩

编辑配置模板

编辑配置模板是在创建了工作负载之后,需要对其修改 更新策略、容器组模板、添加健康检查器和存储卷 等配置,其中健康检查器的配置和使用示例可参考这篇文档 - 设置健康检查器 (修改其它三类配置模板已在对应用户指南和快速入门中给出了释义和创建示例)。

工作负载管理 - 图11

编辑配置文件

如果对配置文件 (支持 yaml/json) 的语法比较熟悉后,可以点击 编辑配置文件 来修改当前的工作负载,注意,工作负载的名字不支持修改。另外,更新配置文件后将生成一个新的版本,可以在版本详情页进行查看。

编辑配置文件

删除部署

在列表页最右侧的 “···” 和部署详情页的左上方的更多选项中都提供了部署的删除功能。

删除部署1

以上以部署为例,介绍了工作负载的常用操作,其它工作负载的操作类似,可同样参考上述步骤。