Консульский узел не может быть обнаружен через DNS из-за недопустимых символов - PullRequest
1 голос
/ 23 сентября 2019

В первую очередь мы являемся средой на основе виртуальной машины с множеством микросервисов, которые требуют обнаружения клиентов, управления конфигурацией и т. Д. Поэтому мы решили использовать Hashicorp Consul.

мы столкнулись с проблемой: имя хоста с точкой(.)

[WARN] agent: Node name "myorg.vsi.uat.xxx.com" will not be discoverable via DNS due to invalid characters. Valid characters include all alpha-numerics and dashes.

В настоящее время мы не можем изменить имя хоста.Попытался изменить имя узла с помощью конфигурации, но не смог найти успех.

Есть ли что-нибудь, что мы можем сделать, чтобы преодолеть проблему?

1 Ответ

0 голосов
/ 26 сентября 2019

Вы можете написать небольшой скрипт bash и использовать его для запуска агента с random uuid в качестве имени, указав переопределение имени файла конфигурации при первом запуске:

    FILE=/etc/consul.d/host_id.hcl
    if [ ! -f "$FILE" ]; then
        echo "node_name=$(uuidgen)" > "$FILE"
    fi
    consul agent -config-file=$FILE #... use your your agent run command with loading file config override
...