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

采用 Kubernetes 时,这些“坑”不要踩!

时间:2023-01-11 14:06:51  来源:CSDN  作者:

摘要:对系统透彻的理解可以提高工作效率。

链接:https://dzone.com/articles/adopting-kube.NETes-here-are-some-pitfalls-you-sho

作者 | Luca Galante

译者 | 弯月 责编 | 郑丽媛

出品 | CSDN(ID:CSDNnews)

知己知彼百战不殆,为了利用好工具,首先我们需要了解工具。Kubernetes 是开发运维的关键要素,就像画笔之于艺术家,斧锯之于木匠。

然而,许多开发人员并没有投入足够的时间来学习他们喜欢的工具包的基础知识,更不用说深入研究这些工具为企业带来的价值了。事实上,掌握 Kubernetes 并非易事。虽然对于一个如此规模的工具来说,Kubernetes 的复杂性并不算过度,但对于初学者来说依然充满了挑战。

这正是我们创建 2022 年 Kubernetes 基准研究的原因。随着云原生的采用率以健康的速度增长,越来越多的团队开始尝试采用这种工作流程,但结果并不一定能达到他们的预期。因此,我们花了几个月的时间研究整个行业的 1160 多个开发团队,根据他们的 Kubernetes 设置和实践建立了基准。在此过程中,我们探讨了以下问题:

  • 高性能组织使用 Kubernetes 的方式有何不同?
  • 团队的结构、文化和方法对 Kubernetes 的成功采用有何影响?
  • 从表现不佳的 Kubernetes 采用者到成功的容器化大师,是否有必胜的途径?
  • 是否有正确的方法能够创建永不过时的 Kubernetes 设置?

我们的研究采用了自定义的 Kubernetes 绩效分数。根据针对我们的问题给出的回答,我们给各个组织评分,范围为0(表现不佳)~100(表现突出)。然后,我们重点分析了提供了完整信息的团队。尽管这极大地限制了分析群体的范围,但我们认为这可以更公平地描绘当前 Kubernetes 生态系统的使用情况。

成功需要的不仅仅是良好的意愿:将容器化的实现和规划能力作为绩效衡量标准

我们的分析表明,表现不佳和表现突出的企业之间存在许多明显的区别。最令人感叹痛惜的是实施领域:超过 66% 的顶级企业将他们的所有服务都容器化了,而表现不佳的企业中只有 22% 的服务实现了容器化。

Kubernetes 采用的趋势相同,这意味着适应容器化是充分利用 Kubernetes 的关键。这完全合理,因为 Kubernetes 是一个容器编排系统,但对于如何成功迁移到 Kubernetes 的问题,我们也听到了一些其他常见的制约因素:

  • 低估 Kubernetes 的复杂性:无论表现是否突出,各个企业都有类似的经历,他们之间的差异很小。因此,在启动集群或购买云提供商之前,首先需要进行深入的培训。
  • 在采用 Kubernetes 之前树立不切实际或不准确的期望:许多潜在的企业都遇到了一些问题,比如发现 Kubernetes 很难使用——至少难度超过了他们的预期。而有些人则发现采用 Kubernetes 节省的成本并没有达到预期,或者遇到云服务不兼容的问题。

简而言之,脚踏实地,才能更好地起步。Kubernetes 确实可以解决很多问题,但前提是建立适当的规划,而且更重要的是做好全面容器化的准备。

技术障碍:安全、团队管理以及开发人员自助服务的程度

我们发现的一件有趣的事情是,在迁移到 Kubernetes 的过程中,一些常见的技术障碍会反复出现。或许你的经历会有所不同,但在考虑采用 Kubernetes 时,请务必牢记这些潜在的挑战:

实现一定程度的安全性的难度较大

70% 的企业都提到了 Kubernetes 的安全性,但这并不意味着他们都实现了一定程度的安全性。尽管表现突出的企业都使用了机密管理工具,但仍有很大一部分表现不佳的企业犯下了一些严重的错误。例如,许多企业以明文的形式将机密保存到代码库,并手动应用更改,或未能分离特定于某个环境和不依赖于环境的配置。此外,还有一些企业对最佳实践缺乏清晰的认识。

不适合的组织文化可能会阻碍 Kubernetes 迁移

迁移到 Kubernetes 是一个巨大的文化转变。但是这类的变化一般自上而下推动的效果更好。

相比之下,表现不佳的企业通常会错误地认为,Kubernetes知识可以现学现用,导致整个迁移依赖于某个关键员工,这有可能成为将来最大的弱点。与表现突出的企业相比,表现欠佳的企业无法准确记录和可视化他们的设置,而他们花在帮助开发人员掌握 Kubernetes 的时间也更少。

