Поиск по сайту:

Как установить и настроить Redis 6.0 в Debian 11


На этой странице

  1. Предпосылки
  2. Установите Redis 6 в Debian 11
  3. Управление службой Redis
  4. Настройка Redis
  5. Подключиться к экземпляру Redis
  6. Заключение

Redis — это бесплатное хранилище структур данных в памяти с открытым исходным кодом, используемое в качестве брокера сообщений и кэша базы данных. Вы можете использовать его с решениями для потоковой передачи, такими как Apache Kafka, для обработки и анализа данных в реальном времени с задержкой менее миллисекунды. Redis поддерживает множество структур данных, включая хэши, строки, гиперлоги, растровые изображения, геопространственные индексы, отсортированные списки и многое другое. Он популярен благодаря широкой языковой поддержке, высокой доступности и автоматическому разбиению на разделы.

В этом посте мы покажем вам, как установить и настроить Redis 6 в Debian 11.

Предпосылки

  • Сервер под управлением Debian 11.
  • На сервере настроен пароль root.

Установите Redis 6 на Debian 11

Последняя версия Redis не включена в репозиторий Debian 11 по умолчанию. Поэтому вам нужно будет установить его из официального репозитория Redis.

Сначала установите все необходимые зависимости с помощью следующей команды:

apt-get install wget curl gnupg -y

Затем загрузите и добавьте ключ GPG, используя следующую команду:

curl https://packages.redis.io/gpg | apt-key add -

Затем добавьте официальный репозиторий Redis с помощью следующей команды:

echo "deb https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list

Затем обновите кэш репозитория и установите Redis с помощью следующей команды:

apt-get update -y
apt-get install redis-server -y

После установки Redis проверьте установку Redis с помощью следующей команды:

apt-cache policy redis-server

Вы должны увидеть информацию о пакете Redis в следующем выводе:

redis-server:
  Installed: 6:6.2.6-3rl1~bullseye1
  Candidate: 6:6.2.6-3rl1~bullseye1
  Version table:
 *** 6:6.2.6-3rl1~bullseye1 500
        500 https://packages.redis.io/deb bullseye/main amd64 Packages
        100 /var/lib/dpkg/status
     6:6.0.16-3rl1~bullseye1 500
        500 https://packages.redis.io/deb bullseye/main amd64 Packages
     5:6.0.16-1+deb11u1 500
        500 http://security.debian.org/debian-security bullseye-security/updates/main amd64 Packages
     5:6.0.15-1 500
        500 http://debian.gtisc.gatech.edu/debian bullseye/main amd64 Packages

Управление службой Redis

Вы можете управлять сервисом Redis с помощью файла systemd.

Чтобы запустить службу Redis, выполните следующую команду:

systemctl start redis-server

Чтобы служба Redis запускалась при перезагрузке системы, выполните следующую команду:

systemctl enable redis-server

Чтобы проверить состояние службы Redis, выполните следующую команду:

systemctl status redis-server

Вы должны увидеть следующий вывод:

