J'ai du mal à obtenir ce travail sans succès .. Voici mon playbook.Mettre fin à des instances EC2, basé sur des balises, en utilisant Ansible
D'abord une recherche de mes machines par balise et plus tard essayer de les terminer.
- name: EC2 Facts
ec2_instance_facts:
region: us-east-1
filters:
"tag:Type": "staging"
aws_access_key: "{{ lookup('env', 'AWS_ACCESS_KEY_ID') }}"
aws_secret_key: "{{ lookup('env', 'AWS_SECRET_ACCESS_KEY') }}"
register: ec2
- name: Kill EC2 Instance
ec2:
instance_ids: "{{ item.instance_id }}"
state: "{{ state }}"
region: "{{ lookup('env', 'AWS_REGION') }}"
aws_access_key: "{{ lookup('env', 'AWS_ACCESS_KEY_ID') }}"
aws_secret_key: "{{ lookup('env', 'AWS_SECRET_ACCESS_KEY') }}"
with_items: "{{ ec2.instances }}"
courir comme ceci:
ansible-playbook ec2_id_kill.yml --extra-vars "state=absent"
Attend ansible ne trouve pas le INSTANCE_ID des faits
Quel est le message d'erreur? Pouvez-vous corriger l'indentation de code? – helloV
"msg": "le paramètre image est requis pour la nouvelle instance" looks ansible ne peut pas obtenir le bon ** instance_id **. J'utilise ansible-2.4 – lnx0101
Il est probable que la valeur 'state' passée n'est pas utilisée/honorée. Il utilise la valeur par défaut de 'present' et essaie de créer une instance. Vous ne pouvez pas aider si vous ne corrigez pas l'indentation. – helloV