K8sGPT,基于 AI 的云原生终极工具

news2024/11/26 9:52:19

随着人工智能和机器学习的兴起,企业和组织越来越多地寻找创新方法来利用这些技术来获得竞争优势。 该领域最强大的工具之一便是 K8sGPT,即基于 Kubernetes 的 GPT,它将 Kubernetes 编排的优势与 GPT 模型的高级自然语言处理能力结合在一起。

毫不夸张的说,K8sGPT 是一种改变游戏规则的工具,有可能彻底改变许多行业,从医疗保健和金融到电子商务和教育。它分析和理解自然语言数据的能力是无与伦比的,这使其成为希望从大量文本数据中获得洞察力的企业和组织的宝贵工具。

一、何为 K8sGPT ?

先来看一张图:

再来看一张图

K8sGPT 是一个用于扫描 Kubernetes Cluster,以及用简单的英语诊断和分类问题的工具。它将 SRE 经验植入其分析仪,并帮助我们提取最有价值的相关信息,以及基于人工智能进行丰富、完善,以支撑问题的解决。

二、K8sGPT 到底是如何工作?

通常来讲,K8sGPT 使用一组分析仪,旨在识别和简化Kubernetes Cluster 中诊断和分类问题的过程。这些分析仪具有 SRE 经验,有助于提供最准确和相关的信息。

关于 K8sGPT 所内置的分析仪,具体可参考如下所示:

1、PodAnalyzer

此分析仪主要检查 Pod 所关联的相关配置,并检查任何可能导致 Pod 崩溃或资源过度使用等问题。

2、PVCAnalyzer

此分析仪主要检查 PVC 的配置信息,并检查任何可能导致数据丢失或其他存储相关问题的问题。

3、ServiceAnalyzer

此分析仪主要检查服务的参数配置情况,并检查可能导致服务停机或性能下降的任何问题。

4、DeploymentAnalyzer

此分析仪主要检查部署的相关配置情况,并检查可能导致资源使用不足或过度使用的任何问题。

5、NodeAnalyzer

此分析仪检查 Kubernetes Cluster 中的节点信息,并检查与节点运行状况、利用率和容量相关的任何问题。

当然,除了上述所列举的核心分析仪外,在实际的业务场景中,仍然有一些有用的分析仪可供使用,例如:入口分析仪、定时任务分析仪、事件分析仪以及其他等等。

对于 AI 后端,K8sGPT 使用 OpenAI 作为默认后端平台。我们可以切换到其他后端,例如 Azure OpenAI 提供商或 FakeAI 提供商等。

三、K8sGPT 能够帮助我们解决哪些痛点?

基于这款划时代的创新工具,K8sGPT 能够帮我们做的事情还真不少,具体可参考如下所示:

1、诊断 Kubernetes Cluster 故障

K8sGPT 能够帮助我分析来自 Kubernetes Cluster 的日志和其他关键数据,以识别当前系统环境所存在的潜在问题。从而可以帮助我们,特别是 SRE、平台和 DevOps 工程师快速了解其集群中发生了什么,并找到问题的根本原因。

2、Kubernetes Cluster 分类问题

K8sGPT 能够专注于分类和诊断集群中的问题,帮助我们消除了日志和多种工具的噪音,以便快速找到问题的根本原因。

3、提高 Kubernetes Cluster 的可靠性

通过使用 K8sGPT 定期分析 Kubernetes Cluster 的运行状况,使得我们能够在导致停机或其他问题之前主动识别和解决问题。

4、对特定资源进行故障排除

在实际的生产环境场景中,假设我们遇到特定资源的问题,例如,服务或部署,或者在特定命名空间中,K8sGPT 则能够帮助我轻松地对特定资源或特定命名空间进行故障排除。

5、匿名化数据

在分析过程中,K8sGPT 检索可能包含敏感信息的数据,如 Pod 名称、命名空间、资源名称等,这些敏感信息有时被归类为对特定群体甚至更具限制性的个人严格机密(C3、C4数据分类)。K8sGPT 为我们提供了一种功能,通过在发送到 AI 后端时将其屏蔽,并将其替换为密钥,该密钥可用于在解决方案返回给用户时对数据进行去匿名化,从而轻松匿名化这些数据。

四、如何使用 K8sGPT ?

通常而言,K8sGPT 可以作为 CLI(命令行界面)工具安装,也可以作为 Kubernetes Cluster 中的 Operator 安装。

1、基于 CLI 安装:

[leonli@leonLab ~ ] % brew tap k8sgpt-ai/k8sgpt
Warning: No remote 'origin' in /opt/homebrew/Library/Taps/homebrew/homebrew-services, skipping update!
Running `brew update --auto-update`...
==> Auto-updated Homebrew!
Updated 1 tap (kubescape/tap).


You have 16 outdated formulae and 1 outdated cask installed.


