首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何:弹性容器服务上的文档化MongoDB复制

如何:弹性容器服务上的文档化MongoDB复制
EN

Server Fault用户
提问于 2015-07-24 09:37:53
回答 2查看 5.1K关注 0票数 10

我有一个Node.js应用程序和一个运行在AWS上的MongoDB数据库。我目前所得到的设置由两个ELB和两个实例组成,每个实例运行一个Docker容器并分配其服务(节点/mongo):

代码语言:javascript
复制
Elastic Load Balancer -> Dockerized Node -> Elastic Load Balancer -> Dockerized MongoDB

我正在为MongoDB运行正式的Docker映像,在这里可以找到:https://registry.hub.docker.com/_/蒙戈/

任何关于如何使用Docker和ECS为MongoDB部署MongoDB的指针,每个副本都运行在不同的实例上。

EN

回答 2

Server Fault用户

发布于 2017-04-26 22:58:44

不要篡改数据库。码头集装箱意味着是短暂的,而不是保存数据。这对数据库是不合适的。

特别是,不要尝试对MongoDB集群进行篡改。副本集的设置是非常有状态和复杂的。您必须按顺序运行许多命令,并且只运行一次。如果您错过了任何命令,或者节点发生故障,整个集群可能会死锁,您将被迫重新启动。

Docker对于应用程序应该如何运行有自己的想法。要在码头内完成这项工作是非常困难的。

如果您想要一个带有3个副本的集群,您应该获得3个AWS实例并在实例上设置MongoDB。搜索谷歌上的mongodb setting up a replica set on <OS>,这将给你一个最新的教程。

票数 2
EN

Server Fault用户

发布于 2017-08-29 18:25:14

FireCamp干的。FireCamp可以非常容易地在AWS上部署MongoDB ReplicaSet。1)使用cloudformation部署ECS集群,2)通过一个命令部署MongoDB ReplicaSet。有关详细信息,请查看FireCamp安装wiki

为了安全起见,最好在另一个ECS集群中运行Node.js应用程序。运行EC2的MongoDB实例不应公开给外部世界。

Node.js应用程序访问MongoDB ReplicaSet并不需要弹性负载均衡器。每个副本都有一个唯一的dns名称。Node.js应用程序只需使用dns名称即可访问MongoDB。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/708189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档