? redis-server.service - Advanced key-value store
     Loaded: loaded (/lib/systemd/system/redis-server.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-11-28 07:15:00 UTC; 19s ago
       Docs: http://redis.io/documentation,
             man:redis-server(1)
   Main PID: 9079 (redis-server)
     Status: "Ready to accept connections"
      Tasks: 5 (limit: 4679)
     Memory: 7.2M
        CPU: 82ms
     CGroup: /system.slice/redis-server.service
             ??9079 /usr/bin/redis-server 127.0.0.1:6379

Nov 28 07:15:00 debian11 systemd[1]: Starting Advanced key-value store...
Nov 28 07:15:00 debian11 systemd[1]: Started Advanced key-value store.

По умолчанию Redis прослушивает порт 6379. Вы можете проверить это с помощью следующей команды:

ss -antpl | grep redis

Вы получите следующий вывод:

LISTEN 0      511        127.0.0.1:6379      0.0.0.0:*    users:(("redis-server",pid=9079,fd=6))
LISTEN 0      511            [::1]:6379         [::]:*    users:(("redis-server",pid=9079,fd=7))

Как только вы закончите, вы можете перейти к следующему шагу.

Настроить Redis

По умолчанию Redis слушает локальный хост. Если вы хотите подключить Redis с удаленного хоста, вам необходимо разрешить Redis для удаленного подключения.

Для этого отредактируйте файл конфигурации Redis с помощью вашего любимого редактора:

nano /etc/redis/redis.conf

Закомментируйте следующую строку:

#bind 127.0.0.1 -::1

Затем установите пароль Redis, как показано ниже:

requirepass securepassword

Далее измените следующую строку:

appendonly yes
appendfilename "appendonly.aof"

Сохраните и закройте файл, затем перезапустите службу Redis, чтобы применить изменения:

systemctl restart redis-server

Как только вы закончите, вы можете перейти к следующему шагу.

Подключиться к экземпляру Redis

Вы можете использовать утилиту командной строки redis-cli для подключения к серверу Redis с локального или удаленного компьютера.

Выполните следующую команду, чтобы подключиться к экземпляру Redis:

redis-cli

После подключения вы получите следующую оболочку:

127.0.0.1:6379>

Теперь выполните аутентификацию Redis, используя пароль, как показано ниже:

127.0.0.1:6379> auth securepassword

Затем проверьте сервер с помощью следующей команды:

127.0.0.1:6379> INFO Server

Вы получите следующую информацию:

# Server
redis_version:6.2.6
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:557672d61c1e18ba
redis_mode:standalone
os:Linux 5.10.0-8-amd64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:10.2.1
process_id:10828
process_supervised:systemd
run_id:b5ce185f0d4783dd3ddab8cabd38b0ee0263637b
tcp_port:6379
server_time_usec:1638085497530445
uptime_in_seconds:32
uptime_in_days:0
hz:10
configured_hz:10
lru_clock:10695545
executable:/usr/bin/redis-server
config_file:/etc/redis/redis.conf
io_threads_active:0

Теперь выйдите из экземпляра Redis, используя следующую команду:

127.0.0.1:6379> exit

Рекомендуется протестировать Redis, чтобы проверить его производительность.

Выполните следующую команду, чтобы протестировать Redis с 10 параллельными подключениями, всего 2 тыс. запросов:

redis-benchmark -h 127.0.0.1 -p 6379 -n 2000 -c 10 -a securepassword

Вы получите следующий вывод:

====== PING_INLINE ======                                         
  2000 requests completed in 0.05 seconds
  10 parallel clients
  3 bytes payload
  keep alive: 1
  host configuration "save": 3600 1 300 100 60 10000
  host configuration "appendonly": no
  multi-thread: no

Latency by percentile distribution:
0.000% <= 0.071 milliseconds (cumulative count 1)
50.000% <= 0.159 milliseconds (cumulative count 1090)
75.000% <= 0.207 milliseconds (cumulative count 1507)
87.500% <= 0.303 milliseconds (cumulative count 1769)
93.750% <= 0.359 milliseconds (cumulative count 1880)
96.875% <= 0.415 milliseconds (cumulative count 1942)
98.438% <= 0.455 milliseconds (cumulative count 1971)
99.219% <= 0.495 milliseconds (cumulative count 1985)
99.609% <= 0.791 milliseconds (cumulative count 1993)
99.805% <= 0.919 milliseconds (cumulative count 1997)
99.902% <= 1.031 milliseconds (cumulative count 1999)
99.951% <= 1.103 milliseconds (cumulative count 2000)
100.000% <= 1.103 milliseconds (cumulative count 2000)

Summary:
  throughput summary: 35714.29 requests per second
  latency summary (msec):
          avg       min       p50       p95       p99       max
        0.239     0.096     0.231     0.343     0.439     0.727

Для получения дополнительных параметров командной строки выполните следующую команду:

redis-benchmark --help

Заключение

В предыдущем посте мы объяснили, как установить и настроить Redis 6 на сервере Debian 11. Теперь вы можете реализовать Redis в производственной среде и использовать его в качестве брокера сообщений или для кэширования данных в памяти для более быстрого поиска. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.