问题描述
我对基础架构还很陌生,因此我构建了一个简单的整体应用程序,并使用docker构建了一个容器并将其部署在linux服务器上。我的问题是,我需要为单个容器安装kubernetes吗?如果没有,我该如何扩展或进行负载平衡。
解决方法
“ ...我是否需要为单个容器安装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 article中描述了一种可能的配置。