我正在尝试构建一个 Web 应用程序,每个用户都可以获得他们自己的应用程序实例,在自己的容器中运行。我是 Kubernetes 的新手,所以我可能没有正确理解某些东西。
我将使用一些物理服务器,据我所知,在 kubernetes 中称为节点。对于每个节点,有 100 个 Pod 的限制。因此,如果我正在构建应用程序以便每个用户都有自己的 pod,那么每个物理服务器是否会限制为 100 个用户? (如果我有 10 台服务器,我只能有 500 个用户?)我想我可以运行多个虚拟机作为每个物理服务器上的节点,但这不会破坏容器化的目的吗?
最佳答案
在一个节点中拥有太多 pod 的主要问题是因为它会降低节点性能并且使管理容器更慢(有时甚至不可靠),每个 pod 都是单独管理的,增加数量将花费更多时间和更多资源。
当你创建一个 POD 时,运行时需要保持一个恒定的轨道,做探测(准备和活跃性),监控,路由规则许多其他的小位,这些小位会增加节点中的负载。
容器也需要处理器时间才能正常运行,即使您可以分配 CPU 的一部分,添加太多容器\pod 会增加上下文切换并在 POD 消耗其配额时降低性能。
每个平台提供商也设置了自己的限制以提供良好的服务质量和 SLA,节点过载也是一个风险,因为节点是单点故障,高密度节点的任何故障都可能对整个网络造成巨大的影响。集群和应用程序。
您应该考虑:
关于限制,this thread对问题进行了很好的讨论
关于kubernetes - 关于每个节点限制 100 个 Pod 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55354138/