首页 文章

应用程序堆栈应该由单个还是多个群集组成?

提问于
浏览
2

我正在为Magento应用程序堆栈构建Docker Swarm . 使用Swarm的主要原因是应用程序堆栈将在多节点环境中运行 .

以下是应用程序堆栈将运行的服务 -

  • 清漆(加速器)

  • Nginx(网络服务器)

  • Redis(缓存/会话)

  • MySQL(存储)

上述4种服务中的每一种都应该是独立群集的一部分(即4种不同的群集)吗?或者,是否应该为整个应用程序堆栈提供单个群集群集以及某种机制(可能使用Swarm过滤器),仅将服务部署到特定的节点集?

什么是最佳做法?

1 回答

  • 0

    上述4种服务中的每一种都应该是独立群集的一部分(即4种不同的群集)吗?

    相同的群集群集(用于访问同一个泊坞网络的所有服务),尤其是在使用群集模式时 .
    请参阅Docker队长Luc Juggery的“Deploy a multi services application with swarm mode” .
    他创建了一个docker网络和一个kv商店(使用swarm模式时不需要),并启动所有连接到同一网络的4个服务 .

    docker-machine ssh manager1 docker network create -d overlay appnet
    docker-machine ssh manager1 docker service create --name redis --network appnet redis:3.0.7-alpine
    docker-machine ssh manager1 docker service create --name mongo --network appnet mongo:3.2
    ...
    

    但是,将这些服务(再次,在同一群集群中)分组的方式是Distributed Application Bundle,如“My first try with DAB (aka Distributed Application Bundle)”所示 .
    它使用docker-compose bundle将现有的docker compose文件转换为dab .
    注意:在docker 1.12中,bundle仍然是实验性的 .

相关问题