Ansible to terraform:创建实例



我在午餐 ec2 实例时无法从 ansible 迁移到 terrafrom。 使用 ansible,您可以在清单文件中定义一组服务器

[GRAYLOG_SERVERS]
graylog-master ansible_host=1.1.1.1 disk_size=50 instance_type=t2.small
graylog-slave ansible-host=1.1.1.2 disk_size=50 instance_type=t2.small
[GRAYLOG_SERVERS:vars]
var=foo
elb=bla 

并通过 ec2 模块示例为您的实例提供午餐:

- name: lunching instance
ec2:
aws_access_key: "{{ access_key }}"
aws_secret_key: "{{ secret_key }}"
key_name: "{{ ec2_keypair }}"
group_id: "{{ target_security_groups }}"
instance_type: "{{ instance_type }}"
image: "{{ target_ami }}"
vpc_subnet_id: "{{ instance_subnet_id }}"
region: "{{ aws_region }}"
instance_tags: '{"Name":"{{ec2_tag_Name}}","Product":"{{ec2_tag_Product}}","Environment":"{{ec2_tag_Environment}}"}'
private_ip: "{{ ansible_host }}"
exact_count: 1
count_tag: '{"Name":"{{ec2_tag_Name}}","Product":"{{ec2_tag_Product}}","Environment":"{{ec2_tag_Environment}}"}'
assign_public_ip: no
wait: true
volumes:
- device_name: "{{ device_name }}"
device_type: "{{ device_type }}"
volume_size: "{{ disk_size }}"
delete_on_termination: true
delegate_to: localhost
when: ec2_image is defined or ami_id is defined
register: ec2

我可以根据服务器组和其他选项创建实例计数,例如为每个组添加--limit

这样的操作可以用大地复制吗?

是的,您可以使用自动伸缩组和启动配置

最新更新