【发布时间】:2020-08-30 13:13:50
【问题描述】:
我对基础架构非常陌生,因此我构建了一个简单的单体应用程序,并使用 docker 构建容器并将其部署在我的 linux 服务器上。我的问题是,我是否需要为单个容器安装 kubernetes,如果不需要,我该如何扩展或进行负载平衡。
【问题讨论】:
标签: docker kubernetes infrastructure
我对基础架构非常陌生,因此我构建了一个简单的单体应用程序,并使用 docker 构建容器并将其部署在我的 linux 服务器上。我的问题是,我是否需要为单个容器安装 kubernetes,如果不需要,我该如何扩展或进行负载平衡。
【问题讨论】:
标签: docker kubernetes infrastructure
“...我需要为单个容器安装 kubernetes” - 不,这不是强制性的。可以使用 docker 来管理应用程序。 Kubernetes 是一个可以用于编排容器化应用程序的平台。它提供了工具和概念,例如基于负载的autoscaling、通过namespaces 进行隔离、通过services 和ingresses 进行网络访问管理等等。但 Kubernetes 并不是唯一的编排平台。还有其他的,例如OpenShift、docker swarm、rancher。所有这些都是可选平台,如有必要,可以使用额外的工具和概念。
“如何扩展或进行负载平衡。” - 例如,我们可以定义副本through the replicas variable in a docker-compose file。一个服务下定义的所有容器都可以通过这个服务的名字来访问。还可以通过endpoint_mode configuration 配置平衡的具体完成方式。如果我们需要更多控制,我们可以部署一个单独的负载均衡器,例如nginx。 this medium article 中描述了一种可能的配置。
【讨论】: