Я недавно начал работать над проектом Ansible и создал один проект.Этот проект использует подход ролей для запуска EC2, Security Group и добавления ec2 в файл хоста.
main.yml выглядит следующим образом ...
---
- name: Creating Security Group
local_action:
module: ec2_group
name: "{{ ec2_security_group }}"
description: The webservers security group
region: "{{ ec2_region }}"
aws_access_key: "{{ aws_access_key }}"
aws_secret_key: "{{ aws_secret_key }}"
rules:
- proto: tcp
from_port: 22
to_port: 22
cidr_ip: 0.0.0.0/0
- proto: tcp
from_port: 80
to_port: 80
cidr_ip: 0.0.0.0/0
- proto: tcp
from_port: 8080
to_port: 8080
cidr_ip: 0.0.0.0/0
- proto: tcp
from_port: 443
to_port: 443
cidr_ip: 0.0.0.0/0
- name: Provision EC2 Box
local_action:
module: ec2
aws_access_key: "{{ aws_access_key }}"
aws_secret_key: "{{ aws_secret_key }}"
key_name: "{{ ec2_keypair }}"
group: "{{ ec2_security_group }}"
instance_type: "{{ ec2_instance_type }}"
image: "{{ ec2_image }}"
vpc_subnet_id: "{{ ec2_subnet_ids }}"
region: "{{ ec2_region }}"
instance_tags: '{"Name":"{{ec2_tag_Name}}","Type":"{{ec2_tag_Type}}","Environment":"{{ec2_tag_Environment}}"}'
assign_public_ip: yes
wait: true
count: 1
volumes:
- device_name: /dev/sda1
device_type: gp2
volume_size: "{{ ec2_volume_size }}"
delete_on_termination: true
register: ec2
- name: Add instance in host file
add_host:
name: "{{item.public_ip}}"
groups: demoserver
with_items: "{{ ec2.instances }}"
Я проверил его файл yml, и онотлично работаетТеперь, если я вижу атрибут файла add_host в этом файле, он зарегистрировал недавно запущенный ec2 в файле хоста.Используя этот файл, я запустил 5 экземпляров ec2, теперь я хочу увидеть их с помощью команды ansible.
Может ли кто-нибудь помочь с этим, как можно увидеть все запущенные экземпляры ec2.Просто дайте вам знать, до этого я установил еще один экземпляр ec2 с Ansible, который выполняет всю задачу, и теперь в файле хоста есть запись.
Любая помощь приветствуется.