2023年基准Kubernetes报告:6个K8s可靠性失误

这篇具有很好参考价值的文章主要介绍了2023年基准Kubernetes报告:6个K8s可靠性失误。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2023年基准Kubernetes报告:6个K8s可靠性失误,k8s,云原生,云计算,kubernetes,容器,云原生

云计算日益成为组织构建应用程序和服务的首选目的地。尽管一年来经济不确定性的头条新闻主要集中在通货膨胀增长和银行动荡方面,但大多数组织预计今年的云使用和支出将与计划的相同(45%),或高于计划的(45%)。Flexera公司2023年云现状报告中的新数据显示,仅有10%的受访者预计云支出会比计划的略低或显著降低。无论在支出方面的计划如何,许多组织都在寻找方法来控制高昂的云成本,同时确保Kubernetes工作负载的可靠性。但是,将成本尽可能降低并不意味着您不需要确保平台和服务的用户满意度。

通过分析超过150,000个工作负载和数百家组织的数据,Fairwinds制作了2023年Kubernetes基准报告。该报告将2022年的数据与上一年的基准进行了比较。行业报告显示,尽管在开发和生产环境中采用Kubernetes的情况增加,但对Kubernetes最佳实践的遵循仍然对许多组织构成挑战。不幸的是,缺乏遵循通常会导致现实世界中的后果,比如增加的安全风险、未受管控的云成本以及云应用程序和服务可靠性的降低。基准中有六个与可靠性相关的领域,每个领域都与配置错误相关联。

1. 内存限制和内存请求缺失

根据Kubernetes最佳实践,您应该始终在工作负载上设置资源限制和请求,但对于大多数人来说,很难确定每个应用程序应该使用哪些值。通常,这会导致要么根本不设置请求或限制,要么将它们设置得太高,然后再也不调整它们。根据2021年的基准数据,41%的组织为超过90%的工作负载设置了内存请求和限制。但在最新的报告中,这个比例下降到仅为17%。这可能是由于开发人员和DevOps团队不知道要设置什么限制,Kubernetes使用量增加而没有增加配置可见性,或者两者的结合。调整每个Pod的内存限制和请求可以确保您的Kubernetes集群扩展操作正常运行。适当设置内存限制和请求可以帮助您确保Kubernetes集群上的应用程序运行尽可能高效和可靠

2. 存活探针和就绪探针缺失

存活探针用于确定容器是否在运行。在Kubernetes中,您使用探针定期监视应用程序的健康状况。当存活探针检测到失败状态时,Kubernetes会自动重新启动容器,将您的服务恢复到可运行状态。您应该在每个Pod的每个容器中放置一个存活探针;如果没有存活探针,有故障或不起作用的Pod将无限期地运行,消耗宝贵的资源并可能导致应用程序错误。最新的基准报告显示,83%的组织对超过10%的工作负载未设置存活探针或就绪探针。而在前一年,65%的组织对超过10%的工作负载未设置存活探针或就绪探针。可喜的是,这个问题并没有得到改善。

3. 拉取策略未设置为Always

有时团队会依赖Docker容器镜像的缓存版本,这可能导致可靠性问题。默认情况下,如果一个节点上没有缓存该镜像,它将始终被拉取。这可能导致每个节点上运行不同版本的镜像。它还可能在没有直接访问ImagePullSecret的情况下提供对镜像的访问权限。在最新的报告中,25%的组织几乎对所有的工作负载都依赖于缓存镜像,这与前一年的15%相比显著增加。这种增加对应用程序的可靠性产生了负面影响。

4. 部署副本缺失

在今年的基准测试中,新增了对仅有一个副本的部署进行检查,这也可能对可靠性产生负面影响。根据数据,25%的组织有超过一半的工作负载没有副本。这会影响可靠性,因为如果一个节点崩溃,当副本数为1时,部署将重启应用服务,但在此期间将没有可用的副本导致服务短时间内不可用。部署多个副本可以帮助组织确保容器稳定可用。

5. 缺失CPU限制

根据2021年的数据,36%的组织在少于10%的工作负载上缺少CPU限制。最新的报告显示,受影响的工作负载数量在各类工作负载中都增加了。86%的组织的工作负载中超过10%受到影响。指定CPU限制很重要,因为没有限制,容器将没有任何上限,可以消耗全部节点上可用的CPU,导致性能减慢并耗尽所有CPU资源

6. 缺失CPU请求

之前,只有50%的组织在至少10%的工作负载上缺少请求。最新的基准报告显示,78%的组织的工作负载中有超过10%受到影响。工作负载中缺少CPU请求的组织数量从0%上升到17%。如果允许一个单独的Pod使用全部节点的CPU和内存,它可能会使其他Pod的资源匮乏。适当设置资源请求可以增加应用程序和服务的可靠性,因为它确保Pod将拥有访问所需资源的权限,并防止其他Pod占用节点上的所有可用资源。

Kubernetes的可靠性仍然是一个挑战