==> Tapping k8sgpt-ai/k8sgpt
Cloning into '/opt/homebrew/Library/Taps/k8sgpt-ai/homebrew-k8sgpt'...
remote: Enumerating objects: 86, done.
remote: Counting objects: 100% (86/86), done.
remote: Compressing objects: 100% (85/85), done.
remote: Total 86 (delta 51), reused 2 (delta 0), pack-reused 0
Receiving objects: 100% (86/86), 18.77 KiB | 98.00 KiB/s, done.
Resolving deltas: 100% (51/51), done.
Tapped 1 formula (14 files, 37.7KB).
[leonli@leonLab ~ ] % brew install k8sgpt
Warning: No remote 'origin' in /opt/homebrew/Library/Taps/homebrew/homebrew-services, skipping update!
Running `brew update --auto-update`...
==> Fetching k8sgpt-ai/k8sgpt/k8sgpt
==> Downloading https://github.com/k8sgpt-ai/k8sgpt/releases/download/v0.3.0/k8sgpt_Darwin_arm64.tar.gz
==> Downloading from https://objects.githubusercontent.com/github-production-release-asset-2e65be/617152691/d9f59995-7f66-468b-9a21-2dd6a2f3c7ea?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKI
######################################################################## 100.0%
==> Installing k8sgpt from k8sgpt-ai/k8sgpt
🍺  /opt/homebrew/Cellar/k8sgpt/0.3.0: 6 files, 55.5MB, built in 3 seconds
==> Running `brew cleanup k8sgpt`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
[leonli@leonLab ~ ] % /opt/homebrew/Cellar/k8sgpt/0.3.0/bin/k8sgpt version
k8sgpt version 0.3.0

OK,Over 了。

2、基于 Operator 安装:

通常情况下,若基于 Kubernetes Cluster 中安装 K8sGPT,那么使用 k8sgpt-operator 进行。

基于操作员模式,旨在在 Kubernetes Cluster 中启用 K8sGPT。它将允许我们创建一个自定义资源,定义托管 K8sGPT 工作负载的行为和范围。分析和输出也可以配置,以便集成到现有工作流程中。

这种操作模式非常适合持续监控我们所构建的集群环境,并且可以与我们现有的监控(如Prometheus和Alertmanager)进行友好集成。

[leonli@leonLab ~ ] % helm repo add k8sgpt https://charts.k8sgpt.ai/
[leonli@leonLab ~ ] % helm install release k8sgpt/k8sgpt-operator -n k8sgpt-operator-system --create-namespace

接下来,我们再简要介绍一下运行示例,具体如下所示:

(1)创建密钥

[leonli@leonLab ~ ] % kubectl create secret generic k8sgpt-sample-secret --from-literal=openai-api-key=$OPENAI_TOKEN -n k8sgpt-
operator-system

(2)应用K8sGPT配置对象

[leonli@leonLab ~ ] % kubectl apply -f - << EOF
apiVersion: core.k8sgpt.ai/v1alpha1
kind: K8sGPT
metadata:
  name: k8sgpt-sample
  namespace: k8sgpt-operator-system
spec:
  model: gpt-3.5-turbo
  backend: openai
  noCache: false
  version: v0.3.0
  enableAI: true
  secret:
    name: k8sgpt-sample-secret
    key: openai-api-key
EOF

(3)查看部署结果

一旦应用了自定义资源,将开始安装 K8sGPT 组件,此时,我们将能够在几分钟后看到分析的结果对象,具体如下所示:

