gpt4 book ai didi

docker - 如何确定在 Kubernetes 中我需要多少个服务实例?

转载 作者:行者123 更新时间:2023-12-01 12:09:31 26 4
gpt4 key购买 nike

所以基本上我是从 Kubernetes 开始的,想尝试一些东西。此时,我想部署一个 Web 服务器、一个数据库、一个 NodeJs 服务器等等......现在,我如何决定我的服务器需要这些服务中的每一个有多少个实例?

最佳答案

这个问题的答案很复杂,具体取决于您的特定应用程序行为和资源利用率。简而言之,“简短答案”将是:“视情况而定”。这取决于以下主要因素:

  • 应用程序资源利用率
    • 多少 RAM、CPU、磁盘、插槽、等等...您的应用程序通常使用:平均吗?最大限度?敏?
    • 应用程序首先会遇到哪些瓶颈或资源限制?
    • 应用程序中的哪些例程可能会导致高于正常的利用率? (这就是很多复杂性的来源......应用程序都是不同的,并且执行许多功能以响应输入,例如客户端请求。并非每个功能都具有相同的行为 w.r.t. 资源利用率。)
  • 高可用性/故障转移
    • 您选择 Kubernetes 的原因之一可能是为了轻松扩展应用程序并使其高度可用且没有单点故障。
    • 这归结为:您需要应用程序的可用性如何?
    • 在集群/服务器级别:有多少节点可以关闭或不健康,但仍然保持足够的工作节点来处理请求?
    • 在应用程序/容器级别:有多少 Pod 可以关闭并仍然处理请求或预期操作?
    • 什么程度的服务降级是可以接受的?
  • 独立的应用程序如何交互并一起运行?
    • 另一个非常复杂的问题,如果不一起观察他们的行为就很难确定
    • 您可以尝试对“每秒请求数”与资源利用率和峰值等指标进行一些分析。但是,这很难简化为单个数字或常数/线性因果关系。
    • 某些请求或输入是否会导致“扇出”或子组件上的负载放大?
    • 例如:
      • 是否有一些 SQL 查询比其他查询导致更高的数据库负载?
      • 是否有一些操作会在支持其他 ServicePod 中导致更高的资源利用率?
      • 系统在“最大负载”情况下如何协同工作?

这种事情不做负载测试是很难回答的。我见过的公司根本没有这样做!可悲的是,像这样的任何问题通常最终都会在生产中发生,并且必须事后处理。它最终成为 DevOps、Ops 或必须处理它的 on-call 工程师,这不是最好的情况,因为通常那个人不完全了解应用程序的代码,无法对其进行全面诊断和反省。

关于docker - 如何确定在 Kubernetes 中我需要多少个服务实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53110239/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com