首页 > 解决方案 > 将弹性 IP 关联到 ec2 实例

问题描述

我之前在 AWS 中创建了一些(即 3 个)现有弹性 IP。我正在尝试预置 3 个 AWS ec2 实例并将这些 IP 与那些新创建的实例相关联。我需要使用那些现有的弹性 IP,因为它们与我的外部合作伙伴一起被列入白名单以进行支付流程。我不知道该怎么做。我有下面的剧本来创建 ec2:

   - name: Provision a set of instances
     ec2:
        key_name: "{{ key_name }}"
        group_id: "{{ security_group }}"
        instance_type: "{{ instance_type }}"
        image: "{{ ami_id }}"
        wait: true
        exact_count: "{{ instances }}"
        count_tag:
            Name: Demo
        instance_tags:
            Name: "{{ application }}"
        region: "{{ region }}"
     register: ec2_instances

   - name: Store EC2 instance IPs to provision
     add_host:
       hostname: "{{ item.public_ip }}"
       groupname: ec2_instance_ips
     with_items: "{{ ec2_instances.tagged_instances }}"

第二个任务是准备好配置实例。

接下来我只需要将 EIP 与这些实例相关联。

谢谢,菲利普

标签: amazon-web-servicesansible

解决方案


给你,从我的一个角色中拉出来。

- name: associate with our instance
  ec2_eip:
    reuse_existing_ip_allowed: true
    instance_id: "{{ec2_instance}}"
    public_ip: "{{eip}}"
    state: present
    region: "{{ec2_region|default('us-east-1')}}"
    in_vpc: true

推荐阅读