The Ansible Community AWS collection includes a variety of Ansible content to help automate the management of AWS instances. This collection is maintained by the Ansible community.
AWS related modules and plugins supported by the Ansible Cloud team are in the amazon.aws collection.
This collection has been tested against following Ansible versions: >=2.9.10.
For collections that support Ansible 2.9, please ensure you update your network_os
to use the
fully qualified collection name (for example, cisco.ios.ios
).
Plugins and modules within a collection may be tested with only specific Ansible versions.
A collection may contain metadata that identifies these versions.
PEP440 is the schema used to describe the versions of Ansible.
As the AWS SDK for Python (Boto3 and Botocore) has ceased supporting Python 2.7, this collection requires Python 3.6 or greater.
Starting with the 2.0.0 releases of amazon.aws and community.aws, it is generally the collection's policy to support the versions of botocore
and boto3
that were released 12 months prior to the most recent major collection release, following semantic versioning (for example, 2.0.0, 3.0.0).
Version 2.0.0 of this collection supports boto3 >= 1.15.0
and botocore >= 1.18.0
Name | Description |
---|---|
community.aws.aws_ssm | execute via AWS Systems Manager |
Name | Description |
---|---|
community.aws.aws_acm | Upload and delete certificates in the AWS Certificate Manager service |
community.aws.aws_acm_info | Retrieve certificate information from AWS Certificate Manager service |
community.aws.aws_api_gateway | Manage AWS API Gateway APIs |
community.aws.aws_application_scaling_policy | Manage Application Auto Scaling Scaling Policies |
community.aws.aws_batch_compute_environment | Manage AWS Batch Compute Environments |
community.aws.aws_batch_job_definition | Manage AWS Batch Job Definitions |
community.aws.aws_batch_job_queue | Manage AWS Batch Job Queues |
community.aws.aws_codebuild | Create or delete an AWS CodeBuild project |
community.aws.aws_codecommit | Manage repositories in AWS CodeCommit |
community.aws.aws_codepipeline | Create or delete AWS CodePipelines |
community.aws.aws_config_aggregation_authorization | Manage cross-account AWS Config authorizations |
community.aws.aws_config_aggregator | Manage AWS Config aggregations across multiple accounts |
community.aws.aws_config_delivery_channel | Manage AWS Config delivery channels |
community.aws.aws_config_recorder | Manage AWS Config Recorders |
community.aws.aws_config_rule | Manage AWS Config resources |
community.aws.aws_direct_connect_confirm_connection | Confirms the creation of a hosted DirectConnect connection. |
community.aws.aws_direct_connect_connection | Creates, deletes, modifies a DirectConnect connection |
community.aws.aws_direct_connect_gateway | Manage AWS Direct Connect gateway |
community.aws.aws_direct_connect_link_aggregation_group | Manage Direct Connect LAG bundles |
community.aws.aws_direct_connect_virtual_interface | Manage Direct Connect virtual interfaces |
community.aws.aws_eks_cluster | Manage Elastic Kubernetes Service Clusters |
community.aws.aws_elasticbeanstalk_app | Create, update, and delete an elastic beanstalk application |
community.aws.aws_glue_connection | Manage an AWS Glue connection |
community.aws.aws_glue_job | Manage an AWS Glue job |
community.aws.aws_inspector_target | Create, Update and Delete Amazon Inspector Assessment Targets |
community.aws.aws_kms | Perform various KMS management tasks. |
community.aws.aws_kms_info | Gather information about AWS KMS keys |
community.aws.aws_msk_cluster | Manage Amazon MSK clusters. |
community.aws.aws_msk_config | Manage Amazon MSK cluster configurations. |
community.aws.aws_region_info | Gather information about AWS regions. |
community.aws.aws_s3_bucket_info | lists S3 buckets in AWS |
community.aws.aws_s3_cors | Manage CORS for S3 buckets in AWS |
community.aws.aws_secret | Manage secrets stored in AWS Secrets Manager. |
community.aws.aws_ses_identity | Manages SES email and domain identity |
community.aws.aws_ses_identity_policy | Manages SES sending authorization policies |
community.aws.aws_ses_rule_set | Manages SES inbound receipt rule sets |
community.aws.aws_sgw_info | Fetch AWS Storage Gateway information |
community.aws.aws_ssm_parameter_store | Manage key-value pairs in aws parameter store. |
community.aws.aws_step_functions_state_machine | Manage AWS Step Functions state machines |
community.aws.aws_step_functions_state_machine_execution | Start or stop execution of an AWS Step Functions state machine. |
community.aws.aws_waf_condition | Create and delete WAF Conditions |
community.aws.aws_waf_info | Retrieve information for WAF ACLs, Rule , Conditions and Filters. |
community.aws.aws_waf_rule | Create and delete WAF Rules |
community.aws.aws_waf_web_acl | Create and delete WAF Web ACLs. |
community.aws.cloudformation_exports_info | Read a value from CloudFormation Exports |
community.aws.cloudformation_stack_set | Manage groups of CloudFormation stacks |
community.aws.cloudfront_distribution | Create, update and delete AWS CloudFront distributions. |
community.aws.cloudfront_info | Obtain facts about an AWS CloudFront distribution |
community.aws.cloudfront_invalidation | create invalidations for AWS CloudFront distributions |
community.aws.cloudfront_origin_access_identity | Create, update and delete origin access identities for a CloudFront distribution |
community.aws.cloudtrail | manage CloudTrail create, delete, update |
community.aws.cloudwatchevent_rule | Manage CloudWatch Event rules and targets |
community.aws.cloudwatchlogs_log_group | create or delete log_group in CloudWatchLogs |
community.aws.cloudwatchlogs_log_group_info | Get information about log_group in CloudWatchLogs |
community.aws.cloudwatchlogs_log_group_metric_filter | Manage CloudWatch log group metric filter |
community.aws.data_pipeline | Create and manage AWS Datapipelines |
community.aws.dms_endpoint | Creates or destroys a data migration services endpoint |
community.aws.dms_replication_subnet_group | creates or destroys a data migration services subnet group |
community.aws.dynamodb_table | Create, update or delete AWS Dynamo DB tables |
community.aws.dynamodb_ttl | Set TTL for a given DynamoDB table |
community.aws.ec2_ami_copy | copies AMI between AWS regions, return new image id |
community.aws.ec2_asg | Create or delete AWS AutoScaling Groups (ASGs) |
community.aws.ec2_asg_info | Gather information about ec2 Auto Scaling Groups (ASGs) in AWS |
community.aws.ec2_asg_lifecycle_hook | Create, delete or update AWS ASG Lifecycle Hooks. |
community.aws.ec2_asg_scheduled_action | Create, modify and delete ASG scheduled scaling actions. |
community.aws.ec2_customer_gateway | Manage an AWS customer gateway |
community.aws.ec2_customer_gateway_info | Gather information about customer gateways in AWS |
community.aws.ec2_eip | manages EC2 elastic IP (EIP) addresses. |
community.aws.ec2_eip_info | List EC2 EIP details |
community.aws.ec2_elb_info | Gather information about EC2 Elastic Load Balancers in AWS |
community.aws.ec2_launch_template | Manage EC2 launch templates |
community.aws.ec2_lc | Create or delete AWS Autoscaling Launch Configurations |
community.aws.ec2_lc_find | Find AWS Autoscaling Launch Configurations |
community.aws.ec2_lc_info | Gather information about AWS Autoscaling Launch Configurations. |
community.aws.ec2_metric_alarm | Create/update or delete AWS Cloudwatch 'metric alarms' |
community.aws.ec2_placement_group | Create or delete an EC2 Placement Group |
community.aws.ec2_placement_group_info | List EC2 Placement Group(s) details |
community.aws.ec2_scaling_policy | Create or delete AWS scaling policies for Autoscaling groups |
community.aws.ec2_snapshot_copy | Copies an EC2 snapshot and returns the new Snapshot ID. |
community.aws.ec2_transit_gateway | Create and delete AWS Transit Gateways |
community.aws.ec2_transit_gateway_info | Gather information about ec2 transit gateways in AWS |
community.aws.ec2_vpc_egress_igw | Manage an AWS VPC Egress Only Internet gateway |
community.aws.ec2_vpc_nacl | create and delete Network ACLs. |
community.aws.ec2_vpc_nacl_info | Gather information about Network ACLs in an AWS VPC |
community.aws.ec2_vpc_peer | create, delete, accept, and reject VPC peering connections between two VPCs. |
community.aws.ec2_vpc_peering_info | Retrieves AWS VPC Peering details using AWS methods. |
community.aws.ec2_vpc_route_table | Manage route tables for AWS virtual private clouds |
community.aws.ec2_vpc_route_table_info | Gather information about ec2 VPC route tables in AWS |
community.aws.ec2_vpc_vgw | Create and delete AWS VPN Virtual Gateways. |
community.aws.ec2_vpc_vgw_info | Gather information about virtual gateways in AWS |
community.aws.ec2_vpc_vpn | Create, modify, and delete EC2 VPN connections. |
community.aws.ec2_vpc_vpn_info | Gather information about VPN Connections in AWS. |
community.aws.ec2_win_password | Gets the default administrator password for EC2 Windows instances |
community.aws.ecs_attribute | manage ecs attributes |
community.aws.ecs_cluster | Create or terminate ECS clusters. |
community.aws.ecs_ecr | Manage Elastic Container Registry repositories |
community.aws.ecs_service | Create, terminate, start or stop a service in ECS |
community.aws.ecs_service_info | List or describe services in ECS |
community.aws.ecs_tag | create and remove tags on Amazon ECS resources |
community.aws.ecs_task | Run, start or stop a task in ecs |
community.aws.ecs_taskdefinition | register a task definition in ecs |
community.aws.ecs_taskdefinition_info | Describe a task definition in ECS |
community.aws.efs | create and maintain EFS file systems |
community.aws.efs_info | Get information about Amazon EFS file systems |
community.aws.efs_tag | create and remove tags on Amazon EFS resources |
community.aws.elasticache | Manage cache clusters in Amazon ElastiCache |
community.aws.elasticache_info | Retrieve information for AWS ElastiCache clusters |
community.aws.elasticache_parameter_group | Manage cache parameter groups in Amazon ElastiCache. |
community.aws.elasticache_snapshot | Manage cache snapshots in Amazon ElastiCache |
community.aws.elasticache_subnet_group | manage ElastiCache subnet groups |
community.aws.elb_application_lb | Manage an Application Load Balancer |
community.aws.elb_application_lb_info | Gather information about application ELBs in AWS |
community.aws.elb_classic_lb_info | Gather information about EC2 Elastic Load Balancers in AWS |
community.aws.elb_instance | De-registers or registers instances from EC2 ELBs |
community.aws.elb_network_lb | Manage a Network Load Balancer |
community.aws.elb_target | Manage a target in a target group |
community.aws.elb_target_group | Manage a target group for an Application or Network load balancer |
community.aws.elb_target_group_info | Gather information about ELB target groups in AWS |
community.aws.elb_target_info | Gathers which target groups a target is associated with. |
community.aws.execute_lambda | Execute an AWS Lambda function |
community.aws.iam | Manage IAM users, groups, roles and keys |
community.aws.iam_access_key | Manage AWS IAM User access keys |
community.aws.iam_access_key_info | fetch information about AWS IAM User access keys |
community.aws.iam_group | Manage AWS IAM groups |
community.aws.iam_managed_policy | Manage User Managed IAM policies |
community.aws.iam_mfa_device_info | List the MFA (Multi-Factor Authentication) devices registered for a user |
community.aws.iam_password_policy | Update an IAM Password Policy |
community.aws.iam_policy | Manage inline IAM policies for users, groups, and roles |
community.aws.iam_policy_info | Retrieve inline IAM policies for users, groups, and roles |
community.aws.iam_role | Manage AWS IAM roles |
community.aws.iam_role_info | Gather information on IAM roles |
community.aws.iam_saml_federation | Maintain IAM SAML federation configuration. |
community.aws.iam_server_certificate | Manage server certificates for use on ELBs and CloudFront |
community.aws.iam_server_certificate_info | Retrieve the information of a server certificate |
community.aws.iam_user | Manage AWS IAM users |
community.aws.iam_user_info | Gather IAM user(s) facts in AWS |
community.aws.kinesis_stream | Manage a Kinesis Stream. |
community.aws.lambda | Manage AWS Lambda functions |
community.aws.lambda_alias | Creates, updates or deletes AWS Lambda function aliases |
community.aws.lambda_event | Creates, updates or deletes AWS Lambda function event mappings |
community.aws.lambda_facts | Gathers AWS Lambda function details as Ansible facts |
community.aws.lambda_info | Gathers AWS Lambda function details |
community.aws.lambda_policy | Creates, updates or deletes AWS Lambda policy statements. |
community.aws.lightsail | Manage instances in AWS Lightsail |
community.aws.rds | create, delete, or modify Amazon rds instances, rds snapshots, and related facts |
community.aws.rds_instance | Manage RDS instances |
community.aws.rds_instance_info | obtain information about one or more RDS instances |
community.aws.rds_instance_snapshot | manage Amazon RDS snapshots. |
community.aws.rds_option_group | rds_option_group module |
community.aws.rds_option_group_info | rds_option_group_info module |
community.aws.rds_param_group | manage RDS parameter groups |
community.aws.rds_snapshot_info | obtain information about one or more RDS snapshots |
community.aws.rds_subnet_group | manage RDS database subnet groups |
community.aws.redshift | create, delete, or modify an Amazon Redshift instance |
community.aws.redshift_cross_region_snapshots | Manage Redshift Cross Region Snapshots |
community.aws.redshift_info | Gather information about Redshift cluster(s) |
community.aws.redshift_subnet_group | manage Redshift cluster subnet groups |
community.aws.route53 | add or delete entries in Amazons Route 53 DNS service |
community.aws.route53_health_check | Manage health-checks in Amazons Route53 DNS service |
community.aws.route53_info | Retrieves route53 details using AWS methods |
community.aws.route53_zone | add or delete Route53 zones |
community.aws.s3_bucket_notification | Creates, updates or deletes S3 Bucket notification for lambda |
community.aws.s3_lifecycle | Manage S3 bucket lifecycle rules in AWS |
community.aws.s3_logging | Manage logging facility of an s3 bucket in AWS |
community.aws.s3_metrics_configuration | Manage s3 bucket metrics configuration in AWS |
community.aws.s3_sync | Efficiently upload multiple files to S3 |
community.aws.s3_website | Configure an s3 bucket as a website |
community.aws.sns | Send Amazon Simple Notification Service messages |
community.aws.sns_topic | Manages AWS SNS topics and subscriptions |
community.aws.sqs_queue | Creates or deletes AWS SQS queues |
community.aws.sts_assume_role | Assume a role using AWS Security Token Service and obtain temporary credentials |
community.aws.sts_session_token | Obtain a session token from the AWS Security Token Service |
community.aws.wafv2_ip_set | wafv2_ip_set |
community.aws.wafv2_ip_set_info | Get information about wafv2 ip sets |
community.aws.wafv2_resources | wafv2_web_acl |
community.aws.wafv2_resources_info | wafv2_resources_info |
community.aws.wafv2_rule_group | wafv2_web_acl |
community.aws.wafv2_rule_group_info | wafv2_web_acl_info |
community.aws.wafv2_web_acl | wafv2_web_acl |
community.aws.wafv2_web_acl_info | wafv2_web_acl |
You can install the AWS collection with the Ansible Galaxy CLI:
ansible-galaxy collection install community.aws
You can also include it in a requirements.yml
file and install it with ansible-galaxy collection install -r requirements.yml
, using the format:
---
collections:
- name: community.aws
A specific version of the collection can be installed by using the version
keyword in the requirements.yml
file:
---
collections:
- name: community.aws
version: 0.1.1
You can either call modules by their Fully Qualified Collection Namespace (FQCN), such as community.aws.ec2_instance
, or you can call modules by their short name if you list the community.aws
collection in the playbook's collections
keyword:
---
- name: Create a DB instance using the default AWS KMS encryption key
community.aws.rds_instance:
id: test-encrypted-db
state: present
engine: mariadb
storage_encrypted: True
db_instance_class: db.t2.medium
username: "{{ username }}"
password: "{{ password }}"
allocated_storage: "{{ allocated_storage }}"
- Amazon Web Services Guide
- Ansible Using collections for more details.
We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against the Community AWS collection repository.
You can also join us on:
- Libera.Chat IRC - the
#ansible-aws
irc.libera.chat channel
- Ansible Community Guide - Details on contributing to Ansible
- Contributing to Collections - How to check out collection git repositories correctly
- Guidelines for Ansible Amazon AWS module development
- Getting Started With AWS Ansible Module Development and Community Contribution
- Ansible Collection overview
- Ansible User guide
- Ansible Developer guide
- Ansible Collection Developer Guide
- Ansible Community code of conduct
GNU General Public License v3.0 or later.
See LICENSE to see the full text.