Redis
Redis — это база данных «ключ-значение» с открытым исходным кодом, хранящаяся в памяти (или «сервер структуры данных») с дополнительной надежностью. Redis обычно используется в качестве базы данных, кэша, очереди и брокера сообщений (публикация и подписка). По умолчанию Ключ-АСТРОМ отслеживает основные показатели Redis, включая время ответа, фрагментацию памяти, коэффициент попадания в кеш, использование кеша, количество подключений, попаданий, промахов и многое другое.
Требования и ограничения
- Redis Server 2.8 или выше
- ОС Linux
- Redis должен прослушивать локальный хост. Требуется привязка между localhost и портом Redis.
- Если у вас есть несколько экземпляров Redis на одном хосте, все экземпляры должны иметь один и тот же пароль (или не иметь пароля).
- Это расширение не поддерживает TLS.
Поддержка Docker
Ключ-АСТРОМ поддерживает работу Redis внутри контейнеров Docker при соблюдении следующих требований:
- ЕдиныйАгент версии 1.157+
- Образ docker Redis версии 5.0.0+
- Если вы используете файл конфигурации для операции переименования, вам необходимо использовать его путь в конфигурации отслеживаемого расширения. Например:
docker run redis
Включение глобального мониторинга Redis
Благодаря глобальному мониторингу Redis Ключ-АСТРОМ автоматически собирает метрики Redis всякий раз, когда в вашей среде обнаруживается новый хост, на котором работает Redis.
- Перейдите в Настройки .
- Выберите Мониторинг > Отслеживаемые технологии .
- Откройте запись Redis для редактирования.
- Подключено к показывает, сколько хостов Redis подключено, и предлагает ссылки непосредственно на страницы хостов.
- Пароль — это пароль для всех хостов Redis, которые вы хотите отслеживать глобально. Определите пароль (или оставьте поле пустым, если пароль не установлен на сервере Redis). Если у вас есть несколько экземпляров Redis на одном хосте, все экземпляры должны иметь один и тот же пароль (или не иметь пароля).
- Местоположение файла конфигурации — это необязательный файл конфигурации. Внимание! Ссылка на настройки хоста открывает Настройки > Мониторинг > Обзор мониторинга на вкладку Хосты . Если вы решили настроить Redis для каждого хоста, а не глобально, отключите мониторинг Redis глобально и выберите параметры хоста , чтобы начать настройку Redis для каждого хоста. Подробности см. в разделе «Включение мониторинга Redis для отдельных хостов» ниже.
- Выберите «Сохранить» , чтобы сохранить изменения.
- Включите переключатель Redis , чтобы начать глобальный мониторинг Redis.
Включение мониторинга Redis для отдельных хостов
Вы можете включить мониторинг Redis для конкретных хостов, а не глобально.
- Перейдите в Настройки .
- Выберите Мониторинг > Обзор мониторинга .
- Выберите вкладку Хосты .
- Выберите хост, на котором вы хотите настроить Redis.
- Выберите «Изменить» и дождитесь заполнения списка «Отслеживаемые технологии» . Внимание! Если Redis указан как одна из технологий, отслеживаемых глобально, вам необходимо отключить глобальный мониторинг для Redis, а затем настроить мониторинг Redis на уровне хоста. Щелкните ссылку «Включено глобально» и установите переключатель Redis в положение « Выкл.» , а затем вернитесь к конфигурации хоста.
- Найдите запись Redis в списке «Отслеживаемые технологии» и разверните ее для редактирования.
- Пароль — это пароль для выбранного хоста Redis, который вы хотите отслеживать.
- Расположение файла конфигурации — это дополнительный файл конфигурации для перезаписи команд.
- Выберите «Сохранить» , чтобы сохранить изменения.
- Включите переключатель Redis для этого хоста.
- При необходимости повторите эту процедуру для дополнительных хостов Redis.
Мониторинг репликации Redis
Ключ-АСТРОМ автоматически распознает экземпляры главного и реплик Redis и контролирует их репликацию. Экземпляры мастера и реплики Redis должны быть полностью синхронизированы для поддержания оптимальной производительности и стабильности ваших серверов Redis.
Индикатор текущего состояния на странице обзора процессов Redis отображает состояние ваших серверов Redis. Чтобы проанализировать изменения состояния сервера с течением времени, выберите временной интервал на диаграмме состояний реплики или проверьте диаграмму состояния , чтобы увидеть точное распределение состояний в течение заданного периода времени.
Используйте настройки для конкретных событий, чтобы настроить условия отправки оповещений для уведомления вас. Чтобы получить доступ к настройкам событий плагина, перейдите в «Настройки» > «Обнаружение аномалий» > «События расширения» и найдите записи Redis:
- Выполняется синхронизация реплики Redis. Если синхронизация реплики Redis продолжается слишком долго, Ключ-АСТРОМ выдает это предупреждение.
- Реплика Redis не синхронизирована. Если реплика Redis не реплицируется полностью, Ключ-АСТРОМ выдает это предупреждение.
Вы можете включить или отключить эти события, а также настроить условия, при которых выдается соответствующее оповещение.
Время ответа Redis Sentinel
Redis Sentinel — это имя процесса, отвечающего за доступность вашего развертывания Redis. Производительность процесса Redis Sentinel измеряется на основе времени отклика .
Метрики группы процессов
Чтобы просмотреть диаграммы метрик на уровне группы процессов Redis:
- Перейдите в раздел «Технологии и процессы Classic» (последняя версия Ключ-АСТРОМ) или «Технологии и процессы » (предыдущая версия Ключ-АСТРОМ), а затем выберите плитку Redis . Группы процессов Redis перечислены в таблице под плитками со следующими показателями для каждой строки (группы процессов): ЦП, подключение, повторные передачи, время прохождения подтверждения, пропускная способность ответа.
- Чтобы отобразить любую из этих метрик для определенной группы процессов, выберите эту строку, чтобы развернуть ее. Используйте список под диаграммой, чтобы выбрать другой показатель для диаграммы.
- Чтобы просмотреть сведения о выбранной группе процессов Redis, нажмите кнопку «Сведения о группе процессов» . На странице «Группа процессов» выберите вкладку «Метрики, специфичные для технологии» , чтобы отобразить следующие метрики для выбранной группы процессов Redis:
- Фрагментация памятиСоотношение памяти, используемой операционной системой, по сравнению с объемом памяти, выделенным Redis.
- Использование памятиПроцент используемой памяти Redis. Эта метрика видна только в том случае, если
maxmemory
настроен параметр Redis. - Время ответаВремя, прошедшее, пока сервер Redis отвечает на
INFO
запросы. Redis обычно отвечает в течение миллисекунд. - Всего обработанных командЧисло команд, обработанных Redis в секунду.
Ключевые показатели процесса
Ценные метрики Redis отображаются на каждой странице процесса Redis в виде интуитивно понятной инфографики.
- На странице группы процессов выберите процесс в таблице, чтобы отобразить страницу сведений о процессе для этого процесса.
- Выберите вкладку «Метрики Redis» , чтобы составить диаграмму ключевых показателей для выбранного экземпляра сервера Redis.
- Время ответаВремя, прошедшее, пока сервер Redis отвечает на
INFO
запросы. Redis обычно отвечает в течение миллисекунд. - Фрагментация памятиСоотношение памяти, используемой операционной системой, по сравнению с объемом памяти, выделенным Redis.
- Меньше чем
1.0
означает, что Redis требует больше памяти, чем доступно в системе, и вынужден использовать ресурсы памяти подкачки. - Чуть больше
1.0
(но не более1.5
) — это нормальный коэффициент фрагментации. Происходит фрагментация, и этот экземпляр Redis потребляет больше физической памяти, чем было запрошено, но фрагментация не является чрезмерной. - Больше чем
1.5
указывает на чрезмерную фрагментацию. Чтобы позволить операционной системе восстановить память, которая стала непригодной для использования из-за фрагментации, перезапустите сервер Redis.
- Меньше чем
- Время ответаВремя, прошедшее, пока сервер Redis отвечает на
Дополнительные диаграммы метрик процесса Redis
На странице «Сведения о процессе» выберите вкладку «Дополнительные сведения» , чтобы отобразить следующие дополнительные метрики для выбранного экземпляра сервера Redis:
- Кэш
- Соединения
- Slow лог
Кэш
Команды
- Попадания в пространство ключей Число успешных поисков ключей в основном словаре.
- Промахи в пространстве ключей Число неудачных поисков ключей.
- Всего обработанных команд Число команд, обработанных Redis в секунду.
Память
- Используемая память Процент использованной памяти Redis. Эта метрика видна только в том случае, если
maxmemory
настроен параметр Redis. - Вытесненные ключи Количество ключей, удаленных из кэша для освобождения памяти для новых элементов. Увеличение количества удаленных ключей может быть признаком использования большого количества памяти.
Ключи с истекшим сроком действия Число событий истечения срока действия ключей. События истечения срока действия запускаются, когда Redis удаляет ключи. Имейте в виду, что события истечения срока действия не запускаются, когда статус TTL (время жизни) ключа падает до нуля.
Соединения
Клиенты
- Подключено Количество клиентских подключений (без учета подключений от реплик).
- Заблокировано Количество заблокированных клиентов.
- Отклоненные соединения Число подключений, отклоненных из-за
maxclients
ограничения. По умолчанию последние версии Redis не закрывают соединения с клиентами, даже если клиенты простаивают в течение длительного времени — соединения остаются открытыми на неопределенный срок. У вас есть возможность настроить тайм-аут, и в этом случае клиентские соединения могут быть закрыты, если они простаивают в течение определенного периода времени. Таймауты настраиваются в файлеredis.conf
. - Всего полученных соединений Число соединений, принятых сервером.
Репликация
- Подключенные реплики Количество подключенных реплик. Эта метрика видна для мастера и тех реплик, которые подключены к другим репликам.
Slow лог
В Slow логе регистрируются запросы, время выполнения которых превысило указанное.
- Время выполнения включает в себя только время, необходимое для выполнения командного запроса.
- Время выполнения не включает операции ввода-вывода (например, диалог с клиентом или отправку ответов).
Slow лог можно настроить с двумя параметрами:
slowlog-log-slower-than
сообщает Redis время выполнения (в микросекундах), превышение которого означает, что запрос был медленным и будет записан в Slow лог.slowlog-max-len
— максимальное количество запросов, сохраняемых в Slow логе.