2017-11-24 4 views
-2

Ich erstelle eine AWS-Instanz und muss den Hostnamen, IP-Adresse in der gleichen Wiedergabe abrufen. Wie bekomme ich die Metadaten? Ich habe 'ec2_instance_facts', 'ec2_metadata_facts' versucht, diese geben dem Host ansible Spielbuch läuft nicht das gerade erstellte.Wie bekomme ich die Metadaten der in Ansible erstellten AWS-Instanz?

Ich habe versucht,

- name: Debug 
    ec2_metadata_facts: 
- debug: var=ansible_ec2_hostname 
- debug: var=ansible_ec2_public_ipv4 
- debug: var=ansible_ec2_public_hostname 


- ec2_instance_facts: 
    region: "ap-southeast-2" 
    filters: 
     "tag:Name": A01NANISIM20 

    register: ec2_metadata 

Diese Schnipsel "verschiedene Module verwenden, werden nicht die Details des insatnce geben erstellt, stattdessen geben sie die Einzelheiten der Fall, in dem Textbuch ausgeführt wird.

+0

Danke für die Info! Also, wie bekomme ich die Metadaten von außerhalb der ec2-Instanz? Ich bin ein absoluter Neuling! –

Antwort

0
- ec2_instance_facts: 
    region: "ap-southeast-2" 
    filters: 
     "tag:Name": A01NANISIM04 

    register: ec2_metadata 

- debug: msg="{{ ec2_metadata.instances }}" 

- debug: msg="{{ ec2_metadata.instances[0].public_ip_address }}" 

Endlich habe ich es selbst herausgefunden. Ich habe nicht erkannt, dass es sich bei Ansible um eine Verschmelzung von Technologien handelt. Nur verstanden, dass die Ausgabe JSON-Daten und alles, was ich brauche, um die entsprechenden Tags zu bilden.

Verwandte Themen