首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure中推荐的副本集配置

问Azure中推荐的副本集配置
EN

Stack Overflow用户
提问于 2015-04-21 01:14:53
回答 1查看 273关注 0票数 0

我们在Azure上运行MongoDB,正在设置生产副本集(无分片),我在这里查看建议:

http://docs.mongodb.org/ecosystem/tutorial/install-mongodb-on-linux-in-azure/

我看到副本集配置是这样的,成员将通过外部IP地址相互通信-这不是将1)产生额外的Azure成本,因为复制流量通过外部IP,以及2)由于相同的复制延迟?

我们至少有一个与Mongo对话的应用程序将在Azure之外运行。

AWS有一个功能,当从虚拟机查找时,外部DNS名称解析为内部IP,当从外部解析时,解析为外部IP,这使得事情变得非常容易:)在我之前的工作中,我在AWS中运行了一个相当大的分片mongodb ...

我很好奇你们的推荐是什么?我有两个想法。

1)为每个mongo主机配置一个外部IP (不完全确定如何在Azure中做到这一点,但我确信这是可能的…)并将DNS配置为指向外部的这些IP。然后,将每个虚拟机配置为具有一个/etc/hosts文件,该文件将这些相同的名称指向内部IP地址。在所有情况下都在端口27017上运行Mongo (或者实际上是任何端口)。这意味着set通过内部it进行复制流量,但外部客户端可以使用相同的DNS名称与其通信。

2)与#1类似,但在3个不同的端口上运行mongo,但只有一个外部IP地址,并将所有三个外部DNS名称指向此外部IP地址。我们实现了相同的结果,但我认为它更干净。

谢谢!杰瑞

EN

回答 1

Stack Overflow用户

发布于 2015-04-21 15:24:57

没有最好的方法,但让我澄清一些“客观”的观点:

  • 对于在同一地区的服务/虚拟机/存储之间移动的任何流量,均不收费。即使您使用servicename.cloudapp.net:port从一个虚拟机连接到另一个虚拟机。免费。
  • 你可以选择是否让mongod实例可以从外部访问。如果您确实创建了外部端点,则需要考虑这些端点的安全性(例如,访问控制列表)。由于您的应用程序在Azure之外运行,因此这是您需要考虑的一个选项。您还需要考虑如何对数据库流量进行加密(mongodb企业版支持SSL;否则您需要构建mongod yourself).
  • Again,。如果您在外部公开mongod实例,您需要考虑是将它们放置在相同的云服务中(共享ip地址,每个mongod实例获取单独的端口),还是将它们放置在多个云服务中(每个云服务唯一的ip地址)。
  • 如果您的应用程序/web层位于Azure内,则您可以使用内部IP地址,将您的应用程序和mongodb vm放在同一个虚拟网络中。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29754215

复制
相关文章

相似问题

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