Redis — это хранилище данных типа "ключ-значение" в памяти с открытым исходным кодом. Его можно использовать в качестве базы данных, кеша и брокера сообщений, и он поддерживает различные структуры данных, такие как строки, хэши, списки, наборы и другие. Redis обеспечивает высокую доступность через Redis Sentinel и автоматическое разделение на несколько узлов Redis с помощью Redis Cluster.
В этом руководстве мы расскажем, как установить и настроить Redis на Debian 10, Buster.
Содержание
Установка Redis на Debian
Redis версии 5.0.x включен в репозитории Debian 10 по умолчанию. Чтобы установить его, выполните следующие команды от имени пользователя root или пользователя с привилегиями sudo :
sudo apt update
sudo apt install redis-server
Служба Redis запустится автоматически после завершения установки. Вы можете проверить это, набрав:
sudo systemctl status redis-server
Результат должен выглядеть примерно так:
● redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-11-28 14:15:23 PST; 27s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 2024 (redis-server)
Tasks: 4 (limit: 2359)
Memory: 6.9M
CGroup: /system.slice/redis-server.service
└─2024 /usr/bin/redis-server 127.0.0.1:6379
Это оно! Redis установлен и запущен на вашем сервере Debian 10, и вы можете начать его использовать.
Настроить удаленный доступ Redis
По умолчанию Redis настроен на прослушивание только на локальном хосте. Вы можете подключиться к серверу Redis только с машины, на которой работает служба Redis.
Если вы используете установку с одним сервером, когда клиент, подключающийся к базе данных, также работает на том же хосте, вам не следует включать удаленный доступ.
Чтобы настроить Redis для приема удаленных подключений, откройте файл конфигурации Redis в текстовом редакторе:
sudo vim /etc/redis/redis.conf
Найдите строку, которая начинается с bind 127.0.0.1 ::1
и прокомментируйте ее.
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# bind 127.0.0.1 ::1
Сохраните файл и закройте редактор.
Перезапустите службу Redis, чтобы изменения вступили в силу:
sudo systemctl restart redis-server
Используйте ss
или netstat
чтобы убедиться, что Redis прослушивает все интерфейсы на порту 6379
:
ss -an | grep 6379
Вы должны увидеть примерно следующее:
tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::]:6379 [::]:*
Вам также необходимо добавить правило брандмауэра, которое разрешает трафик с ваших удаленных машин на TCP-порт 6379
.
Предполагая, что вы используете UFW
для управления своим брандмауэром и хотите разрешить доступ из подсети 192.168.121.0/24
, вы должны выполнить следующую команду:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
Убедитесь, что ваш брандмауэр настроен на прием подключений только из доверенных диапазонов IP-адресов.
После этого используйте redis-cli
для проверки соединения, redis-cli
на сервер Redis с удаленного компьютера:
redis-cli -h <REDIS_IP_ADDRESS> ping
Команда должна вернуть ответ PONG
:
PONG
Выводы
Мы показали вам, как установить Redis в Debian 10. Чтобы найти дополнительную информацию об управлении установкой Redis, посетите страницу документации Redis .