【前沿技术探索与应用赛道】借助京东AI言犀提升Kubernetes集群巡检的效率和准确性

介绍

目前k8s-cluster-inspector组件可以自动化完成Kubernetes集群巡检,并在巡检结果中给出当前集群存在的问题,问题分级,问题类型,问题解决方法。

示例巡检数据结构如下:



json 复制代码
{
       "name": "colocation-webhook-role",
       "namespace": "archimedes",
       "kind": "Role",
       "message": ["CanDeleteResources"],
       "issueCategory": ["Failed to pull image:WorkLoad"],
       "normal": false,
       "harmRank": ["CanDeleteResources:高危"],
       "repairMessages": ["CanDeleteResources:rbac中存在删除用户的风险,修复:在role,clusterrole增加标签:kubernetes.io/bootstrapping='rbac-defaults'"]
}

可见,其结果在一般的靠人力的情况下,对于问题的答案有一定限制。最终可能导致用户对结果不信任或者结果无法在可生产的环境中验证。

我们在借助AI工具,对于问题答案使用AI进行回答。将其结果回填到以上的巡检数据后,示例结果如下:

json 复制代码
{
       "name": "colocation-webhook-role",
       "namespace": "archimedes",
       "kind": "Role",
       "message": ["CanDeleteResources"],
       "issueCategory": ["Failed to pull image:WorkLoad"],
       "normal": false,
       "harmRank": ["CanDeleteResources:高危"],
       "repairMessages": ["CanDeleteResources:集群中遇到镜像拉取报错401,通常是因为镜像仓库需要认证。解决方法如下:
 
1. **创建镜像拉取秘密**:在Kubernetes中创建一个Secret对象,用于存储镜像仓库的用户名和密码。
   ```yaml
   kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>
   ```
 
2. **在Pod或Deployment中引用Secret**:在Pod或Deployment的配置文件中,通过`imagePullSecrets`字段引用上述创建的Secret。
   ```yaml
   apiVersion: v1
   kind: Pod
   metadata:
     name: private-reg
   spec:
     containers:
     - name: private-reg-container
       image: <your-private-image>
     imagePullSecrets:
     - name: regcred
   ```
 
3. **应用配置**:更新或创建Pod/Deployment。
   ```bash
   kubectl apply -f your-pod-or-deployment.yaml
   ```
 
这样,Kubernetes在拉取镜像时会使用指定的认证信息,避免401错误。"]}

可见数据结果有较为明显的改进。并且借助AI工具,可以使得答案具有较高的丰富度和专业性。增加产品力。增强用户体验。

系统流程

主要流程区分:

  1. 执行巡检模版

按照用户声明的巡检模版指令执行巡检

  1. 开始巡检

开始巡检执行,该过程与Kubernetes集群交互

  1. 渲染巡检结果

将巡检结果进行渲染,渲染过程中会调用AI接口,分装提示词,组装steam需要的上下文,将集群问题给到AI,并获取AI回答的结果,补充到结果集中。

  1. 上报巡检结果

最终将巡检结果上报到用户指定的OSS存储服务器或者本地。





provider 设计

在流程中中,AI provider设计目的是将AI 作为provider进行设计,可以支持多个AI提供方。每个AI提供方只需要实现调用方式即可。这在对外交付时,极大的提高了灵活性。

相关推荐
爱勇宝1 小时前
干了近 8 年,一夜之间被裁:AI 时代,程序员最该害怕的不是 AI
前端·后端·程序员
Cosolar7 小时前
藏在 Claude Code 里的极致浪漫:完整 187 条 Spinner Verbs 全收录
后端·程序员·代码规范
怕浪猫1 天前
领域特定语言(Domain-Specific Language, DSL)
设计模式·程序员·架构
爱勇宝1 天前
深扒 Anthropic 1680 位工程师简历:应届生几乎没机会,AI 公司最缺的不是博士
前端·后端·程序员
AskHarries1 天前
工具失败时怎么办:重试、回滚、人工确认和风险提示
后端·程序员
陈随易2 天前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
七十二時4462 天前
什么是VibeCoding
程序员
AskHarries2 天前
Canvas / Artifact:把结果变成可查看、可交互的产物
程序员
爱勇宝3 天前
鸿蒙生态的下半场:开发者不只要能开发,还要能赚钱
android·前端·程序员
程序员cxuan3 天前
DeepSeek 杀入多模态,识图功能正式上线!
人工智能·后端·程序员