Blazor k8s 项目介绍
Blazor k8s 是一个基于 C# Blazor 编写的 Kubernetes 管理工具,该工具集成了 ChatGPT 大模型,旨在提供一个用户友好的界面以便于 Kubernetes 的管理和操作。特别适合初学者,通过多种实用功能帮助新手快速掌握 Kubernetes 的知识。
项目特点
-
直观的资源展示:以色彩丰富、直观的方式展示 Kubernetes 资源,帮助用户快速理解资源状态。
-
Yaml 分析与树状展示:YAML 定义的字段会被解析并以树状结构展示,还可附带文档说明,用户无需担心遗忘定义。同时,集成的大模型还可以翻译文档。
-
资源字段详细说明:为 Kubernetes 资源字段提供详细解释,包括官方文档的可点击链接,确保用户对配置选项及其意义毫不含糊。
-
目录树格式的官方示例:集成官方实例,便于浏览、参考和字段复制,支持高效 YAML 资源编辑。
-
Pod 和服务信息关联展示:支持在 Pod 页面显示对应的 Service 和 Ingress,并在 Service 和 Ingress 页面显示后端 Pods。
-
大模型辅助功能:使用大模型生成 YAML,进行问题分析和安全检查。
-
会话式 k8s 操作:支持以语义命令形式进行 k8s 功能操作,例如检查默认命名空间中 pod 的运行状态。
-
资源动态使用情况:需要安装 metric server,支持查看详细统计数据。
-
常用命令集成:界面功能中集成了如 kubectl describe、kubectl explain、kubectl top 等常用命令,用户只需点击即可使用。
-
集群检查功能:在集群页面新增检查功能,对主要资源对象进行常见错误检查并提供详细列表。
-
多语言支持:支持中文、英语、法语、德语、意大利语、俄语、西班牙语、日语、韩语等多达 12 种语言。
-
负载资源关系拓扑图:通过拓扑图直观地可视化负载资源之间的关系和状态。
-
支持 GatewayAPI:包括 GatewayClass、Gateway、HTTPRoute、GRPCRoute、TCPRoute 和 UDPRoute 的支持。
-
Mermaid.js 可视化工具支持:使用 Mermaid.js 直观清晰地可视化 HttpRoute 资源。
如何安装和使用
创建 Kubernetes 集群
可以使用 KinD(Kubernetes in Docker)或 MiniKube 创建一个小型的 Kubernetes 集群。
部署 BlazorK8s
通过 kubectl 命令应用 YAML 文件到集群中,并通过 NodePort 或自定义 Ingress 访问 UI。
通过 Docker 运行体验
使用 Docker 拉取镜像并运行实例服务,支持 x86 和 ARM 架构(如 Mac M1/2/3)。
界面语言配置
默认界面语言为中文,可以通过修改 appsettings.json
文件配置为其他默认语言。
ChatGPT 配置
集成了多个 AI 模型选项,如 OpenAI,同样支持通过配置文件进行选择和设置。
项目效果展示
文档树的 YAML 展示
YAML 定义以树结构展开,帮助用户规避遗忘。
字段含义说明
在资源详情页点击字段旁的问号,获取详细说明。
生成部署 YAML
通过提示词获取 Kubernetes 部署 YAML,并执行操作。
智能分析
新增智能分析和安全分析按钮,提供资源分析支持。
工作负载拓扑图
直观展示工作负载资源间关系和状态。
GatewayAPI 支持
支持 GatewayAPI 相关资源的可视化和管理。
Blazor k8s 项目通过集成现代化工具和丰富功能,使 Kubernetes 管理变得更简单、高效,是初学者以及经验丰富的运维人员的理想选择。