如果我的应用程序只是 1 个需要扩展的 docker 文件,那么使用 Kubernetes 有什么意义吗?

如果我的应用程序只是 1 个需要扩展的 docker 文件,那么使用 Kubernetes 有什么意义吗?

运行 kubernetes 集群有什么好处,而不是仅仅生成一个启动我的 vm+容器映像的负载均衡器。

答案1

部署和管理 Kubernetes (K8s) 集群的开销很大。除非你的规模很大,否则我认为可能不会。

还有其他选项可能比生成实例更好。

AWS ECS是一个非常适合的托管容器解决方案的示例。

K8s 还带来了一些其他优势,例如滚动更新以及集中式日志记录和性能指标。如果您的单个应用程序规模很大,那么 K8s 可能是合理的。

答案2

一般来说,如果您的容器数量不超过 100 个,请不要使用 K8。当您的容器数量达到数百甚至数千个时,K8 才真正发挥作用 - 通常发生在一些高级、数据负载繁重的机器学习 (ML) 应用程序中。

  • 最多 10 个容器:用户 Docker Swarm;随 Docker 提供,即您无需像 K8 那样安装或配置它。如果您想了解更多信息,请查看Kubernetes 与 Swarm

  • 10 至 100 个容器:

    • 如果您想要控制实例的大小、容器的数量以及 ECS 服务的一些附加参数(控制正在运行的容器数量的包等,这是 ECS 相当于 K8 kube...),请使用 ECS。
    • 如果您不想控制扩展和底层 EC2 实例,请使用 Fargate;只需提供任务定义(与 ECS 一样),AWS Fargate 将自动完成其余工作。

相关内容