Развертывание с PaaS
RethinkDB можно легко развернуть на Compose и Amazon Web Services.
Развертывание на Compose
Каждое развертывание, предоставляемое Compose, настроено как кластер высокой доступности с полной избыточностью. Чтобы создать размещенный экземпляр RethinkDB:
- Нажмите кнопку «Добавить развертывание» в панели администрирования Compose.
- Выберите «RethinkDB».
- Введите имя для развертывания.
Если вы еще не добавили информацию о платежах в свой аккаунт Compose, вам будет предложено сделать это перед развертыванием.
Вы можете подключиться к вашему размещенному кластеру на Compose двумя способами: через SSL или через SSH-туннель. С помощью SSL вы можете получить прямой URL администратора и URL подключения драйвера к вашему экземпляру RethinkDB. Подключения с SSL-драйверами поддерживаются только официальными драйверами RethinkDB и поддерживаемыми сообществом драйверами Go. Для получения более подробной информации, прочитайте пост в блоге Compose RethinkDB и SSL.
SSH-туннель позволяет подключаться напрямую к виртуальной частной сети вашего кластера RethinkDB. Это сложнее настроить, но позволяет работать с размещенным экземпляром RethinkDB так же, как с локальной установкой, и может работать с любыми драйверами RethinkDB сообщества. После создания вашего развертывания RethinkDB консоль администратора предоставит вам информацию о хосте и порте, необходимую для настройки SSH-туннеля.
Для получения дополнительной информации прочитайте обзор поддержки RethinkDB от Compose здесь и документацию Compose по подключению к RethinkDB здесь.
Развертывание на AWS
Запуск экземпляра
Рекомендуемый минимальный тип экземпляра — t2.small. Однако t2.micro подходит для простых тестов. Следуйте этим инструкциям для настройки AMI:
- На странице рынка RethinkDB нажмите кнопку Продолжить.
- Выберите вкладку Запуск за 1 клик, выберите размер экземпляра, который вы хотите настроить, и нажмите кнопку Запустить за 1 клик справа.
- Нажмите на ссылку Ваше ПО в правом верхнем углу. RethinkDB должен отображаться как одно из ваших подписок на ПО.
- Когда экземпляр RethinkDB будет готов, нажмите на ссылку Доступ к ПО.
- Должна открыться веб-страница «Настройка AMI RethinkDB». Нажмите кнопку Продолжить, чтобы продолжить.
- Примите самозаверяющий сертификат SSL. (Способ зависит от браузера.)
- Выберите пароль для AMI.
- Подождите, пока экземпляр не инициализируется.
- Войдите в систему, используя имя пользователя
rethinkdbи пароль, выбранный на шаге 7.
Примечание: RethinkDB использует самозаверяющий сертификат для шифрования вашего пароля. Вам необходимо принять самозаверяющий сертификат в браузере, чтобы получить доступ к экземпляру.
Настройка AMI
AMI RethinkDB предварительно настроен с помощью следующих опций:
- Ubuntu Server 12.04 LTS
- Сервер RethinkDB
- Официальные драйверы клиента RethinkDB для Python, JavaScript, Java и Ruby
- 5 ГБ свободного пространства EBS для ваших данных
Примечание: возможно подключение более специализированных томов EBS и хранение данных RethinkDB на них, но эта возможность еще не доступна «из коробки». Если вы вручную подключаете том EBS, вы можете подключиться к экземпляру через SSH и изменить файл конфигурации, чтобы указать RethinkDB на пользовательский том. Для получения более подробной информации см. инструкции по настройке кластера.
Администрирование экземпляров
Основной способ администрирования AMI RethinkDB — через веб-интерфейс. Дополнительные задачи можно выполнить с помощью команд управления ReQL, интерактивно используя Data Explorer или с помощью скриптов через любой драйвер RethinkDB. Подробнее о скриптовом администрировании см. в разделе Инструменты администрирования.
Доступ через SSH
Чтобы подключиться к вашему экземпляру через SSH, войдите как пользователь ubuntu. Используйте приватный ключ, выбранный во время установки, и публичный хост-имя экземпляра. Например:
ssh -i rethinkdb.prv -l ubuntu ec2-184-72-203-271.compute-1.amazonaws.com
Безопасность
По умолчанию группа безопасности открывает 4 порта:
- Порт 22 предназначен для SSH. Сервер использует аутентификацию с открытым ключом.
- Порт 80 предназначен для HTTP. Он используется во время процесса установки, но в противном случае перенаправляется на HTTPS.
- Порт 443 предназначен для HTTPS. Сервер Nginx размещается между RethinkDB и внешним миром и обеспечивает базовые аутентификацию HTTP и защищенные HTTPS-соединения для веб-интерфейса.
- Порт 28015 предназначен для доступа драйвера клиента. Единственная форма аутентификации — ключ, передаваемый в открытом виде по сети.
Чтобы улучшить безопасность вашего экземпляра, рекомендуем выполнить следующие шаги:
-
Изменить пароль администратора.
Откройте RethinkDB Data Explorer в веб-интерфейсе и выполните следующую команду:
r.db('rethinkdb').table('users').get('admin').update({password: 'newpass'})Где «newpass» — новый пароль.
-
Ограничить доступ к порту 28015, разрешая только IP-адреса или группы безопасности, которые должны иметь доступ драйвера.
Изменение пароля веб-интерфейса
Чтобы изменить пароль, используемый для доступа к веб-интерфейсу, войдите через SSH и выполните следующую команду:
htpasswd /etc/nginx/htpasswd rethinkdb
Инструмент htpasswd запросит ваш новый пароль.
Настройка учетной записи и пароля для вашего приложения
Подробности см. в разделе Разрешения и учетные записи.
Настройка групп безопасности VPC
Для дополнительной безопасности вы можете изолировать многоузловой кластер RethinkDB на AWS с помощью группы безопасности виртуальной частной облачной сети (VPC). По умолчанию настройки группы безопасности RethinkDB разрешают любому подключение к порту драйвера базы данных, но исключают порт внутри кластера. Следуйте приведенным ниже шагам, чтобы настроить свои группы безопасности.
- Откройте раздел Группы безопасности в консоли администрирования.
- Выберите группу безопасности, к которой относятся ваши экземпляры, и откройте вкладку Входящие в нижней части страницы.
- Запишите идентификатор группы безопасности. Он начинается с
sg-. - Создайте новое правило для разрешения подключения экземпляров друг к другу:
- Выберите Пользовательское TCP-правило.
- Введите «29015» в качестве диапазона портов.
- В качестве Источника введите идентификатор группы безопасности (см. шаг 3).
- Нажмите Добавить правило и Применить изменения правил.
После применения правила подключитесь к экземплярам через SSH и измените файл конфигурации RethinkDB (/etc/rethinkdb/interfaces.d/default.conf) для их объединения.
bind=all
join=<IP address>:29015
Если вы изменили порт внутри кластера с 29015, используйте новое число. Для получения более подробной информации см. инструкции по настройке кластера RethinkDB и документацию Amazon по группам безопасности для вашей VPC.
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/docs/paas/