[leonli@leonLab ~ ] % kubectl get results -o json | jq .
{
  "apiVersion": "v1",
  "items": [
    {
      "apiVersion": "core.k8sgpt.ai/v1alpha1",
      "kind": "Result",
      "metadata": {
        "creationTimestamp": "2023-04-26T09:45:02Z",
        "generation": 1,
        "name": "placementoperatorsystemplacementoperatorcontrollermanagermetricsservice",
        "namespace": "default",
        "resourceVersion": "108371",
        "uid": "f0edd4de-92b6-4de2-ac86-5bb2b2da9736"
      },
      "spec": {
        "details": "The error message means that the service in Kubernetes doesn't have any associated endpoints, which should have been labeled with \"control-plane=controller-manager\". \n\nTo solve this issue, you need to add the \"control-plane=controller-manager\" label to the endpoint that matches the service. Once the endpoint is labeled correctly, Kubernetes can associate it with the service, and the error should be resolved.",

五、常用 K8sGPT 操作示例?

安装完成后,我们可以查看当前 K8sGPT 组件的版本,具体如下所示:

[leonli@leonLab ~ ] % /opt/homebrew/Cellar/k8sgpt/0.3.0/bin/k8sgpt version
k8sgpt version 0.3.0

我们发现,当前当前 K8sGPT 为最新版,此时,我们可以使用 “--help ” 命令进行索引指示操作。

例如,基于 k8sgpt filters list 命令进行操作,具体如下所示:

以及运行以下命令来分析 Kubernetes Cluster 中的问题,具体可参考:

当然,除了上述的命令行外,如下相关的命令行在日常的场景中应用也较为广泛,比如如下等等。

[leonli@leonLab ~ ] % k8sgpt generate && k8sgpt auth &&

随着企业和组织不断寻找利用人工智能和机器学习的创新方法,K8sGPT 正在成为一种强大的工具,可以帮助他们实现目标。 凭借其先进的自然语言处理能力和 Kubernetes 编排的优势,K8sGPT 有可能改变我们分析和理解文本数据的方式,并推动许多行业的创新。

六、这项工具也很好用

JNPF低代码开发平台,很多人都用过它,它是功能的集大成者,任何信息化系统都可以基于它开发出来。

原理是将开发过程中某些重复出现的场景、流程,具象化成一个个组件、api、数据库接口,避免了重复造轮子。因而极大的提高了程序员的生产效率。

官网:http://www.jnpfsoft.com/?csdn,如果你有闲暇时间,可以做个知识拓展。

这是一个基于Java Boot/.Net Core构建的简单、跨平台快速开发框架。前后端封装了上千个常用类,方便扩展;集成了代码生成器,支持前后端业务代码生成,满足快速开发,提升工作效率;框架集成了表单、报表、图表、大屏等各种常用的Demo方便直接使用;后端框架支持Vue2、Vue3。

为了支撑更高技术要求的应用开发,从数据库建模、Web API构建到页面设计,与传统软件开发几乎没有差异,只是通过低代码可视化模式,减少了构建“增删改查”功能的重复劳动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1049309.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人工智能AI 全栈体系(八)

第一章 神经网络是如何实现的 神经网络只是提供了一个一般性方法&#xff0c;具体用它求解什么问题&#xff0c;根据问题的特点&#xff0c;定义好输入输出以及损失函数就可以了。 在介绍神经网络语言模型结构的时候&#xff0c;每个词 w 都对应一个长度为 m 的向量 C(w)&…

深度学习(1)---卷积神经网络

文章目录 一、发展历史1.1 CNN简要说明1.2 猫的视觉实验1.3 新认知机1.4 LeNet-51.5 AlexNet 二、卷积层2.1 图像识别特点2.2 卷积运算2.3 卷积核2.4 填充和步长2.5 卷积计算公式2.6 多通道卷积 三、池化层 一、发展历史 1.1 CNN简要说明 1. 卷积神经网络&#xff08;Convolut…

化妆品微针贴片,全球市场总体规模,前12大厂商排名及市场份额

化妆品微针贴片全球市场总体规模 化妆品微针贴片是一种新型的美容护肤产品&#xff0c;它采用微针技术&#xff0c;将微针嵌入贴片中&#xff0c;通过将贴片贴在皮肤表面&#xff0c;使微针穿透皮肤表层&#xff0c;将活性成分输送到皮肤深层&#xff0c;从而达到美容护肤的效…

LeetCode【2251. 花期内花的数目】

给你一个下标从 0 开始的二维整数数组 flowers &#xff0c;其中 flowers[i] [starti, endi] 表示第 i 朵花的 花期 从 starti 到 endi &#xff08;都 包含&#xff09;。同时给你一个下标从 0 开始大小为 n 的整数数组 people &#xff0c;people[i] 是第 i 个人来看花的时间…

笔记本摄像头怎么打开?记牢这5个简单方法!

“我有一个紧急视频会议&#xff0c;但是关键时刻我的笔记本电脑摄像头居然打不开了&#xff0c;真的让我很崩溃。有什么方法可以快速解决这个问题吗&#xff1f;非常感谢&#xff01;” 在互联网时代&#xff0c;电脑对我们来说非常重要。而借助电脑摄像头与朋友交流或者与同事…

全网最细,Python接口自动化测试参数关联(应用场景实例)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 什么是参数关联&a…

lift-splat-shoot(LSS)代码详解

原版lift-splat-shoot&#xff08;LSS&#xff09;代码详解 自己想搞一些事情&#xff0c;搞什么呢&#xff1f;和自动驾驶相关的&#xff0c;先走视觉路线的又比较多&#xff0c;bev的话就搞开山之作lss&#xff0c;看有什么可以优化的东西&#xff0c;于是就开始做一做试试看…

编译原理简介

编译原理简介 编译原理的研究对于理解和设计编程语言、编译器和解释器都非常重要。它不仅可以提高程序的执行效率&#xff0c;还可以帮助开发人员更好地理解程序的运行机制。编译原理是计算机科学中的一个重要分支&#xff0c;研究的是编译器的设计和实现。对于从事编译器开发…

人员重识别:Person Re-Identification without Identification via Event Anonymization

论文作者&#xff1a;Shafiq Ahmad,Pietro Morerio,Alessio Del Bue 作者单位&#xff1a;Istituto Italino di Tecnologia;Universita degli Studi di Genova 论文链接&#xff1a;http://arxiv.org/abs/2308.04402v1 内容简介&#xff1a; 1&#xff09;方向&#xff1a;…

欧拉公式推导网格中点线面估计数量关系

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 背景 之前面试网格算法工程师时被问到三角网格中点和面的数量关系。delaunay 三角剖分要估计边的数量来事先申请内存。 通过查找资料了解原理和推导过程。 欧拉公式…

重生奇迹海魔是亚特兰蒂斯的最后一站

当重生奇迹MU玩家开始打算挑战海魔希特拉时&#xff0c;通常就意味着这一次亚特兰蒂斯的旅程已经走到了尾声&#xff0c;因为这个海魔便是海洋的最后一站&#xff0c;成功抵达后就能顺利地通关这片海域。同时&#xff0c;如果此刻玩家等级已经到达130级&#xff0c;那么沙漠地图…

方法:Ubuntu配置网络源-apt源、pip源、conda源

apt源 方法1 编辑/etc/apt/sources.list: sudo gedit /etc/apt/sources.list 写入&#xff0c;如阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe mu…

最简单的RNN预测股票收盘价

1.首先&#xff0c;导入必要的库&#xff1a; import torch import torch.nn as nn import numpy as np2.准备数据。需要准备好包含历史股票收盘价的一维时间序列数据。在这个例子中&#xff0c;我们将使用NumPy模拟一些示例数据 # 示例的股票收盘价时间序列数据 # 假设数据点…

Linux面试题汇总1

MySQL数据库 1、MySQL和Oracle的区别 1.Oracle是大型数据库&#xff0c;而MySQL是中小型数据库。但是MySQL是开源的&#xff0c;但是Oracle是收费的&#xff0c;而且比较贵。 2. Oracle的内存占有量非常大&#xff0c;而mysql非常小 3. MySQL支持主键自增长&#xff0c;指定主…

MySQL explain SQL分析工具详解与最佳实践

目录 一、explain工具介绍二、添加示例表和数据用于后续演示三、explain中的列3.1、id列3.2、select_type列3.3、table列3.4、partitions列3.5、type列NULLsystemconsteq_refrefrangeindexALL 3.6、possible_keys列3.7、key列3.8、key_len列3.9、ref列3.10、rows列3.11、filter…

《视觉 SLAM 十四讲》V2 第 11 讲 回环检测【消除累积误差】

待做: 习题整理 相关文献【新的综述】等 P283 文章目录 11.2 词袋 模型11.3.2 Code&#xff1a; 创建字典11.4.2 Code&#xff1a; 相似度 计算训练 自己的字典 报错 习题√ 题1√ 题2题3 DBoW3库题4题5 基于 词袋 的外观式 回环检测 SLAM主体(前端后端)&#xff1a; 估计相机…

图片处理后再保存为图片到文件夹中,文件夹下文件名不变改格式保存

首先读取图片&#xff1b; 然后处理&#xff0c;得到cv:Mat类型&#xff1b; 对cv:Mat类型图片写入文件夹&#xff0c;保存到指定路径。 像raw图等不能直接读取显示&#xff0c;需要先进行解码&#xff0c;转换为可以显示的图片。 下面举例读入本来可以显示的图。以下代码加…

哈弗猛龙实力登场,「方盒子猛改派对」掀起越野改装新热潮

9月22日-24日&#xff0c;哈弗猛龙“方盒子猛改派对”在北京751 D-PARK 火车头广场成功举办。活动现场盛况空前&#xff0c;不仅有官方展出的11台不同风格的猛改车型&#xff0c;更吸引了不同领域的博主大咖及越野达人前来参与活动。 与此同时&#xff0c;哈弗猛龙用户大定权益…

【EI会议征稿】第三届信号处理与通信技术国际学术会议(SPCT 2023)

第三届信号处理与通信技术国际学术会议&#xff08;SPCT 2023&#xff09; 2023 3rd International Conference on Signal Processing and Communication Technology 第三届信号处理与通信技术国际学术会议&#xff08;SPCT 2023&#xff09;将于2023年12月1-3日在长春召开。S…

【AIPOD案例操作教程】斜流风扇轮毂优化

AIPOD是由天洑软件自主研发的一款通用的智能优化设计软件&#xff0c;致力于解决能耗更少、成本更低、重量更轻、散热更好、速度更快等目标的工程设计寻优问题。针对工业设计领域的自动化程度低、数值模拟计算成本高等痛点&#xff0c;基于人工智能技术、自研先进的智能代理学习…