
В настоящее время мы запускаем наши сервисы в серии контейнеров LXD — у нас есть один, на котором запущен сервер nginx в качестве обратного прокси-сервера, указывающий на каждую службу, и когда мне нужно подключиться к контейнеру с хоста или другого контейнера, я использую назначенное LXD имя хоста. Это работает очень хорошо, и это чрезвычайно чисто.
В настоящее время я рассматриваю возможность созданияграфанадля мониторинга в контейнере и подключить экземпляр Prometheus в хосте, чтобы кормить его данными. Вероятно, было бы полезно иметь возможность ссылаться на хост LXD по имени хоста - как я делаю для контейнеров для этого и других проектов. Какой будет «правильный» способ ссылаться на хост из службы, работающей в контейнере?
решение1
Если вы используете сеть, управляемую LXD, которая устанавливает мостовую сеть, а также запускает DHCP-сервер dnsmasq для обеспечения описанного вами поведения, хост доступен по доменному имени _gateway.<domain>
, например _gateway.lxd
(или просто _gateway
с использованием суффиксов поиска DNS). Требуетсяминимум ДxГ 4.16.
Если вы используете какой-либо другой тип сети, включая неуправляемые мосты, то встроенного способа сделать это не существует.
Обратите внимание, что для фактического доступа к службе на хосте с использованием имени _gateway
служба должна прослушивать интерфейс/адрес моста LXD.