У цій статті показано, як запустити декілька екземплярів redis на одній машині. У прикладі використовується CentOS 7 для демонстрації.

Налаштування буде однаковим для CentOS 6 / 6.5.

Крок перший: встановіть Redis

Зверніться до статті Як встановити Redis на CentOS 7

Тепер redis працює успішно на порту 6379

  • Перевірити статус першого екземпляра Redis

systemctl start redis

systemctl status redis

Крок другий: увімкнути другий екземпляр redis

Не потребується додаткового встановлення для іншого екземпляра Redis.

Будь ласка, виконайте кроки нижче

  • Скопіюйте файл redis.conf в файл /etc/redis2.conf , як показано нижче

cp -r /etc/redis.conf /etc/redis2.conf

  • Відкрийте файл за допомогою vim

vim /etc/redis2.conf

  • Оновіть записи нижче у файлі.

port 6380

dir /var/lib/redis2

logfile /var/log/redis/redis2.log

pidfile /var/run/redis/redis2.pid

Крок 3. Створення папок і встановлення дозволів

  • Створити папку

mkdir -p /var/lib/redis2

  • Встановити права та дозволи

chown -R redis.redis /var/lib/redis2

chown-R redis.root /etc/redis2.conf

Крок четвертий: Створіть файл служби

  • Створіть файл /usr/lib/systemd/system/redis2.service, додайте цей вміст

[Unit]

Description=Redis persistent key-value database

After=network.target

[Service]

ExecStart=/usr/bin/redis-server /etc/redis2.conf --daemonize no

ExecStop=/usr/libexec/redis-shutdown redis2

User=redis

Group=redis

RuntimeDirectory=redis

RuntimeDirectoryMode=0755

[Install]

WantedBy=multi-user.target

  • Відкрийте файл /usr/lib/systemd/system/redis.service, замініть запис з наведеним нижче

[Unit]

Description=Redis persistent key-value database

After=network.target

[Service]

ExecStart=/usr/bin/redis-server /etc/redis.conf --daemonize no

ExecStop=/usr/libexec/redis-shutdown redis

User=redis

Group=redis

RuntimeDirectory=redis

RuntimeDirectoryMode=0755

[Install]

WantedBy=multi-user.target

Крок п'ятий: оновлення файлу Systemd

  • Щоб служба зміни файлу набула чинності, запустіть команду нижче

systemctl daemon-reload

  • Щоб почати новий екземпляр

systemctl start redis2

  • Для перевірки стану роботи служби

systemctl status redis2

  • Увімкнути службу при завантаженні системи

systemctl enable redis2

Крок шостий: перевірте кілька статусів екземпляра redis

  • Стан прослуховування порту

netstat -antlp | grep -i listen | grep :637

tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 21021/redis-server

netstat -antlp | grep -i listen | grep :638

tcp 0 0 127.0.0.1:6380 0.0.0.0:* LISTEN 22345/redis-server

Крок сім: перевірте статус

Використання Redis-cli

  • Екземпляр один:

redis-cli -h 127.0.0.1 -p 6379 ping

Якщо Redis один працює, він відповість:

PONG

  • Екземпляр два:

redis-cli -h 127.0.0.1 -p 6380 ping

Якщо працює Redis два, він відповість:

PONG

Вітаю! Два екземпляри Redis тепер встановлені та запущені!

Ви можете виконати ті самі кроки, щоб запустити ще декілька екземплярів Redis [N екземплярів] на тій самій машині.