Kubernetes 系列【13】控制器:可视化操作 Deployment

文章目录

  • [1. 前言](#1. 前言)
  • [2. 前置准备](#2. 前置准备)
    • [2.1 安装 Kuboard](#2.1 安装 Kuboard)
    • [2.2 登录并导入集群](#2.2 登录并导入集群)
  • [3. 可视化创建 Deployment](#3. 可视化创建 Deployment)
    • [3.1 进入创建页面](#3.1 进入创建页面)
    • [3.2 基本信息](#3.2 基本信息)
    • [3.2 容器信息](#3.2 容器信息)
    • [3.3 完成创建](#3.3 完成创建)
    • [3.4 查看状态](#3.4 查看状态)
  • [4. 可视化滚动更新](#4. 可视化滚动更新)
    • [4.1 方式 1 :调整镜像版本](#4.1 方式 1 :调整镜像版本)
    • [4.2 方式 2 :预览/编辑 YAML](#4.2 方式 2 :预览/编辑 YAML)
    • [4.3 方式 3 :编辑 Deployment](#4.3 方式 3 :编辑 Deployment)
    • [4.4 更新完成](#4.4 更新完成)
  • [5. 可视化版本回滚(故障应急)](#5. 可视化版本回滚(故障应急))
    • [5.1 触发异常](#5.1 触发异常)
    • [5.2 执行回滚](#5.2 执行回滚)
  • [6. 扩缩容](#6. 扩缩容)
    • [6.1 手动](#6.1 手动)
    • [6.2 自动伸缩](#6.2 自动伸缩)
      • [6.2.1 更新策略](#6.2.1 更新策略)
      • [6.2.2 自动伸缩](#6.2.2 自动伸缩)

1. 前言

在传统 K8s 运维学习中,我们通常基于【 kubectl 命令行 + YAML 清单 】完成 Deployment 的创建、更新、回滚、灰度等全流程操作。

这种方式原生、精准,也是必须掌握的,但是资源链路黑盒,层级关系不直观 ,无法直观查看多版本 ReplicaSet 并存关系、Pod 分布节点、标签关联规则,全靠逻辑推导。

所以,可以结合可视化管理平台,更清楚直观的观察到全链路,生产环境一般也都是给你管理界面,而不会直接让你在服务器上操作。

2. 前置准备

Kuboard 是一款国产开源轻量级 K8s 可视化管理面板。

2.1 安装 Kuboard

可参考:

2.2 登录并导入集群

也很简单:

3. 可视化创建 Deployment

3.1 进入创建页面

  1. 首页左侧导航栏进入【Kubernetes 集群列表】,选择默认命名空间(default
  1. 进入【创建工作负载】:

3.2 基本信息

点击【部署(Deployment)】:

填写【基本信息】:

  1. 工作负载类型K8s 应用控制器,常用 Deployment(无状态服务)
  2. Deployment:管理普通微服务,支持滚动更新、回滚、扩缩容
  3. 工作负载分层 :环境分组,留空 = 默认层
  4. 工作负载名称Deployment 资源名,小写字母/数字/横杠,命名空间唯一
  5. 服务描述50 字内业务备注,仅展示用
  6. 注解 :资源注解 metadata.annotations,键值对格式,存储非标识类附加信息(域名、负责人等)
  7. 标签 :资源筛选标识,编辑器自动同步 Pod 匹配标签
  8. 副本数 :运行的 Pod 实例数量

填写如下:

3.2 容器信息

添加工作容器:

填写相关信息:

必填项:

  1. 名称:容器唯一标识,必填
  2. 容器镜像:镜像地址,私有仓库搭配 ImagePullSecret 密钥
  3. 镜像拉取策略:Always/IfNotPresent (默认)/Never

可选配置(勾选启用):

  1. 命令/参数:覆盖镜像默认启动指令
  2. 环境变量:注入运行参数
  3. 资源请求/限制:CPU 内存调度与上限管控
  4. 容器端口:业务监听端口声明
  5. 健康检查:探针检测容器状态,异常重启
  6. 生命周期回调:容器启停执行自定义脚本
  7. 容器安全上下文:限制容器运行权限,加固安全
  8. 滚动更新策略(默认 25%,可直接修改):

3.3 完成创建

Kuboard 自动生成合规 YAML 并提交至集群,完成创建。

点击【保存】:

会先进行校验:

点击【应用】:

3.4 查看状态

查看工作负载:

点击 nginx-web,在上方可以直接进行相关操作:

在运行时界面可以看到当前状态:

4. 可视化滚动更新

需求:将 Nginx 滚动更新至 1.16.1,业务零中断。

4.1 方式 1 :调整镜像版本

点击 【调整镜像版本】,输入版本号并【确定】:

4.2 方式 2 :预览/编辑 YAML

还可以通过【预览/编辑 YAML】进行修改:

编辑页面:

4.3 方式 3 :编辑 Deployment

还可以通过【编辑】进行修改:

所有信息都可以在这里修改:

4.4 更新完成

自动更新完成后,查看历史版本、当前副本集数、最大历史副本集数、副本集等信息:

5. 可视化版本回滚(故障应急)

5.1 触发异常

编辑容器镜像为不存在的版本nginx:1.161,提交后 Pod 触发 ImagePullBackOff 异常。

5.2 执行回滚

历史版本中选择一个可用版本,直接点击【回滚到】:

历史版本正常运行:

6. 扩缩容

6.1 手动

直接点击【伸缩】即可:

6.2 自动伸缩

点击【自动伸缩】:

6.2.1 更新策略

点击【编辑更新策略】:

可以修改更新策略,以及对应的参数:

6.2.2 自动伸缩

自动伸缩(HPA)模块可以开启【自动伸缩】:

点击后可以配置相关参数:

相关推荐
分布式存储与RustFS7 小时前
RustFS 1.0 GA 前的生产验收清单:从 rc.1 到 GA 该准备什么
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准
冰块的旅行9 小时前
完整的 Docker + Docker Compose 部署教程亲测有效
docker·容器
Henry-SAP9 小时前
SAP PP 反冲机制业务解析
人工智能·云原生·sap·erp
乌恩大侠9 小时前
【Sionna】docker build ubuntu cuda
ubuntu·docker·容器·spark·o-ru·ai-ran
梅梅绵绵冰10 小时前
Docker容器化平台
docker·容器·eureka
我是唐青枫11 小时前
Docker diff 详解:看清容器里到底改了什么
docker·容器
A-刘晨阳12 小时前
K8s集群中的数据库新范式:KES-Operator解锁部署、扩缩容、备份全链路自动化
运维·数据库·云原生·kubernetes·自动化
江畔柳前堤12 小时前
云原生 × AI 全景图谱:从 Kubernetes 到 Agent 基础设施的一次认知跃迁
人工智能·分布式·gpt·云原生·kubernetes·原型模式·agi
天机玄正13 小时前
云运维高阶二:CLI 调用 API (白名单追随)
windows·云原生
jiao糖瓜子13 小时前
Docker 完全指南:从镜像容器到生产部署
docker·容器·eureka·镜像·仓库