【前沿技术探索与应用赛道】借助京东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提供方只需要实现调用方式即可。这在对外交付时,极大的提高了灵活性。

相关推荐
玩转AGI1 天前
【必收藏】12-Factor Agents:让大模型Agent从能跑起来到能用起来的企业级设计指南
人工智能·程序员·llm
tinker2 天前
ROS2 - SLAM 同步定位与建图
程序员
小爱同学_5 天前
一次面试让我重新认识了 Cursor
前端·面试·程序员
彼日花5 天前
前端新人30天:从手足无措到融入团队
前端·程序员
你的人类朋友5 天前
【操作系统】说说 x86 和 x64
后端·程序员·操作系统
AI大模型6 天前
构建可用于生产环境的 RAG 智能体:开发者完整指南
程序员·llm·agent
SimonKing6 天前
GitHub 标星 370k!免费编程资源大合集,从此自学不花一分钱
java·后端·程序员
韦德说6 天前
副业整整一周年:从产品交付到市场运营的真实经验分享
程序员·开源·产品
AI绘画哇哒哒7 天前
实战:SQL统一访问200+数据源,构建企业级智能检索与RAG系统(下)
人工智能·sql·深度学习·学习·ai·程序员·大模型
AI大模型7 天前
别再把RAG当记忆:这5个开源引擎让AI真正会记住
程序员·llm·agent