Kubernetes为组织提供了出色的价值,并支持按需扩展和灵活性。与此同时,它是一个复杂的环境,有很多可配置项。学习如何适当地调整它们以满足您的环境和业务需求可能会很具有挑战性,并容易出错。Kubernetes基准报告可以帮助您了解其他组织在哪些方面存在问题,并为您提供有助于使组织的部署尽可能安全、可靠和高效的改变。

 文章来源地址https://www.toymoban.com/news/detail-609861.html

到了这里,关于2023年基准Kubernetes报告:6个K8s可靠性失误的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Istio:如何优化Kubernetes中的服务可靠性

    作者:禅与计算机程序设计艺术 在微服务架构的日益流行和普及下,越来越多的公司都在探索基于容器技术、Service Mesh 和 Kubernetes 的新型应用架构模式。而 Service Mesh 则是 Service Proxy 的一种实现方式,通过它能够在分布式环境下提供服务间的流量控制、熔断、监控等功能。

    2024年02月05日
    浏览(44)
  • K8s(Kubernetes)学习(二):k8s集群搭建

    minikube 只是一个 K8S 集群模拟器,只有一个节点的集群,只为测试用,master 和 worker 都在一起。 裸机安装 至少需要两台机器(主节点、工作节点个一台),需要自己安装 Kubernetes 组件,配置会稍微麻烦点。 缺点:配置麻烦,缺少生态支持,例如负载均衡器、云存储。 直接用

    2024年02月09日
    浏览(58)
  • Kubernetes(K8S)学习(三):K8S实战案例

    附:查看命名空间命令 kubectl get namespace kubectl get ns 创建wordpress-db.yaml文件,这里以mysql作为wordpress的db: yaml内容: 根据wordpress-db.yaml配置,创建资源mysql数据库: yaml中MySQL配置说明: 用户:root       密码:rootPassW0rd 数据库名称:wordpress 用户:wordpress       密码:wo

    2024年04月09日
    浏览(82)
  • Kubernetes(K8S)学习(四):K8S之Storage

    kubernetes使用NFS共享存储有两种方式: (1)手动方式静态创建所需要的PV和PVC(见本文1.3.2小节)。 (2)通过创建PVC动态地申请PV(见本文1.4.2小节)。 Volume地址 :https://kubernetes.io/docs/concepts/storage/ 1.1.1、Volume简介 volume(/ˈvɒljuːm/,IT词汇–百度百科): 在电脑中, volume(

    2024年04月15日
    浏览(34)
  • K8s(Kubernetes)学习(一):k8s概念及组件

    Kubernetes中文文档:https://kubernetes.io/zh-cn/docs/home/ Kubernetes源码地址:https://github.com/kubernetes/kubernetes 首先要了解应用程序部署经历了以下几个时代: 传统部署时代:在物理服务器上运行应用程序。 虚拟化部署时代:虚拟化技术允许你在单个物理服务器的 CPU 上运行多台虚拟机

    2024年02月05日
    浏览(53)
  • K8S认证工程师(CKA)考试(最新版,实测可靠)

    k8s的全部考试答案,亲测可靠,博主CKA,CKS已过,欢迎交流。(求个关注吧) 1、权限控制 RBAC 设置配置环境: [candidate@node-1] $ kubectl config use-context k8s Context 为部署流水线创建一个新的 ClusterRole 并将其绑定到范围为特定的 namespace 的特定 ServiceAccount 。 Task 创建一个名为 deploy

    2024年04月25日
    浏览(44)
  • Kubernetes(K8s)

    为 容器化 应用提供集群部署和管理的开源工具,由 Google 研发,在2014开源。 Pod :一个 pod 可以运行多个容器。 运行在 cluster 所有节点上,负责启动 POD 和容器。 用于初始化 cluster Kubenetes 命令行工具,部署和应用,查看各种资源、创建、删除和更新组件。 统一路由

    2024年02月08日
    浏览(46)
  • Kubernetes k8s

    一个开源的容器编排引擎,用来对容器化应用进行自动化部署、 扩缩和管理。 从架构设计层面,k8s能很好的解决可用性,伸缩性;从部署运维层面,服务部署,服务监控,应用扩容和故障处理,k8s都提供了很好的解决方案。 k8s主要包括以下几点: 服务发现与调度 Kubernetes

    2024年02月19日
    浏览(48)
  • 【K8s】K8s是什么,一文带你了解kubernetes

    作者简介: 辭七七,目前大二,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 kubernetes,简称K8s,是用8代替名字中间的8个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主

    2024年02月03日
    浏览(58)
  • Kubernetes(k8s)实战:使用k8s+jenkins实现CICD

    CIDI(Continuous Integration,Continuous Delivery Deployment),持续集成,持续部署,持续发布。 也就是说,在本地开发完代码之后,push到远程仓库,然后代码打包、部署的这个过程完全是自动化完成的。 但是我们不要进入一个误区,CICD并不意味着一定就是这一套流程,只要实现了代

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包