自助服务需要更好地为开发人员服务

自助服务是另一个巨大的影响因素。尽管在表现突出的企业中,90% 声称他们的开发人员可以独立或按需部署,但只有 39% 表现欠佳的企业有这样的自信。

令人担忧的是,超过 31% 表现欠佳的企业认为,他们的大多数团队成员都不敢部署到 Kubernetes 集群,因为害怕破坏已有系统。从组织的角度来看,这并不是一个好兆头,这种心理给推进容器化带来的潜在问题甚至超过了其他领域。集中式的工作流程会造成人力资源瓶颈,从而抵消容器化的一些主要优势,例如能够自主工作和快速配置基础设施。

克服困难

各个团队应该如何高效使用 Kubernetes 呢?我们发现,大多数成功案例都是在平台工程团队构建的更大的内部开发人员平台框架内采用 Kubernetes。换句话说,表现突出的团队会构建工具、支持系统和基础设施,确保的开发人员能够有效地自助服务。

同时,我们不能不指出,有效的开发者生态系统必须积极追求整体理想。有效的内部开发人员平台会强制推进标准化和最佳实践。在此过程中,开发人员可以不断尝试 Kubernetes ,同时避免由于其不可否认的复杂性而带来的陷阱。这些企业通过这种方式,最大限度地减少开发团队的认知负担,让他们能够专注于重要的工作。

通过学习展现最好的一面

Kubernetes 是一个复杂但功能强大的系统,可帮助改善企业的运营。但问题是,你是否做好准备,付出必要的努力来掌握这款工具,并在迈出关键的第一步之前,为此次成功的迁移之旅构建框架?

从长远来看,Kubernetes 只是一个起点,它本身不能充当整个开发人员平台,但可以为你的平台工程计划打下坚实的基础。



