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 ```console-bash The Redis service will start automatically when the installation finishes. You can verify it by typing: ```console-bash 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 nano /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 с удаленного компьютера:
redis-cli -h <REDIS_IP_ADDRESS> ping
Команда должна вернуть ответ PONG:
PONG
Вывод
Мы показали вам, как установить Redis на Debian 10.
Если вы столкнулись с проблемой или у вас есть отзыв, оставьте комментарий ниже.