Estou usando o fantoche 4.10.9 com o facter 3.6.8. Eu tenho uma pergunta (s) sobre o uso de fatos em um manifesto que vou pedir de uma forma simples e uma forma mais complexa. Primeiro, a pergunta simples.
Em um agente, posso ver os seguintes endereços:
facter --show-legacy | grep ipaddress
ipaddress => 192.168.25.75
ipaddress_enp0s3 => 10.0.2.15
ipaddress_enp0s8.25 => 192.168.25.75
ipaddress_lo => 127.0.0.1
Eu quero usar 'ipaddress_enp0s8.25' (uma interface vlan) em um manifesto. Sim, eu percebo que eu poderia usar 'ipaddress', mas por razões que explicarei mais tarde, eu gostaria de usar a interface vlan especificamente.
Quando tento usar essa referência de interface em um manifesto, recebo um erro de sintaxe:
listenip => $ipaddress_enp0s8.25
Estas referências DO WORK, mas, novamente, eu quero usar a interface vlan especificamente:
listenip => $ipaddress
listenip => $networking['ip']
Então, como posso usar 'ipaddress_enp0s8.25'?
Aqui está o ângulo mais complexo e algum plano de fundo. Isso faz parte de um projeto maior que envolve a reciclagem (gire, termine) do mesmo ambiente com frequência. Tem havido uma atenção cuidadosa à forma como os nós se comportam como fazem o provisionamento inicial. Um dos primeiros problemas que notei foi:
'Evaluation Error: Operator '[]' is not applicable to an Undef Value.'
Porque naquela época eu estava tentando usar:
$networking['interfaces']['enp0s8.25']['ip']
E isso não existe na execução inicial. Eu não consegui passar 'Carregando fatos'
Então eu decidi por '$ networking [' ip ']', que funciona bem. No entanto, na primeira execução, isso retorna 10.0.2.15. Em execuções subseqüentes, ele retorna o endereço desejado 192.168.25.75. O resultado é, geralmente, um nó operacional, mas um lapso de 30 minutos para determinados serviços.
O que eu posso usar aqui para que o endereço vlan desejado se torne o valor? Eu gostaria de testar 'ipaddress_enp0s8.25', mas não posso pelas razões mencionadas acima.
Um par de vários. itens a serem observados:
- Estou criando essa interface vlan usando o módulo de rede de lâminas de barbear.
- Consegui usar o 'ipaddress_enp0s8_25' sem problemas no boneco 3.8