2017-06-06 5 views
1

ich eine Host-Datei, die in etwa wie folgt aussieht:erhält ein bestimmten IP-Hostnamen mit ansible

[kibanamaster] 
efk host_ip host user passwd 
[elasticnode] 
esnode host_ip user passwd 

und ich etwas im Stil von

- name: get ip address node1 
    debug: var=hostvars[inventory_host]['esnode']['ansible_default_ipv4']['address'] 
    register: es_node1 

versuchen Aber ich bekomme Variable nicht definiert. Wer kann da helfen?

EDIT: Wenn ich

debug: var=hostvars[LOG1]['esnode']['ansible_default_ipv4']['address'] 
register: node_1 

bekomme ich

{"hostvars[LOG1]['ansible_default_ipv4']['address']": "VARIABLE IS NOT DEFINED!"}

Antwort

1

hostvarsmagic variable ein Wörterbuch mit den Tasten nach Hosts in Ihrem Inventar benannt ist.

So können Sie versuchen:

hostvars['esnode']['ansible_default_ipv4']['address'] 

IP-Adresse des esnode Host zu erhalten.

+0

Das funktioniert. Vielen Dank. – qubsup

+0

OK Ich nehme es zurück - es funktioniert nicht - hostvars [LOG1] ['ansible_default_ipv4'] ['adresse'] ":" VARIABLE IST NICHT DEFINIERT! " – qubsup

+0

Was ist' LOG1' hier? –

Verwandte Themen