2024 K8s基准报告:工作负载可靠性的最新趋势

60bca8b2e78d81f12a0ed4001091eaa6.gif

翻译 | ChatGPT

出品 | CSDN(ID:CSDNnews)

据 Gartner 预测,到 2028 年,云计算将成为保持企业竞争力的必备组成部分。预计到 2024 年,公共云服务的支出将达到 6790 亿美元。虽然云计算支出的情况相当复杂,但许多企业正在将应用程序和服务迁移到云端,并利用 Kubernetes 来有效管理容器,确保工作负载的可靠性。

Fairwinds 收集了超过 33 万个工作负载和数百个组织的数据,制作了 2024 年 Kubernetes 基准报告。该报告分析了 2024 年的趋势,并将结果与 2022 年和 2023 年的基准报告进行了对比。尽管许多企业已经在生产环境中使用 Kubernetes 部署了工作负载,但仍然面临与 Kubernetes 最佳实践不符的挑战。不幸的是,如果企业与 Kubernetes 的最佳实践不一致,可能会面临严重后果,如增加的安全风险、云计算成本失控以及应用程序和服务的可靠性降低。

本文聚焦与工作负载可靠性相关的六个方面,以帮助您确定自己在哪些方面做得不错,或者需要做出改进。

e5823c33596f27f7da98a68f11e4122a.png缺少“活跃性”和“就绪性”探针

“活跃性”探针告诉我们容器是否在运行,这是判断 Kubernetes 工作负载是否正常的一个重要标志。如果一个容器的活跃性探针失败,Kubernetes 就会自动发出信号,重新启动容器,以恢复服务。但如果您的每个容器都没有设置活跃性探针,那么出现问题的容器可能会一直运行下去,消耗资源,并且有时还会导致应用程序出错。

同样,“就绪性”探针告诉我们容器是否准备好接收流量,这也影响着应用程序的可靠性。由于容器不可避免地会出现故障,需要重新启动,Kubernetes 的活跃性和就绪性探针就显得尤为重要,它们确保在容器故障时能够及时恢复并准备好接收流量。

根据基准数据显示,69% 的组织中有 11-50% 的工作负载缺少活跃性探针,66% 的组织中有 11-50% 的工作负载缺少就绪性探针。您是否已经确保您的工作负载中设置了活跃性和就绪性探针呢?9cf8b8be95f20ec447d4158a5dad4371.png

df3289ce2b37d8275b1057f88c111144.png拉取策略不一直是明智的选择

在 Kubernetes 中,拉取策略是一个设置项,用来确定 Kubernetes 何时以及如何为 pod 拉取容器镜像。它告诉 Kubernetes 的工作节点(kubelets)在运行 pod 时如何处理镜像下载。但遗憾的是,过度依赖缓存的 Docker 镜像可能会带来可靠性和安全性方面的问题。

默认情况下,如果正在尝试运行的节点上尚未缓存镜像,Kubernetes 就会尝试拉取镜像。然而,如果使用了缓存版本,可能会导致在每个节点上运行多个版本的镜像。这可能会带来潜在的安全隐患,主要是因为 Kubernetes 会在不验证来源的情况下使用缓存的镜像版本。根据 2024 年的基准数据显示,受影响的工作负载数量有所增加:24% 的组织中,超过 90% 的工作负载都依赖于缓存镜像,这可能会严重影响应用程序的可靠性。

c8a91731e676516158a5b493eeddc7c2.png部署存在缺失副本

由于发现不少工作负载没有配置副本,所以从 2023 年开始,K8s 基准报告将缺失副本纳入分析当中。在 2024 年,55% 的组织有超过 21% 的工作负载缺失副本。副本有助于维持容器的稳定性和可用性,因为 ReplicaSet 将替换失败的 Pod。您的工作负载中有多少百分比缺失副本?

2d827723151d157cef03d06fd4e48048.pngCPU 限制缺失

据最新的基准数据显示,越来越多的组织开始设置 CPU 限制。据数据显示,在 22% 的组织中,有不到 10% 的工作负载没有设置 CPU 限制,这样容器就没有任何上限控制,这是值得引起注意的问题。因为 CPU 密集型容器可能会使用节点上可用的所有 CPU,从而使其他容器缺乏它们所需的资源。设置 CPU 限制有助于提高应用程序的成本效率和可靠性,因此值得检查它们是否已就位并适当设置。

1e9c6dfc9710c6e0c0c65c7f4b584f9a.png

CPU 请求缺失

从新数据来看,组织似乎正在认识到确保设置 CPU 请求的重要性。2022 年,仅有 50% 的组织在至少 10% 的工作负载上缺失请求,而 2023 年有 78% 的组织在至少 10% 的工作负载上缺失请求。今年,工作负载受缺失 CPU 请求影响达 10%及以上的组织占比降至 67%。与 CPU 限制相似,如果未设置 CPU 请求,单个 Pod 可能会耗用节点的所有 CPU 和内存,进而导致其他 Pod 缺乏所需资源。设置资源请求可确保 Pod 能够访问所需资源,这有助于提高应用程序和服务的可靠性。

aff8321b1865afb7c3fca5a727a10580.png工作负载可靠性仍然具有挑战性

Kubernetes 在 2024 年及以后为组织带来了非凡的价值,这意味着如果你想满足环境和业务需求,了解 Kubernetes 中可用的许多配置以及如何适当调整它们至关重要。Kubernetes 基准报告可以帮助您了解您的同行在配置其工作负载方面的成功和失败之处,以及他们是否始终符合最佳实践。利用这些信息来帮助您配置您的部署,使其尽可能安全、可靠和具有成本效益。

报告详细:https://www.cncf.io/blog/2024/04/03/a-2024-k8s-benchmark-report-the-latest-trends-in-workload-reliability/

活动推荐

2024 全球机器学习技术大会特设立「代码大模型与软件变革」技术专题演讲,邀请来自微软、百度、阿里巴巴、智谱、面壁智能、DeepWisodm、复旦大学等企事业一线技术实战专家亲临会场,分享 AI 浪潮下的软件研发效能提升之道。

1bce77703404b56cc34346d7c4eea7ef.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值