Tags:Kubernetes   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Kubernetes 究竟有没有 LTS?
从一个有趣的问题引出很多人都在关注的 Kubernetes LTS 的问题。有趣的问题2019 年,一个名为 apiserver LoopbackClient Server cert expired after 1 year[1] 的 issue 中提...【详细内容】
2024-03-15  Search: Kubernetes  点击:(7)  评论:(0)  加入收藏
Kubernetes 集群 CPU 使用率只有 13% :这下大家该知道如何省钱了
作者 | THE STACK译者 | 刘雅梦策划 | Tina根据 CAST AI 对 4000 个 Kubernetes 集群的分析,Kubernetes 集群通常只使用 13% 的 CPU 和平均 20% 的内存,这表明存在严重的过度...【详细内容】
2024-03-08  Search: Kubernetes  点击:(22)  评论:(0)  加入收藏
聊聊 Kubernetes 网络模型综合指南
这篇详细的博文探讨了 Kubernetes 网络的复杂性,提供了关于如何在容器化环境中确保高效和安全通信的见解。译自Navigating the Network: A Comprehensive Guide to Kubernete...【详细内容】
2024-02-19  Search: Kubernetes  点击:(40)  评论:(0)  加入收藏
Kubernetes是什么?主要特点是什么?
Kubernetes是什么?Kubernetes,也称为K8s,是一个开源的容器编排系统,由Google首次开发和维护。它允许容器化的应用程序在集群中自动部署、扩展和管理。Kubernetes提供了一种容器...【详细内容】
2024-02-01  Search: Kubernetes  点击:(169)  评论:(0)  加入收藏
开发者的Kubernetes懒人指南
你可以将本文作为开发者快速了解 Kubernetes 的指南。从基础知识到更高级的主题,如 Helm Chart,以及所有这些如何影响你作为开发者。译自Kubernetes for Lazy Developers。作...【详细内容】
2024-02-01  Search: Kubernetes  点击:(53)  评论:(0)  加入收藏
Kubernetes Informer基本原理,你明白了吗?
本文分析 k8s controller 中 informer 启动的基本流程不论是 k8s 自身组件,还是自己编写 controller,都需要通过 apiserver 监听 etcd 事件来完成自己的控制循环逻辑。如何高...【详细内容】
2024-01-30  Search: Kubernetes  点击:(41)  评论:(0)  加入收藏
Kubernetes 100个常用命令!
这篇文章是关于使用 Kubectl 进行 Kubernetes 诊断的指南。列出了 100 个 Kubectl 命令,这些命令对于诊断 Kubernetes 集群中的问题非常有用。这些问题包括但不限于:• 集...【详细内容】
2024-01-03  Search: Kubernetes  点击:(81)  评论:(0)  加入收藏
一文读懂Kubernetes部署策略
在这篇文章中,我们将深入研究 Kubernetes 部署概念和一些常见策略,了解每种策略的优缺点。合适的部署策略使我们能够在发布应用程序时最大限度地减少停机时间、增强客户体验并...【详细内容】
2024-01-03  Search: Kubernetes  点击:(63)  评论:(0)  加入收藏
从Kubernetes的探针到DevOps
今天在群里又看有人问如何设置 Kubernetes 的探针,感觉要补充的话太多了,结合我们在一些 DevOps 项目中痛苦的体验,今天一劳永逸的全部说完,此外,也为大家展现一下为什么 DevOps...【详细内容】
2023-12-27  Search: Kubernetes  点击:(121)  评论:(0)  加入收藏
如何基于Kubernetes运行Nacos高可用集群
Nacos(Namings and Configuration Management)是阿里巴巴开源的一个易于构建云原生应用的动态服务发现、配置管理和服务管理平台。以下是Nacos的一些主要功能和特点: 服务发现...【详细内容】
2023-12-18  Search: Kubernetes  点击:(74)  评论:(0)  加入收藏
▌简易百科推荐
Qt与Flutter:在跨平台UI框架中哪个更受欢迎?
在跨平台UI框架领域,Qt和Flutter是两个备受瞩目的选择。它们各自具有独特的优势,也各自有着广泛的应用场景。本文将对Qt和Flutter进行详细的比较,以探讨在跨平台UI框架中哪个更...【详细内容】
2024-04-12  刘长伟    Tags:UI框架   点击:(6)  评论:(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   点击:(22)  评论:(0)  加入收藏
Spring Security:保障应用安全的利器
SpringSecurity作为一个功能强大的安全框架,为Java应用程序提供了全面的安全保障,包括认证、授权、防护和集成等方面。本文将介绍SpringSecurity在这些方面的特性和优势,以及它...【详细内容】
2024-02-27  风舞凋零叶    Tags:Spring Security   点击:(59)  评论:(0)  加入收藏
五大跨平台桌面应用开发框架:Electron、Tauri、Flutter等
一、什么是跨平台桌面应用开发框架跨平台桌面应用开发框架是一种工具或框架,它允许开发者使用一种统一的代码库或语言来创建能够在多个操作系统上运行的桌面应用程序。传统上...【详细内容】
2024-02-26  贝格前端工场    Tags:框架   点击:(50)  评论:(0)  加入收藏
Spring Security权限控制框架使用指南
在常用的后台管理系统中,通常都会有访问权限控制的需求,用于限制不同人员对于接口的访问能力,如果用户不具备指定的权限,则不能访问某些接口。本文将用 waynboot-mall 项目举例...【详细内容】
2024-02-19  程序员wayn  微信公众号  Tags:Spring   点击:(40)  评论:(0)  加入收藏
开发者的Kubernetes懒人指南
你可以将本文作为开发者快速了解 Kubernetes 的指南。从基础知识到更高级的主题,如 Helm Chart,以及所有这些如何影响你作为开发者。译自Kubernetes for Lazy Developers。作...【详细内容】
2024-02-01  云云众生s  微信公众号  Tags:Kubernetes   点击:(53)  评论:(0)  加入收藏
链世界:一种简单而有效的人类行为Agent模型强化学习框架
强化学习是一种机器学习的方法,它通过让智能体(Agent)与环境交互,从而学习如何选择最优的行动来最大化累积的奖励。强化学习在许多领域都有广泛的应用,例如游戏、机器人、自动驾...【详细内容】
2024-01-30  大噬元兽  微信公众号  Tags:框架   点击:(71)  评论:(0)  加入收藏
Spring实现Kafka重试Topic,真的太香了
概述Kafka的强大功能之一是每个分区都有一个Consumer的偏移值。该偏移值是消费者将读取的下一条消息的值。可以自动或手动增加该值。如果我们由于错误而无法处理消息并想重...【详细内容】
2024-01-26  HELLO程序员  微信公众号  Tags:Spring   点击:(91)  评论:(0)  加入收藏
SpringBoot如何实现缓存预热?
缓存预热是指在 Spring Boot 项目启动时,预先将数据加载到缓存系统(如 Redis)中的一种机制。那么问题来了,在 Spring Boot 项目启动之后,在什么时候?在哪里可以将数据加载到缓存系...【详细内容】
2024-01-19   Java中文社群  微信公众号  Tags:SpringBoot   点击:(88)  评论:(0)  加入收藏
站内最新
站内热门
站内头条