您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

用ChatGPT搞定K8s!

时间:2023-05-26 12:30:33  来源:51CTO  作者:

Kube.NETes(K8s)非常火,但被人诟病最多的还是其复杂性,并且不管是在云中还是本地,都没有很好的集群故障排除的方法。因此,尽管K8s的采用率持续增长,但许多开发人员和运维团队对这项较新的技术感到吃力,为此必须学习新的术语、工作流程、工具等。

1、K8s难在哪里

K8s的分立部件需要广泛的专业知识,即使只是在设置过程中。考虑到旋转K8集群需要了解和配置从pods到服务的多个组件,更不用说etcd、API服务器、kubelet和kube-proxy等资源了。

然后是规划、扩展和网络建设。一个失误可能很快转化为无数的可扩展性、可靠性甚至安全性问题。

此外,生态系统本身也在不断快速增长和演变。对于初学者来说,工具和附加组件可能很多,而且很难跟上。并不是每个开发者都专门接受过K8s技能的培训。

我们不能忘记,这项技术有许多移动部件和复杂的相互作用,当发生故障时,进行故障排除可能既困难又耗时。诊断故障原因需要深入的技术知识和专业知识,而这些知识和专业技能往往存在于少数经验丰富的工程师的头脑中。

让我们深入研究,探索有助于克服明显技能差距问题的新的创新方法。

2、没错,ChatGPT能当此大任

Kubernetes很难有效地学习和使用,因为没有一刀切的方法。K8s是高度可定制的,可以根据应用程序或基础设施的具体需求以多种不同的方式进行配置。通常很难将您从文档(而且有很多)和培训中学到的东西应用到现有的环境中,因为团队缺乏对其架构的上下文理解和可见性。

当前的体系结构是什么样子的?哪些pod绑定到特定的命名空间?节点的运行状况如何?询问我们环境的基本问题需要在AWS控制台、kubectl命令行、Terraform配置文件和监控工具之间进行上下文切换。

如果我们可以问ChatGPT这些问题呢?

让我们看一个使用由ChatGPT提供支持的PromptOps来理解集群中所有部署的示例。PromptOps提供了一个免费的Kubernetes咨询工具,用户可以通过BASH脚本、文档参考和其他有用资源的形式提出问题并获得即时帮助。

通过提供来自不同来源的PromptOps基础设施的碎片数据,如Confluence、Notion、Terraform配置文件等,我们希望PromptOps能够快速聚合所有信息,并帮助可视化架构。我们没有手动运行kubectl命令来检查部署,而是在聊天中提示PromptOps来描述集群中存在的部署。

以下是PromptOps的回应:

PromptOps > I suggest running this script to answer your question.

PromptOps提供了一个要运行的脚本,并引用了一个包含集群信息的Notion页面。在执行脚本时,PromptOps提供集群内部署的输出。

PromptOps还提供了集群中所有部署的可视化图,使学习更加容易。

PromptOps的响应简化了Kubernetes基础设施管理,使DevOps团队中的每个人都能跟上当前架构的步伐并跟上变化。

通过自动化故障调查节省时间

让我们看看生产问题的疑难解答,看看PromptOps如何帮助确定Kubernetes中故障的根本原因。Kubernetes度量和日志提供了从集群到容器的所有级别的关键见解。它们提供有关资源利用率、pod和节点状态、集群自动缩放指标、网络错误、容器运行时间等信息。

但所有这些指标的问题在于,它们并没有立即发挥作用。日志流或度量图表无法提供必要的上下文或方向。有一些工具可以提供帮助,但它们往往会使事情变得更加复杂,需要在整个技术堆栈中提取上下文,以查看真正发生了什么,或者在出现问题时谁做了什么。在CtrlStack,我们一直在结合PromptOps来分析因果图、Kubernetes事件、指标和日志,以减少手动故障排除的挑战。目标是通过使用PromptOps生成解释原因的根本原因分析摘要,帮助DevOps团队快速理解Kubernetes问题。在本例中,CtrlStack中的根本原因分析仪表板的因果图被输入到PromptOps中,以进行故障排除和解决,如下所述。

下面是一个根本原因分析面板的随意图形示例。

有了这个,我们提示PromptOps解释这个图。以下是PromptOps的回应:

PromptOps>以下是对图形的解释:
该图显示了Kubernetes pod中错误的根本原因。该错误是由pod映像中的更改引起的,这些更改类似于Kubernetes pod_error度量中的更改。该错误也类似于在kubernetes_ptime和kubernetes_pod_mem_usage度量中发现的拐点,以及node1中的拓扑变化。
该图显示了kubernetes_po_error更改的根本原因。有三个见解。首先是图像发生了变化。第二个是在度量kubernetes_ptime和kubernetes_pod_mem_usage中发现了拐点。第三个是节点1的拓扑结构发生了变化。

