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.
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.
This collection depends on the AWS SDK for Python (Boto3 and Botocore). As AWS has ceased supporting Python 2.6, this collection requires Python 2.7 or greater.
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_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_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 | De-registers or registers instances from EC2 ELBs |
community.aws.ec2_elb_info | Gather information about EC2 Elastic Load Balancers in AWS |
community.aws.ec2_instance | Create & manage EC2 instances |
community.aws.ec2_instance_info | Gather information about ec2 instances 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_endpoint | Create and delete AWS VPC Endpoints. |
community.aws.ec2_vpc_endpoint_info | Retrieves AWS VPC endpoints details using AWS methods. |
community.aws.ec2_vpc_igw | Manage an AWS VPC Internet gateway |
community.aws.ec2_vpc_igw_info | Gather information about internet gateways in AWS |
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_nat_gateway | Manage AWS VPC NAT Gateways. |
community.aws.ec2_vpc_nat_gateway_info | Retrieves AWS VPC Managed Nat Gateway details using AWS methods. |
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.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 | Creates or destroys Amazon ELB. |
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_cert | Manage server certificates for use on ELBs and CloudFront |
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_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_param_group | manage RDS parameter groups |
community.aws.rds_snapshot | manage Amazon RDS snapshots. |
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 Route53 DNS service |
community.aws.route53_health_check | Add or delete 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_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 |
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:
- Freenode IRC -
#ansible-aws
Freenode channel
See the Collection Developer Guide for details on contributing to this repository.
See the Ansible Community Guide for details on contributing to Ansible more generally.
- 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.