2012-05-14 2 views
1

сначала: я новичок на лазури. Хорошо, я хочу, чтобы реплики MongoDb были установлены в лазури. Я использовал для этого эти сайты: http://www.mongodb.org/display/DOCS/Azure+Deployment и https://github.com/mongodb/mongo-azure Thats отлично работает. Но как я могу получить доступ из моего java-приложения к этому репликации Mongo? Приложение Java не запускается в облаке. Благодарим за помощь.Подключение к MongoDB в Azure с Java

ответ

1

По умолчанию MongoDB будет работать на порте 27017 (см. TCP Port Numbers). Просто создайте Input Endpoint, чтобы ваше Java-приложение на месте подключалось к MongoDB и убедитесь, что вы выбрали tcp в качестве протокола.

Это скриншот такой конечной точки из David's blog:

MongoDB

Помните, что это откроет порт для всех в Интернете, которые могут представлять собой угрозу безопасности.

В качестве альтернативы вы можете использовать Windows Azure Connect для создания безопасного IPSEC-соединения между вашей локальной системой и вашими ролями.

+0

Это решение не работает для репликации, так как клиентскому приложению необходимо перечислить все узлы репликации для создания установленной конфигурации, и вы не можете перечислять экземпляры через балансировщик нагрузки Windows Azure. Это * будет * работать для автономной версии MongoDB, но тогда вы также, вероятно, захотите перестроить MongoDB из источника, включить SSL (так как это не входит в дистрибутивные двоичные файлы). И ... тогда вам также потребуется включить защиту. –

+0

Сказав это: Спасибо за сообщение в блоге. :) –

+0

+1 для предложения Windows Azure Connect - я не видел этого в первый раз, когда я его прочитал. –

2

Несколько вещей, которые вы могли бы сделать:

  • Run mongos (осколок маршрутизатор) на ваших replicaset узлов и создать единый черепок, представляющий всю базу данных. У Mongos будет внутренняя видимость для ip/port для каждого узла репликации. Затем ваше внешнее приложение java будет напрямую подключаться к монго. Примечание: использование монго не является частью проекта 10g лесов. Вам нужно добавить это самостоятельно.
  • Настройте Azure Connect, чтобы установить соединение между вашим Java-приложением и развертыванием Replicaset MongoDB. Существует флаг -ipv6, который нужно добавить в командную строку mongod (поскольку Azure Connect поддерживает только трафик ipv6 через туннель). Я не могу вспомнить, установлен ли этот флаг в леса с поддержкой 10gen, а ipv6 по умолчанию отключен.
Смежные вопросы