PromptOps返回了正常运行时间和内存使用指标之间的信息相关性,以及相关的拓扑变化。这些见解包括检查Kubernetes的更改事件、度量、资源使用情况和拓扑结构更改。基于这种自动事件调查,开发人员和操作员应该有足够的上下文来快速确定解决问题的下一步措施。

3、将ChatGPT与Change AI相结合,缩小技能差距

根据提供的例子,很明显,ChatGPT可以提供宝贵的帮助来缩小Kubernetes的技能差距。ChatGPT为DevOps团队提供了快速的见解和清晰的解释,以解决生产问题。这使初级运营商和初涉Kubernetes的开发人员能够独立学习技术并解决常见问题。

虽然ChatGPT的响应可以快速了解问题,但它需要特定于Kubernetes部署的不同问题的上下文信息。这就是Change AI的用武之地。Change AI平台提供了因果图,将资源容量、基础设施变化、配置变化、指标历史图表和事件时间表联系起来,以优化根本原因分析的路径。

基于ChatGPT的Kubernetes学习方法有可能显著提高DevOps的生产力,同时消除认知过载。通过将ChatGPT与Change AI相结合,团队可以将他们的Kubernetes技能提高一倍,并获得更好的可观察性。

原文链接:https://thenewstack.io/overcoming-the-kubernetes-skills-gap-with-chatgpt-assistance/



