跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / BashSaaS

Kubernetes 集群可视化管理:Kuboard 部署与实战指南

Kuboard 是 Kubernetes 的轻量级可视化管理工具,能显著降低集群操作门槛。演示了如何在 Master 节点通过 kubectl 一键部署 Kuboard,并配置 NodePort 暴露服务。随后通过命令行 YAML 和 Web 界面两种方式,分别创建了 Nginx Pod 及包含 Deployment 与 NodePort 服务的完整应用栈。内容涵盖集群导入、资源监控及服务验证,帮助开发者快速掌握 K8s 可视化运维流程。

Eee_123发布于 2026/3/15更新于 2026/10/9111 浏览

Kuboard 部署与实践

在 Kubernetes 集群管理中,虽然 kubectl 命令行灵活强大,但面对复杂的资源编排时,可视化工具往往能大幅降低操作门槛。Kuboard 作为一款轻量且功能全面的 K8s 管理界面,支持集群导入、资源创建及状态监控,部署流程也相对简单。

下面我们将基于已搭建的 K8s 环境,演示 Kuboard 的安装、集群接入,并通过 YAML 和界面两种方式实践 Pod 与服务的管理。

一、部署准备

1.1 前提条件

确保你拥有一个运行正常的 K8s 集群,且当前操作节点(通常是 Master 节点)具备执行 kubectl 命令的权限,即已配置好集群管理员证书。

1.2 官方文档参考

Kuboard 提供了详细的部署文档和 Demo 环境,建议提前浏览以熟悉功能: 官网地址:https://demo.kuboard.cn/

二、Kuboard 部署步骤

2.1 执行部署命令

我们直接使用 kubectl apply 拉取官方清单,一键创建所需的命名空间、配置文件及服务账户等资源:

kubectl apply -f https://addons.kuboard.cn/kuboard/kuboard-v3.yaml 

执行成功后会看到一系列资源创建成功的日志,无需额外修改,直接继续即可。

2.2 检查 Pod 状态

部署完成后,需要确认 kuboard 命名空间下的 Pod 是否全部处于 Running 状态,这标志着组件已正常启动:

kubectl get pod -n kuboard 

正常情况下 READY 列应显示为 1/1,STATUS 列为 Running。如果 Pod 卡在 Pending 或 Error 状态,可以使用 kubectl describe pod <Pod 名称> -n kuboard 查看具体原因,常见的问题包括镜像拉取失败或节点资源不足。

2.3 检查服务暴露情况

Kuboard 通过 NodePort 类型的 Service 暴露外部访问端口,重点确认 30080 端口的映射关系:

kubectl get svc -n kuboard 

输出中 TYPE 应为 NodePort,PORT(S) 中的 80:30080/TCP 表示集群内 80 端口映射到了节点的 30080 端口,这正是 Web 界面访问的地址。

三、界面访问与集群导入

3.1 访问 Web 界面

打开浏览器,输入访问地址:http://<Master 节点 IP>:30080/(请将 IP 替换为你实际的 Master 节点地址)。首次登录使用默认管理员账号密码:

  • 账号:admin
  • 密码:Kuboard123

Kuboard 登录界面

3.2 导入 Kubernetes 集群

