Подключиться к кластеру Redis
К кластеру облачных баз данных Redis можно подключиться по DNS-адресу, приватному IP-адресу и публичному IP-адресу.
Мы рекомендуем подключаться по DNS-адресу, потому что DNS-адреса соответствуют ролям нод и ведут на актуальные IP-адреса мастера и реплик. IP-адреса соответствуют конкретным нодам. В случае недоступности мастера одна из реплик возьмет на себя его роль, IP-адрес мастера изменится, и подключение по IP перестанет работать.
Если кластер подключен к приватной подсети и вы хотите работать с ним через DNS, подключите к подсети кластера облачный роутер с доступом во внешнюю сеть.
Если кластер подключен к приватной сети и вам нужно настроить доступ к ноде из интернета, подключите публичный IP-адрес.
Порты
Для подключения к Redis используйте порты:
- 6380 — порт для подключения с SSL-сертификатом;
- 6379 — порт для подключения без SSL-сертификата (доступно только для кластеров в приватной подсети).
С пособы подключения
- через Docker;
- из программного кода с SSL и без SSL.
Для всех способов доступно подключение с SSL-сертификатом.
Посмотреть адрес для подключения
- В панели управления перейдите в раздел Облачная платформа → Базы данных.
- Откройте страницу кластера баз данных → вкладка Подключение.
- В блоке Адреса для подключения посмотрите адрес.
Подключиться с SSL
Подключение с использованием TLS/SSL шифрования обеспечивает безопасное соединение между вашим сервером и кластером баз данных.
- Bash
- Python
- PHP
- Go
- Node.js
-
Скачайте корневой сертификат и поместите его в папку
~/.redis/
:mkdir -p ~/.redis/
wget https://storage.dbaas.selcloud.ru/CA.pem -O ~/.redis/root.crt
chmod 600 ~/.redis/root.crt -
Подключитесь к кластеру:
redis-cli -h <host> \
-a <password> \
-p 6380 \
--tls \
--cacert ~/.redis/root.crtУкажите:
<host>
— DNS-адрес ноды;<password>
— пароль.
-
Скачайте корневой сертификат и поместите его в папку
~/.redis/
:mkdir -p ~/.redis/
wget https://storage.dbaas.selcloud.ru/CA.pem -O ~/.redis/root.crt
chmod 600 ~/.redis/root.crt -
Установите библиотеку redis:
pip install redis
-
Используйте пример подключения:
import redis
r = redis.Redis(
host="<host>",
password="<password>",
port=6380,
db=0,
ssl=True,
ssl_ca_certs="<full_path_to_root_certificate>",
)
print(r.set("KEY", "VALUE"))
print(r.get("KEY"))Укажите:
<host>
— DNS-адрес ноды;<password>
— пароль пользователя;<full_path_to_root_certificate>
— полный путь до корневого сертификата.
-
Скачайте корневой сертификат и поместите его в папку
~/.redis/
:mkdir -p ~/.redis/
wget https://storage.dbaas.selcloud.ru/CA.pem -O ~/.redis/root.crt
chmod 600 ~/.redis/root.crt -
Установите через composer библиотеку predis:
composer require predis/predis
-
Используйте пример подключения:
<?php
require __DIR__ . '/vendor/autoload.php';
Predis\Autoloader::register();
$host = ['<host>:6380'];
$options = [
'parameters' => [
'scheme' => 'tls',
'ssl' => ['cafile' => '<full_path_to_root_certificate>', 'verify_peer' => true],
'password' => "<password>"
],
'cluster' => 'predis'
];
$conn = new Predis\Client($host, $options);
$conn->set('KEY', 'VALUE');
var_dump($conn->get('KEY'));
$conn->disconnect();
?>Укажите:
<host>
— DNS-адрес ноды;<full_path_to_root_certificate>
— полный путь до корневого сертификата;<password>
— пароль пользователя.
-
Скачайте корневой сертификат и поместите его в папку
~/.redis/
:mkdir -p ~/.redis/
wget https://storage.dbaas.selcloud.ru/CA.pem -O ~/.redis/root.crt
chmod 600 ~/.redis/root.crt