Tags:K8s   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
我们一起聊聊K8s定时备份MySQL并发送到指定邮箱
边车容器(sidecar):边车容器就是与主容器一起在一个pod中运行的容器,为业务容器赋能,共享一个网络空间,所以可以用127.0.0.1:3306连接主容器的数据库。一、背景:一开始的初衷是,想...【详细内容】
2023-12-29  Search: K8s  点击:(73)  评论:(0)  加入收藏
升级就崩溃,K8s需要LTS版本!
Kubernetes集群不是在升级,就是在升级的路上。而对于维护K8s集群的团队来说,最担心的莫过于,系统因为K8s升级而引发了服务器大规模崩溃。想象一下,K8s升级发生在某个晚上,突然某...【详细内容】
2023-12-05  Search: K8s  点击:(218)  评论:(0)  加入收藏
k8s部署维护问题汇总
集群问题系统Error: unknown flag: --etcd-quorum-read删除service 里面的相应字段start request repeated too quickly for kube-apiserver.service查看是不是有之前的进程...【详细内容】
2023-11-30  Search: K8s  点击:(195)  评论:(0)  加入收藏
五分钟 k8s 实战-滚动更新与优雅停机
当我们在生产环境发布应用时,必须要考虑到当前系统还有用户正在使用的情况,所以尽量需要做到不停机发版。所以在发布过程中理论上之前的 v1 版本依然存在,必须得等待 v2 版本启...【详细内容】
2023-11-30  Search: K8s  点击:(239)  评论:(0)  加入收藏
五分钟 K8s 实战-应用探针
今天进入 kubernetes 的运维部分(并不是运维 kubernetes,而是运维应用),其实日常我们大部分使用 kubernetes 的功能就是以往运维的工作,现在云原生将运维和研发关系变得更紧密了...【详细内容】
2023-11-27  Search: K8s  点击:(182)  评论:(0)  加入收藏
Kubernetes创始人发声!K8s在被反噬!
Kubernetes 变得太复杂了,它需要学会克制,否则就会停止创新,直至丢失大本营。Kubernetes 联合创始人Tim Hockin 罕见发声。在今年的 KubeCon 上,他建议,Kubernetes 核心维护者应...【详细内容】
2023-11-27  Search: K8s  点击:(156)  评论:(0)  加入收藏
K8s-服务网格实战-配置 Mesh(灰度发布)
在上一篇 k8s-服务网格实战-入门Istio中分享了如何安装部署 Istio,同时可以利用 Istio 实现 gRPC 的负载均衡。今天我们更进一步,深入了解使用 Istio 的功能。从 Istio 的流量...【详细内容】
2023-11-08  Search: K8s  点击:(339)  评论:(0)  加入收藏
Wasm的野心:取代K8s,不如结合K8s
作者丨B. Cameron Gain编译丨诺亚出品 | 51CTO技术栈(微信号:blog51cto)虽然WebAssembly (Wasm)已被证明在浏览器和某些有针对性的服务器部署中可以很好地工作,但允许开发人员“...【详细内容】
2023-11-07  Search: K8s  点击:(375)  评论:(0)  加入收藏
在本地 K8s 中轻松部署自签 TLS 证书
随着互联网的飞速发展,安全性日益成为我们关注的焦点。HTTPS 已从一项奢侈的技术逐渐成为现代网络交互的标准。它不仅仅是保护信息的重要工具,更是实现信任和品质的象征...【详细内容】
2023-11-03  Search: K8s  点击:(254)  评论:(0)  加入收藏
K8s-服务网格实战-入门Istio
背景终于进入大家都比较感兴趣的服务网格系列了,在前面已经讲解了: 如何部署应用到 kubernetes 服务之间如何调用 如何通过域名访问我们的服务 如何使用 kubernetes 自带的配...【详细内容】
2023-11-01  Search: K8s  点击:(230)  评论:(0)  加入收藏
▌简易百科推荐
Web Components实践:如何搭建一个框架无关的AI组件库
一、让人又爱又恨的Web ComponentsWeb Components是一种用于构建可重用的Web元素的技术。它允许开发者创建自定义的HTML元素,这些元素可以在不同的Web应用程序中重复使用,并且...【详细内容】
2024-04-03  京东云开发者    Tags:Web Components   点击:(8)  评论:(0)  加入收藏
Kubernetes 集群 CPU 使用率只有 13% :这下大家该知道如何省钱了
作者 | THE STACK译者 | 刘雅梦策划 | Tina根据 CAST AI 对 4000 个 Kubernetes 集群的分析,Kubernetes 集群通常只使用 13% 的 CPU 和平均 20% 的内存,这表明存在严重的过度...【详细内容】
2024-03-08  InfoQ    Tags:Kubernetes   点击:(12)  评论:(0)  加入收藏
Spring Security:保障应用安全的利器
SpringSecurity作为一个功能强大的安全框架,为Java应用程序提供了全面的安全保障,包括认证、授权、防护和集成等方面。本文将介绍SpringSecurity在这些方面的特性和优势,以及它...【详细内容】
2024-02-27  风舞凋零叶    Tags:Spring Security   点击:(54)  评论:(0)  加入收藏
五大跨平台桌面应用开发框架:Electron、Tauri、Flutter等
一、什么是跨平台桌面应用开发框架跨平台桌面应用开发框架是一种工具或框架,它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的桌面应用程序。传统上...【详细内容】
2024-02-26  贝格前端工场    Tags:框架   点击:(47)  评论:(0)  加入收藏
Spring Security权限控制框架使用指南
在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。本文将用 waynboot-mall 项目举例...【详细内容】
2024-02-19  程序员wayn  微信公众号  Tags:Spring   点击:(39)  评论:(0)  加入收藏
开发者的Kubernetes懒人指南
你可以将本文作为开发者快速了解 Kubernetes 的指南。从基础知识到更高级的主题,如 Helm Chart,以及所有这些如何影响你作为开发者。译自Kubernetes for Lazy Developers。作...【详细内容】
2024-02-01  云云众生s  微信公众号  Tags:Kubernetes   点击:(50)  评论:(0)  加入收藏
链世界:一种简单而有效的人类行为Agent模型强化学习框架
强化学习是一种机器学习的方法,它通过让智能体(Agent)与环境交互,从而学习如何选择最优的行动来最大化累积的奖励。强化学习在许多领域都有广泛的应用,例如游戏、机器人、自动驾...【详细内容】
2024-01-30  大噬元兽  微信公众号  Tags:框架   点击:(68)  评论:(0)  加入收藏
Spring实现Kafka重试Topic,真的太香了
概述Kafka的强大功能之一是每个分区都有一个Consumer的偏移值。该偏移值是消费者将读取的下一条消息的值。可以自动或手动增加该值。如果我们由于错误而无法处理消息并想重...【详细内容】
2024-01-26  HELLO程序员  微信公众号  Tags:Spring   点击:(86)  评论:(0)  加入收藏
SpringBoot如何实现缓存预热?
缓存预热是指在 Spring Boot 项目启动时,预先将数据加载到缓存系统(如 Redis)中的一种机制。那么问题来了,在 Spring Boot 项目启动之后,在什么时候?在哪里可以将数据加载到缓存系...【详细内容】
2024-01-19   Java中文社群  微信公众号  Tags:SpringBoot   点击:(86)  评论:(0)  加入收藏
花 15 分钟把 Express.js 搞明白,全栈没有那么难
Express 是老牌的 Node.js 框架,以简单和轻量著称,几行代码就可以启动一个 HTTP 服务器。市面上主流的 Node.js 框架,如 Egg.js、Nest.js 等都与 Express 息息相关。Express 框...【详细内容】
2024-01-16  程序员成功  微信公众号  Tags:Express.js   点击:(88)  评论:(0)  加入收藏
站内最新
站内热门
站内头条