Подключение к экземпляру набора реплик из публичной сети
В этом разделе описывается, как подключиться к экземпляру набора реплик (Replica Set) с помощью клиента MongoDB и Robo 3T через публичные сети.
Все операции можно выполнять, как на первичной, так и на вторичной ноде. Первичные ноды используются для обработки запросов на чтение и запись, а вторичные — реплицируют данные с первичной и используются только для обработки запросов на чтение.
Клиент MongoDB и Robo 3T могут подключаться к экземпляру базы данных с помощью общего соединения или зашифрованного соединения (SSL). Рекомендуется использовать подключение с помощью SSL-соединения для повышения безопасности.
Перед началом работы
Привяжите EIP к экземпляру БД и установите правила группы безопасности.
Установите клиент MongoDB или Robo 3T.
ПримечаниеСсылка на скачивание установочного пакета Robo 3T с официального сайта.
При скачивании выберите версию robo3t-1.3.1-windows-x86_64-7419c406.exe.
Ссылка на скачивание установочного пакета MongoDB с официального сайта.
При установке MongoDB на ОС Ubuntu воспользуйтесь инструкцией.
Подключение к экземпляру БД с помощью Robo 3T
Запустите установку Robo 3T. Нажмите Create.
В окне Connection Settings укажите параметры нового подключения:
На вкладке Connection введите название соединения в поле Name и в поле Address укажите EIP и после двоеточия введите порт базы данных (8635).
На вкладке Authentication укажите в полях:
Database — «admin».
User — «rwuser».
Password — введите пароль администратора, который был установлен при создании экземпляра набора реплик.
Если подключение будет по SSL, то перейдите на вкладку SSL и загрузите SSL-сертификат и выберите в Invalid Hostnames — Allowed. Если подключение без SSL, то пропустите этот пункт.
Нажмите Save.
В окне MongoDB Connections нажмите Connect, чтобы подключиться к экземпляру DDS с набором реплик.
По окончании отобразится страница успешной установки соединения.
Подключение к экземпляру БД с помощью клиента MongoDB (по SSL)
В консоли DDS на странице Instance Management нажмите на нужный экземпляр БД.
В левом меню выберите Connections.
В поле Basic Information нажмите
для скачивания SSL-сертификата.
Загрузите root-сертификат в ECS для подключения к экземпляру БД. Для загрузки в ВМ под управлением Linux® и Windows® используйте следующие команды:
scp <IDENTITY_FILE> <REMOTE_USER>@<REMOTE_ADDRESS>:<REMOTE_DIR>- Укажите параметры:
IDENTITY_FILE — каталог, в котором находится корневой сертификат, и название файла сертификата. Разрешение на доступ к файлу равно 600.
REMOTE_USER — пользователя операционной системы ECS.
REMOTE_ADDRESS — IP-адрес.
REMOTE_DIR — каталог ECS, в который будет загружен корневой сертификат.
Подключитесь к экземпляру базы данных в каталоге, где находится клиент MongoDB:
./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase admin --ssl --sslCAFile <FILE_PATH> --sslAllowInvalidHostnamesПосле появления сообщения «Enter password» введите пароль от экземпляра БД.
Пример команды подключения Linux®:
./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames`ПримечаниеЭкземпляр набора реплик использует IP-адрес для создания SSL-сертификата. --sslAllowInvalidHostnames необходим для SSL-соединения в общедоступной сети.
- Укажите параметры:
DB_HOST — IP-адрес удаленно подключенного экземпляра базы данных. Его значение можно найти на странице Connections в столбце EIP.
DB_PORT — номер порта. Значение можно найти на странице Connections в столбце Database Port.
DB_USER — имя пользователя учетной записи базы данных. В данном случае это «rwuser».
**** — пароль учетной записи базы данных. При использовании адреса подключения к экземпляру БД:
если пароль содержит знак @, то его нужно заменить на %40.
если пароль содержит восклицательный знак !, то перед этим знаком нужно поставить обратный слеш \.
FILE_PATH — путь, где хранится root-сертификат.
Пример подключения через частный адрес:
./mongo mongodb://rwuser:****@192.168.1.6:8635/test?authSource=admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames`Проверьте результат. При успешном выполнении команды отобразится информация:
При подключении первичной ноды:
replica:PRIMARY>
При подключении вторичной ноды:
replica:SECONDARY>.
Подключение к экземпляру БД с помощью клиента MongoDB (без SSL)
Подключитесь к виртуальной машине ECS.
Подключитесь к экземпляру базы данных в каталоге, где расположен клиент MongoDB.
./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase adminПосле появления сообщения «Enter password» введите пароль от экземпляра БД.
Пример команды подключения:
./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase adminПримечание- Укажите параметры:
DB_HOST — IP-адрес удаленно подключенного экземпляра базы данных. Его значение можно найти на странице Connections в столбце EIP.
DB_PORT — номер порта. Значение можно найти на странице Connections в столбце Database Port.
DB_USER — имя пользователя учетной записи базы данных. В данном случае это «rwuser».
**** — пароль учетной записи базы данных. При использовании адреса подключения к экземпляру БД:
если пароль содержит знак @, то его нужно заменить на %40.
если пароль содержит восклицательный знак !, то перед этим знаком нужно поставить обратный слеш \.
Проверьте результат. При успешном выполнении команды отобразится информация.
При подключении первичной ноды:
replica:PRIMARY>
При подключении вторичной ноды:
replica:SECONDARY>.
- Перед началом работы
- Подключение к экземпляру БД с помощью Robo 3T
- Подключение к экземпляру БД с помощью клиента MongoDB (по SSL)
- Подключение к экземпляру БД с помощью клиента MongoDB (без SSL)