Facter (2.4.4) наборы ipaddress к docker0 а не интерфейсу Ethernet (CentOS7)

Существует ли способ зафиксировать это? Я могу изменить порядок интерфейсов? У меня есть много марионеточных модулей, которые используют $:: ipaddress, хорошо работает на CentOS 6 с докером, но не на 7

interfaces => docker0,eno16780032,lo
ipaddress => 172.17.42.1
ipaddress_docker0 => 172.17.42.1
ipaddress_eno16780032 => 10.251.17.170
ipaddress_lo => 127.0.0.1
1
задан 22 October 2015 в 16:01
1 ответ

Это проблема с фактом ipaddress по умолчанию, это немного глупо. Мы используем собственный вариант с именем default_if, который основан на маршруте по умолчанию (работает в Debian, может потребоваться адаптация к CentOS):

Facter.add("default_if") do
    confine :kernel => :linux
    setcode do
        return nil unless FileTest.exists?("/sbin/ip")
        output = %x{/sbin/ip route list match 0.0.0.0}.split("\n")[0]
        output.sub(/.*\s*dev\s+([^\s]+)\s*.*/, '\1')
    end
end
2
ответ дан 3 December 2019 в 20:46

Теги

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