Конфигурация сигнальной метки Redis и имена хостов

У меня есть 2 сигнальных метки и 2 сервера советов. Я хочу настроить сигнальные метки с помощью имен хостов серверов советов. В настоящее время я определяю каждое имя хоста в файле hosts как это.

10.22.20.156    clsupport1  
10.22.20.157    clsupport2

И я пытаюсь настроить сигнальную метку как это.

daemonize yes
pidfile "/var/run/redis_sentinel_26379.pid"
loglevel notice
logfile "/var/log/redis_sentinel_26379.log"

port 26379
dir "/tmp"

sentinel monitor redis-prod clsupport2 6379 1
sentinel config-epoch redis-prod 3
sentinel leader-epoch redis-prod 4
sentinel known-slave redis-prod clsupport1 6379

После того, как я запустил свою сигнальную метку, Она автоматически заменяет имена хостов IP-адресами. После перезапуска.

daemonize yes
pidfile "/var/run/redis_sentinel_26379.pid"
loglevel notice
logfile "/var/log/redis_sentinel_26379.log"

port 26379
dir "/tmp"

sentinel monitor redis-prod 10.22.20.157 6379 1
sentinel config-epoch redis-prod 3
sentinel leader-epoch redis-prod 4
sentinel known-slave redis-prod 10.22.20.156 6379
# Generated by CONFIG REWRITE
...

Но я хочу сохранить имена хостов. Как я могу достигнуть этого?

1
задан 31 August 2015 в 14:05
3 ответа

Redis Sentinel должен динамически переписывать свой конфигурационный файл, воссоздавая команды monitor. У него нет возможности вставлять имена хостов вместо IP-адресов в команды, которые он генерирует. Именно поэтому в документации Sentinel в этой позиции явно указан IP-адрес.

Так что то, что вы просите, невозможно с текущей версией Sentinel. Я предлагаю вам заново оценить требование использовать имена хостов для конфигурации.

.
2
ответ дан 4 December 2019 в 00:01

Может быть, вы попробуете установить неизменяемый флаг в конфигурационном файле.

chattr +i configurationfile

Файл с атрибутом 'i' не может быть изменен: он не может быть удалено или переименовано, ссылка на этот файл не может быть создана и нет данных. можно записать в файл. Только суперпользователь или процесс обладая возможностью CAP_LINUX_IMMUTABLE, можно установить или очистить следующее атрибут.

Таким образом, вы защитите свой конфигурационный файл от записи.

.
-1
ответ дан 4 December 2019 в 00:01

Прокомментируйте, пожалуйста, ниже или выше IP-адресов.

redis-sentinel предназначены для получения адресов узлов кластера и обновления конфигураций redis после изменения статуса. Ваш лучший шанс - записать имя хоста с ip в комментарии

0
ответ дан 4 December 2019 в 00:01

Теги

Похожие вопросы