部署
部署控制器为容器组和副本集提供声明式升级。您可以在部署对象中描述一个期望状态,部署控制器会以受控速率将实际状态变更为期望状态。一个部署运行着应用程序的几个副本,它会自动替换宕机或故障的实例。因此,部署能够确保应用实例可用,处理用户请求。
有关更多信息,请参见 Kubernetes 官方文档。
准备工作
您需要创建一个企业空间、一个项目和一个用户 (project-regular
),务必邀请该用户到项目中并赋予 operator
角色。有关更多信息,请参见创建企业空间、项目、用户和角色。
创建部署
步骤 1:打开仪表板
以 project-regular
身份登录控制台。转到项目的应用负载,选择工作负载,点击部署选项卡下面的创建。
步骤 2:输入基本信息
为该部署指定一个名称(例如 demo-deployment
),选择一个项目,点击下一步继续。
步骤 3:设置容器组
设置镜像前,请点击容器组副本数量中的 或 来定义容器组的副本数量,该参数显示在清单文件中的
.spec.replicas
字段。提示
您可以启用右上角的编辑 YAML,查看 YAML 格式的部署清单文件。KubeSphere 使您可以直接编辑清单文件创建部署,或者您可以按照下列步骤使用仪表板创建部署。点击添加容器。
输入镜像名称,该镜像可以来自公共 Docker Hub,也可以来自您指定的私有仓库。例如,在搜索栏输入
nginx
然后按回车键。备注
- 在搜索栏输入镜像名称后,请记得按键盘上的回车键。
- 如果想使用您的私有镜像仓库,您应该先通过配置下面的保密字典创建镜像仓库保密字典。
根据您的需求设置 CPU 和内存的资源请求和限制。有关更多信息,请参见容器镜像设置中关于资源请求和资源限制的内容。
点击使用默认端口以自动填充端口设置,或者您可以自定义协议、名称和容器端口。
在下拉列表中选择镜像拉取策略。有关更多信息,请参见容器镜像设置中关于镜像拉取策略的内容。
对于其他设置(健康检查、启动命令、环境变量、容器安全上下文 以及同步主机时区),您也可以在仪表板上配置它们。有关更多信息,请参见容器组设置中对这些属性的详细说明。操作完成后,点击右下角的 √ 继续。
在下拉菜单中选择更新策略。建议您选择滚动更新。有关更多信息,请参见更新策略。
选择容器组调度规则。有关更多信息,请参见容器组调度规则。
完成容器组设置后,点击下一步继续。
步骤 4:挂载持久卷
您可以直接添加持久卷或者挂载配置字典或保密字典,或者直接点击下一步跳过该步骤。有关持久卷的更多信息,请访问持久卷声明。
备注
步骤 5:配置高级设置
您可以在该部分设置节点调度策略并添加元数据。完成操作后,点击创建完成创建部署的整个流程。
选择节点
分配容器组副本在指定节点上运行。该参数在
nodeSelector
字段中指定。添加元数据
为资源进行额外的元数据设置,例如标签和注解。
查看部署详情
详情页面
部署创建后会显示在列表中。您可以点击右边的 ,在弹出菜单中选择操作,修改您的部署。
- 编辑信息:查看并编辑基本信息。
- 编辑 YAML:查看、上传、下载或者更新 YAML 文件。
- 重新创建:重新创建该部署。
- 删除:删除该部署。
点击部署名称可以进入它的详情页面。
点击更多操作,显示您可以对该部署进行的操作。
- 回退:选择要回退的版本。
- 编辑自动扩缩:根据 CPU 和内存使用情况自动伸缩副本。如果 CPU 和内存都已指定,则在满足任一条件时会添加或删除副本。
- 编辑设置:配置更新策略、容器和存储。
- 编辑 YAML:查看、上传、下载或者更新 YAML 文件。
- 重新创建:重新创建该部署。
- 删除:删除该部署并返回部署列表页面。
点击资源状态选项卡,查看该部署的端口和容器组信息。
副本运行状态:点击 或 来增加或减少容器组副本数量。
容器组
- 容器组列表中显示了容器组详情(运行状态、节点、容器组 IP 以及资源使用情况)。
- 您可以点击容器组条目查看容器信息。
- 点击容器日志图标查看容器的输出日志。
- 您可以点击容器组名称查看容器组详情页面。
版本记录
修改工作负载的资源模板后,会生成一个新的日志并重新调度容器组进行版本更新。默认保存 10 个最近的版本。您可以根据修改日志进行重新部署。
元数据
点击元数据选项卡以查看部署的标签和注解。
监控
点击监控选项卡以查看部署的 CPU 使用量、内存使用量、网络流出速率和网络流入速率。
点击右上角的下拉菜单以自定义时间范围和采样间隔。
点击右上角的 / 以开始或停止数据自动刷新。
点击右上角的 以手动刷新数据。
环境变量
点击环境变量选项卡以查看部署的环境变量。
事件
点击事件选项卡以查看部署的事件。
反馈
这篇文章对您有帮助吗?
通过邮件接收 KubeSphere 最新的技术博客与产品更新的通知
感谢您的反馈。如果您有关于如何使用 KubeSphere 的具体问题,请在 Slack 上提问。如果您想报告问题或提出改进建议,请在 GitHub 存储库中打开问题。