redis
Ansible Роль: Redis
Устанавливает Redis на Linux.
Требования
Для дистрибутивов на основе RedHat необходимо наличие репозитория EPEL (вы можете просто добавить роль geerlingguy.repo-epel
, чтобы убедиться, что EPEL доступен).
Переменные роли
redis_enablerepo: epel
(Используется только на RHEL/CentOS) Репозиторий для установки Redis.
Доступные переменные перечислены ниже, вместе со значениями по умолчанию (см. defaults/main.yml
):
redis_port: 6379
redis_bind_interface: 127.0.0.1
Порт и интерфейс, на которых Redis будет слушать. Установите интерфейс на 0.0.0.0
, чтобы слушать на всех интерфейсах.
redis_unixsocket: ''
Если установлено, Redis также будет слушать на локальном Unix-сокете.
redis_timeout: 300
Закрыть соединение после того, как клиент был неактивен N
секунд. Установите 0
, чтобы отключить тайм-аут.
redis_loglevel: "notice"
redis_logfile: /var/log/redis/redis-server.log
Уровень логирования и место хранения логов (доступные уровни: debug
, verbose
, notice
и warning
).
redis_databases: 16
Количество баз данных Redis.
# Установите пустое значение, чтобы отключить сохранение (сохранение базы данных на диск).
redis_save:
- 900 1
- 300 10
- 60 10000
Конфигурация снимков; установка значений в этом списке сохранит базу данных на диск, если произойдет заданное количество секунд (например, 900
) и заданное количество операций записи (например, 1
).
redis_rdbcompression: "yes"
redis_dbfilename: dump.rdb
redis_dbdir: /var/lib/redis
Конфигурация сжатия и расположения базы данных.
redis_maxmemory: 0
Ограничить использование памяти до указанного количества байт. Оставьте 0 для неограниченного использования.
redis_maxmemory_policy: "noeviction"
Метод, который следует использовать, чтобы поддерживать использование памяти ниже лимита, если он указан. См. Использование Redis как LRU кэша.
redis_maxmemory_samples: 5
Количество образцов, используемых для приближения LRU. См. Использование Redis как LRU кэша.
redis_appendonly: "no"
Опция appendonly, если она включена, обеспечивает лучшие гарантии долговечности данных, но за счет немного более медленной производительности.
redis_appendfsync: "everysec"
Допустимые значения: always
(медленно, но безопасно), everysec
(средний вариант) или no
(позволить файловой системе сбрасывать данные, когда она хочет, самый рискованный вариант).
# Добавьте дополнительные файлы для локальной конфигурации/переопределений.
redis_includes: []
Добавьте дополнительные пути к файлам включения в этот список, чтобы включить более локализованную конфигурацию Redis.
Имя пакета redis для установки через системный пакетный менеджер. По умолчанию redis-server
для Debian и redis
для RHEL.
redis_package_name: "redis-server"
(Показано значение по умолчанию для RHEL) Имя пакета redis для установки через системный пакетный менеджер. По умолчанию redis-server
для Debian и redis
для RHEL.
redis_requirepass: ""
Установите пароль, чтобы требовать аутентификацию для Redis. Вы можете сгенерировать надежный пароль, используя echo "my_password_here" | sha256sum
.
redis_disabled_commands: []
Для дополнительной безопасности вы можете отключить определенные команды Redis (это особенно важно, если Redis доступен публично). Например:
redis_disabled_commands:
- FLUSHDB
- FLUSHALL
- KEYS
- PEXPIRE
- DEL
- CONFIG
- SHUTDOWN
redis_extra_config: |-
# Дополнительные строки конфигурации Redis могут быть добавлены здесь.
Дополнительные строки конфигурации Redis, которые будут добавлены в конец файла redis.conf
.
Зависимости
Нет.
Пример плейбука
- hosts: all
roles:
- role: geerlingguy.redis
Лицензия
MIT / BSD
Информация об авторе
Эта роль была создана в 2014 году Джеффом Гирлингом, автором Ansible for DevOps.
ansible-galaxy install geerlingguy/ansible-role-redis