community / community.aws / 5.1.0 / module / ec2_vpc_peer create, delete, accept, and reject VPC peering connections between two VPCs. | "added in version" 1.0.0 of community.aws" Authors: Mike Mochan (@mmochan)community.aws.ec2_vpc_peer (5.1.0) — module
Install with ansible-galaxy collection install community.aws:==5.1.0
collections: - name: community.aws version: 5.1.0
Read the AWS documentation for VPC Peering Connections U(https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-peering.html).
# Complete example to create and accept a local peering connection. - name: Create local account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-87654321 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Accept local VPC peering request community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" state: accept register: action_peer
# Complete example to delete a local peering connection. - name: Create local account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-87654321 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: delete a local VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" state: absent register: vpc_peer
# Complete example to create and accept a cross account peering connection. - name: Create cross account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-12345678 peer_owner_id: 123456789012 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Accept peering connection from remote account community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" profile: bot03_profile_for_cross_account state: accept register: vpc_peer
# Complete example to create and accept an intra-region peering connection. - name: Create intra-region VPC peering Connection community.aws.ec2_vpc_peer: region: us-east-1 vpc_id: vpc-12345678 peer_vpc_id: vpc-87654321 peer_region: us-west-2 state: present tags: Name: Peering connection for us-east-1 VPC to us-west-2 VPC CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Accept peering connection from peer region community.aws.ec2_vpc_peer: region: us-west-2 peering_id: "{{ vpc_peer.peering_id }}" state: accept register: vpc_peer
# Complete example to create and reject a local peering connection. - name: Create local account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-87654321 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Reject a local VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" state: reject
# Complete example to create and accept a cross account peering connection. - name: Create cross account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-12345678 peer_owner_id: 123456789012 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Accept a cross account VPC peering connection request community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" profile: bot03_profile_for_cross_account state: accept tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix
# Complete example to create and reject a cross account peering connection. - name: Create cross account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 vpc_id: vpc-12345678 peer_vpc_id: vpc-12345678 peer_owner_id: 123456789012 state: present tags: Name: Peering connection for VPC 21 to VPC 22 CostCode: CC1234 Project: phoenix register: vpc_peer
- name: Reject a cross account VPC peering Connection community.aws.ec2_vpc_peer: region: ap-southeast-2 peering_id: "{{ vpc_peer.peering_id }}" profile: bot03_profile_for_cross_account state: reject
tags: aliases: - resource_tags description: - A dictionary representing the tags to be applied to the resource. - If the I(tags) parameter is not set then tags will not be modified. required: false type: dict wait: default: false description: - Wait for peering state changes to complete. required: false type: bool state: choices: - present - absent - accept - reject default: present description: - Create, delete, accept, reject a peering connection. required: false type: str region: aliases: - aws_region - ec2_region description: - The AWS region to use. - For global services such as IAM, Route53 and CloudFront, I(region) is ignored. - The C(AWS_REGION) or C(EC2_REGION) environment variables may also be used. - See the Amazon AWS documentation for more information U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region). - The C(ec2_region) alias has been deprecated and will be removed in a release after 2024-12-01 - Support for the C(EC2_REGION) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str vpc_id: description: - VPC id of the requesting VPC. required: false type: str profile: aliases: - aws_profile description: - A named AWS profile to use for authentication. - See the AWS documentation for more information about named profiles U(https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). - The C(AWS_PROFILE) environment variable may also be used. - The I(profile) option is mutually exclusive with the I(aws_access_key), I(aws_secret_key) and I(security_token) options. type: str access_key: aliases: - aws_access_key_id - aws_access_key - ec2_access_key description: - AWS access key ID. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_ACCESS_KEY_ID), C(AWS_ACCESS_KEY) or C(EC2_ACCESS_KEY) environment variables may also be used in decreasing order of preference. - The I(aws_access_key) and I(profile) options are mutually exclusive. - The I(aws_access_key_id) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_access_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_ACCESS_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str aws_config: description: - A dictionary to modify the botocore configuration. - Parameters can be found in the AWS documentation U(https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config). type: dict peering_id: description: - Peering connection id. required: false type: str purge_tags: default: true description: - If I(purge_tags=true) and I(tags) is set, existing tags will be purged from the resource to match exactly what is defined by I(tags) parameter. - If the I(tags) parameter is not set then tags will not be modified, even if I(purge_tags=True). - Tag keys beginning with C(aws:) are reserved by Amazon and can not be modified. As such they will be ignored for the purposes of the I(purge_tags) parameter. See the Amazon documentation for more information U(https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html#tag-conventions). required: false type: bool secret_key: aliases: - aws_secret_access_key - aws_secret_key - ec2_secret_key description: - AWS secret access key. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SECRET_ACCESS_KEY), C(AWS_SECRET_KEY), or C(EC2_SECRET_KEY) environment variables may also be used in decreasing order of preference. - The I(secret_key) and I(profile) options are mutually exclusive. - The I(aws_secret_access_key) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_secret_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str peer_region: description: - Region of the accepting VPC. required: false type: str peer_vpc_id: description: - VPC id of the accepting VPC. required: false type: str endpoint_url: aliases: - ec2_url - aws_endpoint_url - s3_url description: - URL to connect to instead of the default AWS endpoints. While this can be used to connection to other AWS-compatible services the amazon.aws and community.aws collections are only tested against AWS. - The C(AWS_URL) or C(EC2_URL) environment variables may also be used, in decreasing order of preference. - The I(ec2_url) and I(s3_url) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_URL) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str aws_ca_bundle: description: - The location of a CA Bundle to use when validating SSL certificates. - The C(AWS_CA_BUNDLE) environment variable may also be used. type: path peer_owner_id: description: - The AWS account number for cross account peering. required: false type: str session_token: aliases: - aws_session_token - security_token - aws_security_token - access_token description: - AWS STS session token for use with temporary credentials. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SESSION_TOKEN), C(AWS_SECURITY_TOKEN) or C(EC2_SECURITY_TOKEN) environment variables may also be used in decreasing order of preference. - The I(security_token) and I(profile) options are mutually exclusive. - Aliases I(aws_session_token) and I(session_token) were added in release 3.2.0, with the parameter being renamed from I(security_token) to I(session_token) in release 6.0.0. - The I(security_token), I(aws_security_token), and I(access_token) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) and C(AWS_SECURITY_TOKEN) environment variables has been deprecated and will be removed in a release after 2024-12-01. type: str validate_certs: default: true description: - When set to C(false), SSL certificates will not be validated for communication with the AWS APIs. - Setting I(validate_certs=false) is strongly discouraged, as an alternative, consider setting I(aws_ca_bundle) instead. type: bool debug_botocore_endpoint_logs: default: false description: - Use a C(botocore.endpoint) logger to parse the unique (rather than total) C("resource:action") API calls made during a task, outputing the set to the resource_actions key in the task results. Use the C(aws_resource_action) callback to output to total list made during a playbook. - The C(ANSIBLE_DEBUG_BOTOCORE_LOGS) environment variable may also be used. type: bool
peering_id: description: The id of the VPC peering connection created/deleted. returned: always sample: pcx-034223d7c0aec3cde type: str vpc_peering_connection: contains: accepter_vpc_info: contains: cidr_block: description: The primary CIDR for the VPC. example: 10.10.10.0/23 returned: when connection is in the accepted state. type: str cidr_block_set: contains: cidr_block: description: A CIDR block used by the VPC. example: 10.10.10.0/23 returned: success type: str description: A list of all CIDRs for the VPC. returned: when connection is in the accepted state. type: complex owner_id: description: The AWS account that owns the VPC. example: 123456789012 returned: success type: str peering_options: contains: allow_dns_resolution_from_remote_vpc: description: Indicates whether a VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC. returned: success type: bool allow_egress_from_local_classic_link_to_remote_vpc: description: Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection. returned: success type: bool allow_egress_from_local_vpc_to_remote_classic_link: description: Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection. returned: success type: bool description: Additional peering configuration. returned: when connection is in the accepted state. type: dict region: description: The AWS region that the VPC is in. example: us-east-1 returned: success type: str vpc_id: description: The ID of the VPC example: vpc-0123456789abcdef0 returned: success type: str description: Information about the VPC which accepted the connection. returned: success type: complex requester_vpc_info: contains: cidr_block: description: The primary CIDR for the VPC. example: 10.10.10.0/23 returned: when connection is not in the deleted state. type: str cidr_block_set: contains: cidr_block: description: A CIDR block used by the VPC example: 10.10.10.0/23 returned: success type: str description: A list of all CIDRs for the VPC. returned: when connection is not in the deleted state. type: complex owner_id: description: The AWS account that owns the VPC. example: 123456789012 returned: success type: str peering_options: contains: allow_dns_resolution_from_remote_vpc: description: Indicates whether a VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC. returned: success type: bool allow_egress_from_local_classic_link_to_remote_vpc: description: Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection. returned: success type: bool allow_egress_from_local_vpc_to_remote_classic_link: description: Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection. returned: success type: bool description: Additional peering configuration. returned: when connection is not in the deleted state. type: dict region: description: The AWS region that the VPC is in. example: us-east-1 returned: success type: str vpc_id: description: The ID of the VPC example: vpc-0123456789abcdef0 returned: success type: str description: Information about the VPC which requested the connection. returned: success type: complex status: contains: code: description: A short code describing the status of the connection. example: active returned: success type: str message: description: Additional information about the status of the connection. example: Pending Acceptance by 123456789012 returned: success type: str description: Details of the current status of the connection. returned: success type: complex tags: description: Tags applied to the connection. returned: success type: dict vpc_peering_connection_id: description: The ID of the VPC peering connection. example: pcx-0123456789abcdef0 returned: success type: str description: The details of the VPC peering connection as returned by Boto3 (snake cased). returned: success type: complex