Я использую ручную среду с Амулетом, и не потерять машины, я добавил их всех как machinename.local (использование avahi-обнаруживают). Не возможно использовать статического дюйм/с из-за некоторых правил от администрирования.
Когда я добавляю, что отношение между сервисом и mysql, например, $db_host всегда получает IP а не домен от хоста mysql.
Как я делаю отношения с $db_host как avahi домен вместо IP?
Во-первых, несколько вещей понять об отношениях:
Амулет не имеет непосредственное отношение к решению конкретных настроек отношения (например, выбор между IP-адресом или доменным именем). Это до очарования, реализовывая конкретный тип отношения для решения что данные отношения установить.
Как исключение, Амулет действительно устанавливает private-address
отношение, устанавливающее по умолчанию для удобства, но очарование может удалить или изменить его.
Амулет обеспечивает private-address
в установке отношения, а также выводе unit-get private-address
как адрес, не имя.
Так, что Вы заканчиваете с IP-адресом и не именем узла, функция и очарования, которого Вы касаетесь и значения по умолчанию Амулета, в зависимости от случая.
Рассмотрение mysql очарования, я вижу, что это устанавливает host
(в hooks/db-relation-joined
) на основе вывода unit-get private-address
.
Так, одна опция состоит в том, чтобы изменить каждое очарование, где это устанавливает адрес, и измените его для предоставления имени, в котором Вы нуждаетесь вместо этого. Или где очарование просто использует значение по умолчанию private-address
установка, для переопределения его в *-relation-joined
рычаги. В Вашей среде с помощью чего-то как вызов к hostname
и добавляя .local
сделал бы. Но это - ясно не отличное решение, так как необходимо изменить каждое затронутое очарование.
, К сожалению, большая часть очарования разработана для сред, которые работают наоборот - где дюйм/с обычно не изменяется (или администратор имеет контроль, чтобы удостовериться, что они не делают), но mDNS (по мере необходимости для Zeroconf) обычно не работает, и нет никакого центрального доступного сервера DNS. Таким образом, хотя Амулет особенно не передает под мандат очарование к адресам поддержки только, это обычно, что хранит очарование в очаровании, все делают.