Skip to content

This terraform module provides an Windows Elastic Beanstalk Application Resource.

License

Notifications You must be signed in to change notification settings

RaphaelMacedonio/terraform-aws-eb-windows

 
 

Repository files navigation

terraform-aws-eb-windows

Lint Status LICENSE

This terraform module provides an Windows Elastic Beanstalk Application Resource

The following resources will be created:

  • Cloudwatch alarms for the Aplication Load Balance (ALB)
    • alb_500_errors
    • alb_400_errors
    • alb_latency
  • Cloudwatch alarms for the Auto Scaling(ASG)
    • asg_high_cpu
  • Set a http redirect to https by default in the load balancer
  • EC2 Key pair
  • CloudWatch Event Rule resource
  • CloudWatch Event Target resource
  • Identity Access Management (IAM) roles for the Elastic Beanstalk
  • IAM roles for the Elastic Beanstalk service
  • IAM roles output
  • AutoScaling Schedule resource
    • ECS_STOP
    • ECS_START

Requirements

Name Version
terraform >= 0.12.0

Providers

Name Version
aws n/a
tls n/a

Inputs

Name Description Type Default Required
ad_directory_id ID of directory from AWS Simple AD string "" no
ad_directory_ip1 AD Directory first IP address string "" no
ad_directory_ip2 AD second IP address string "" no
ad_directory_name Active Directory Name (leave it blank to disable join domain automation) string "" no
alarm_alb_400_errors_threshold Max threshold of HTTP 4000 errors allowed in a 5 minutes interval (use 0 to disable this alarm) number 10 no
alarm_alb_500_errors_threshold Max threshold of HTTP 500 errors allowed in a 5 minutes interval (use 0 to disable this alarm) number 10 no
alarm_alb_latency_anomaly_threshold ALB Latency anomaly detection width (use 0 to disable this alarm) number 4 no
alarm_asg_high_cpu_threshold Max threshold average CPU percentage allowed in a 2 minutes interval (use 0 to disable this alarm) number 80 no
alarm_sns_topics Alarm topics to create and alert on ECS service metrics. Leaving empty disables all alarms. list [] no
asg_max Max number of instances for autoscaling group number 4 no
asg_min Min number of instances for autoscaling group number 1 no
autoscaling_default_cooldown The amount of time, in seconds, after a scaling activity completes before another scaling activity can start number 300 no
autoscaling_health_check_grace_period The length of time that Auto Scaling waits before checking an instance's health status. The grace period begins when an instance comes into service number 300 no
certificate_arn n/a any n/a yes
cloudwatch_logs_retention Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, and 3653. number 120 no
eb_application_name EB application name (empty value will create an application) string "" no
eb_solution_stack_name Stack name passed to ElasticBeanstalk any n/a yes
enable_schedule Enables schedule to shut down and start up instances outside business hours bool false no
environment Name of this environment string "dev" no
hosted_zone Hosted zone to create the hostname string "" no
hostname Hostname to create on route53 pointing to the EB CNAME (leave empty to prevent creation) string "" no
instance_type_1 Instance type for ECS workers (first priority) any n/a yes
instance_type_2 Instance type for ECS workers (second priority) any n/a yes
instance_type_3 Instance type for ECS workers (third priority) any n/a yes
key_name Defines a SSH keypair to access EB instances (leave empty to create one) string "" no
name Name for this application any n/a yes
on_demand_base_capacity You can designate a base portion of your total capacity as On-Demand. As the group scales, per your settings, the base portion is provisioned first, while additional On-Demand capacity is percentage-based. number 0 no
on_demand_percentage Percentage of on-demand intances vs spot number 100 no
private_subnet_ids List of private subnet IDs for instances list n/a yes
public_subnet_ids List of public subnet IDs for ALB list n/a yes
schedule_cron_start Cron expression to define when to trigger a start of the auto-scaling group. E.g. '0 20 * * *' to start at 8pm GMT time string "" no
schedule_cron_stop Cron expression to define when to trigger a stop of the auto-scaling group. E.g. '0 10 * * *' to stop at 10am GMT time string "" no
secure_subnet_ids List of secure subnet IDs for EFS list n/a yes
security_group_ids Extra security groups for instances list [] no
stickiness_enabled Route requests from the same client to the same target bool false no
stickiness_expiration Cookie expiration period, in seconds number 86400 no
vpc_id VPC ID to deploy the cluster any n/a yes

Outputs

Name Description
eb_all_settings n/a
eb_environment_id n/a
iam_role_eb_arn ARN for EB IAM role
iam_role_eb_name Name of EB IAM role
ssm_association_join_domain_automation n/a

Authors

Module managed by DNX Solutions.

License

Apache 2 Licensed. See LICENSE for full details.

About

This terraform module provides an Windows Elastic Beanstalk Application Resource.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HCL 100.0%