登录后需要将现有的 K8s 集群接入 Kuboard 统一管理:

  1. 点击左侧菜单栏【Kubernetes 集群】,选择【Kubernetes 集群列表】并点击【添加集群】。
  2. 导入方式保持默认的 Token,集群名称可设为 k8s-cluster。
  3. 根据页面提示复制脚本到 Master 节点执行,用于自动创建 ServiceAccount 及访问凭证。
  4. 执行完脚本后,复制红色输出字段中的 token 值。
  5. 回到导入界面填写信息:
  • 名称:自定义集群名称
  • ApiServer 地址:例如 https://<master 节点 IP>:6443
  • Token:粘贴上一步复制的值
  • 点击确定等待连接,身份选择使用 ServiceAccount kuboard-admin,拥有完全管理权限。
  • 导入完成后,即可在列表中查看集群的整体状态。

    集群导入成功

    四、通过 YAML 文件创建 Nginx Pod

    Pod 是 K8s 最小的部署单元,这里我们通过编写 YAML 文件创建一个 Nginx Pod,并配置资源限制。

    4.1 编写 YAML 文件

    使用 vim 编辑器创建 nginx.yaml 文件,内容如下(已添加注释便于理解):

    apiVersion: v1
    kind: Pod
    metadata:
      name: nginx
      labels:
        name: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14
        imagePullPolicy: IfNotPresent
        resources:
          limits:
            memory: "128Mi"
            cpu: "500m"
        ports:
        - containerPort: 80
    

    注意:指定镜像版本(如 1.14)可以避免因最新版兼容性问题导致的故障;imagePullPolicy 设置为 IfNotPresent 则本地有镜像时不重复拉取。

    4.2 执行创建

    应用 YAML 文件创建 Pod:

    kubectl apply -f nginx.yaml 
    

    成功后会输出 pod/nginx created。

    4.3 验证结果

    通过命令行或界面均可验证:

    kubectl get pod nginx
    

    若 STATUS 为 Running,说明创建成功。

    五、在 Kuboard 界面查看容器组

    Kuboard 界面能直观展示 Pod 的运行状态、资源使用及日志等信息:

    1. 登录界面,点击【名称空间 - 选择】,切换到 default 命名空间。
    2. 进入左侧菜单【应用程序】->【容器组】。
    3. 在列表中找到名为 nginx 的 Pod,即可查看其状态、运行节点及资源使用率。
    4. 点击 Pod 名称进入详情页,可查看日志或执行 exec 命令进入容器内部。

    容器组详情

    六、通过界面创建容器组与网络服务

    除了 YAML,Kuboard 支持纯界面操作,这里实践从命名空间到 Deployment 再到 NodePort 服务的完整流程。

    6.1 创建命名空间

    命名空间用于隔离集群资源,例如不同环境的资源分属不同命名空间:

    1. 点击左侧【命名空间】,点击【创建】。
    2. 设置名称为 yjs,保存即可。

    6.2 部署 Deployment

    Deployment 用于管理 Pod 副本,支持滚动更新等功能:

    1. 进入 yjs 命名空间,点击【常用操作】->【创建工作负载】。
    2. 工作负载类型选 Deployment,名称设为 myapp-test。
    3. 添加标签:键 app,值 myapp-test(后续服务需关联此标签)。
    4. 设置副本数为 3,提高可用性。
    5. 添加工作容器:
      • 容器名称:myapp-test
      • 镜像:soscscs/myapp:v1
      • 端口:TCP 80
    6. 保存后等待 Deployment 创建完成,会自动生成 3 个 Pod 副本。

    6.3 创建 NodePort 服务

    Deployment 创建的 Pod 仅在集群内部可访问,需通过 Service 暴露外部:

    1. 点击左侧【服务】->【创建】。
    2. 服务名称:myapp-test。
    3. 选择器:添加标签选择器,键 app,值 myapp-test(必须与 Deployment 标签一致)。
    4. 服务类型:NodePort。
    5. 端口配置:协议 TCP,port 80,NodePort 32000(需在 30000-32767 范围内),targetPort 80。
    6. 保存服务。

    6.4 验证服务访问

    服务创建成功后,访问 http://<任意节点 IP>:32000 即可看到测试页面,说明服务暴露成功。

    总结

    本文从 Kuboard 部署入手,逐步讲解了界面访问、集群导入,并通过 YAML 文件和界面操作两种方式实践了 Pod 与 Service 的创建。核心收获如下:

    1. Kuboard 部署简单,通过官方 YAML 文件可一键完成,界面友好,适合初学者快速掌握 K8s 资源管理。
    2. YAML 文件创建资源更灵活,便于版本控制与批量部署;界面操作更直观,适合快速验证或临时创建资源。
    3. Service 的 NodePort 类型是对外暴露服务的常用方式,需注意端口范围与标签选择器的正确性。

    后续可进一步探索 Kuboard 的资源监控、日志收集等功能,逐步深入 K8s 集群的可视化管理。

    目录

    1. Kuboard 部署与实践
    2. 一、部署准备
    3. 1.1 前提条件
    4. 1.2 官方文档参考
    5. 二、Kuboard 部署步骤
    6. 2.1 执行部署命令
    7. 2.2 检查 Pod 状态
    8. 2.3 检查服务暴露情况
    9. 三、界面访问与集群导入
    10. 3.1 访问 Web 界面
    11. 3.2 导入 Kubernetes 集群
    12. 四、通过 YAML 文件创建 Nginx Pod
    13. 4.1 编写 YAML 文件
    14. 4.2 执行创建
    15. 4.3 验证结果
    16. 五、在 Kuboard 界面查看容器组
    17. 六、通过界面创建容器组与网络服务
    18. 6.1 创建命名空间
    19. 6.2 部署 Deployment
    20. 6.3 创建 NodePort 服务
    21. 6.4 验证服务访问
    22. 总结

    更多推荐文章

    查看全部
    • 优化 Python 运行速度的 5 个关键技巧
    • C++ 基于正倒排索引的 Boost 搜索引擎:日志宏与 Server 端实现
    • ollama 模型管理与删除、open-webui 大模型交互配置
    • RabbitMQ 消息可靠性保障与生产者确认机制
    • 通义万相 2.1 视频生成模型能力解析与部署基础
    • AIGC 实战测评:通义万相 2.1 图生视频部署指南
    • 百度否认大模型泡沫论,AI 业务持续盈利
    • OpenClaw 本地部署与飞书集成实战
    • Python 实现 SMZDM 数据处理系统:从爬虫到数据分析
    • lwIP 实战解析:基于 CGI 与 SSI 的嵌入式 WebServer 开发
    • 数据结构:堆的实现与应用
    • Spring Boot RESTful API 开发、测试与安全实战
    • OpenClaw 开源机器人实现空间智能体记忆
    • 使用文心一言为智能体设计稳定调用工作流的提示词
    • 无人机视觉目标检测数据集 VisDrone 详解与格式转换
    • VSCode AI Copilot 自定义指令配置指南
    • DeepSeek R1 接入 VSCode 实现智能编码提效
    • Neo4j 图数据库实战:从数据建模到 Python 应用
    • C语言实战:爬楼梯问题中的动态规划核心思想
    • ALVR 无线 VR 串流项目快速上手指南

    相关免费在线工具

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

    • HTML转Markdown

      将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

    • JSON 压缩

      通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

    • JSON美化和格式化

      将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online