diff --git a/examples/easy/ec2-managed-draining/README.md b/examples/easy/ec2-managed-draining/README.md
new file mode 100644
index 0000000..61438e4
--- /dev/null
+++ b/examples/easy/ec2-managed-draining/README.md
@@ -0,0 +1,68 @@
+# examples/easy/ec2-managed-draining
+
+In this example we'll instantiate a simple nginx webserver, running on EC2 Auto Scaling Group, with managed draining feature enabled.
+This means ECS will monitor the Auto Scaling Group and set an instance's status to draining when it's scheduled for termination.
+With draining status set, ECS will safely terminate all tasks running on the instance and create replacement tasks in other instance(s).
+
+Note: Instance profile is required for EC2 to connect to ECS Cluster. See [`modules/iam/ecs-instance-profile`](https://github.com/HENNGE/terraform-aws-ecs/tree/main/modules/iam/ecs-instance-profile).
+
+To test that it's working:
+1. Go to EC2 console
+1. Find the EC2 instance started by this example. (Search the name)
+1. Go to the IP Address, you should see nginx hello world screen
+
+## Usage
+
+To run this example you need to execute:
+
+```bash
+$ terraform init
+$ terraform plan
+$ terraform apply
+```
+
+
+
+## Requirements
+
+| Name | Version |
+|------|---------|
+| [terraform](#requirement\_terraform) | >= 1.0 |
+| [aws](#requirement\_aws) | >= 3.74.0 |
+
+## Providers
+
+| Name | Version |
+|------|---------|
+| [aws](#provider\_aws) | >= 3.74.0 |
+
+## Modules
+
+| Name | Source | Version |
+|------|--------|---------|
+| [asg](#module\_asg) | terraform-aws-modules/autoscaling/aws | ~> 7.0 |
+| [easy\_ec2](#module\_easy\_ec2) | ../../../modules/simple/ec2 | n/a |
+| [ec2\_security\_group](#module\_ec2\_security\_group) | terraform-aws-modules/security-group/aws | ~> 4.0 |
+| [ecs\_cluster](#module\_ecs\_cluster) | ../../.. | n/a |
+| [vpc](#module\_vpc) | terraform-aws-modules/vpc/aws | ~> 5.0 |
+
+## Resources
+
+| Name | Type |
+|------|------|
+| [aws_ecs_capacity_provider.asg_managed_draining](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_capacity_provider) | resource |
+| [aws_availability_zones.available](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/availability_zones) | data source |
+| [aws_ssm_parameter.ami_image](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/ssm_parameter) | data source |
+
+## Inputs
+
+| Name | Description | Type | Default | Required |
+|------|-------------|------|---------|:--------:|
+| [availability\_zones](#input\_availability\_zones) | Override automatic detection of availability zones | `list(string)` | `[]` | no |
+| [enable\_ipv6](#input\_enable\_ipv6) | Enable IPv6? | `bool` | `true` | no |
+| [instance\_profile\_arn](#input\_instance\_profile\_arn) | Instance Profile to use for EC2 to join to ECS Cluster. See `modules/iam/ecs-instance-profile` | `string` | n/a | yes |
+
+## Outputs
+
+No outputs.
+
diff --git a/examples/easy/ec2-managed-draining/main.tf b/examples/easy/ec2-managed-draining/main.tf
new file mode 100644
index 0000000..d3bda6f
--- /dev/null
+++ b/examples/easy/ec2-managed-draining/main.tf
@@ -0,0 +1,116 @@
+# Just Supporting Infrastructures
+
+data "aws_availability_zones" "available" {}
+
+data "aws_ssm_parameter" "ami_image" {
+ name = "/aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id"
+}
+
+locals {
+ prefix = "easy-ec2"
+
+ vpc_cidr = "10.0.0.0/16"
+ discovered_azs = data.aws_availability_zones.available.names
+ vpc_azs = length(var.availability_zones) == 0 ? local.discovered_azs : var.availability_zones
+}
+
+module "vpc" {
+ source = "terraform-aws-modules/vpc/aws"
+ version = "~> 5.0"
+
+ name = "${local.prefix}-vpc"
+ cidr = local.vpc_cidr
+ azs = local.vpc_azs
+
+ public_subnets = [for i in range(length(local.vpc_azs)) : cidrsubnet(local.vpc_cidr, 8, i)]
+
+ enable_nat_gateway = false
+ enable_dhcp_options = true
+ dhcp_options_domain_name_servers = ["AmazonProvidedDNS"]
+
+ map_public_ip_on_launch = true
+
+ enable_ipv6 = var.enable_ipv6
+ public_subnet_assign_ipv6_address_on_creation = var.enable_ipv6
+ public_subnet_ipv6_prefixes = range(length(local.vpc_azs))
+}
+
+module "ec2_security_group" {
+ source = "terraform-aws-modules/security-group/aws"
+ version = "~> 4.0"
+
+ name = "${local.prefix}-ec2-sg"
+ vpc_id = module.vpc.vpc_id
+
+
+ # Ingress for HTTP
+ ingress_cidr_blocks = ["0.0.0.0/0"]
+ ingress_ipv6_cidr_blocks = ["::/0"]
+ ingress_rules = ["http-80-tcp"]
+
+ # Allow all egress
+ egress_cidr_blocks = ["0.0.0.0/0"]
+ egress_ipv6_cidr_blocks = ["::/0"]
+ egress_rules = ["all-all"]
+}
+
+module "asg" {
+ source = "terraform-aws-modules/autoscaling/aws"
+ version = "~> 7.0"
+
+ name = "${local.prefix}-asg"
+
+ image_id = data.aws_ssm_parameter.ami_image.value
+ instance_type = "t2.micro"
+ security_groups = [module.ec2_security_group.security_group_id]
+ vpc_zone_identifier = module.vpc.public_subnets
+ min_size = 1
+ max_size = 2
+ desired_capacity = 1
+ health_check_type = "EC2"
+ user_data = base64encode(templatefile("../../templates/ec2_userdata.tpl", {
+ ecs_cluster = module.ecs_cluster.name
+ }))
+ iam_instance_profile_arn = var.instance_profile_arn
+
+ tags = {
+ AmazonECSManaged = "true"
+ }
+}
+
+resource "aws_ecs_capacity_provider" "asg_managed_draining" {
+ name = "${local.prefix}-capacity-provider"
+
+ auto_scaling_group_provider {
+ auto_scaling_group_arn = module.asg.autoscaling_group_arn
+ managed_draining = "ENABLED"
+ }
+}
+
+# This module usage starts here
+module "ecs_cluster" {
+ source = "../../.."
+
+ name = "${local.prefix}-cluster"
+
+ capacity_providers = [aws_ecs_capacity_provider.asg_managed_draining.name]
+}
+
+module "easy_ec2" {
+ source = "../../../modules/simple/ec2"
+
+ name = "${local.prefix}-service"
+ cluster = module.ecs_cluster.name
+ cpu = 256
+ memory = 512
+ desired_count = 1
+ ignore_desired_count_changes = false
+
+ network_mode = "host"
+
+ container_definitions = templatefile("../../templates/container_definitions.tpl", {
+ name = "${local.prefix}-cont"
+ cpu = 256
+ memory = 512
+ })
+}
diff --git a/examples/easy/ec2-managed-draining/outputs.tf b/examples/easy/ec2-managed-draining/outputs.tf
new file mode 100644
index 0000000..e69de29
diff --git a/examples/easy/ec2-managed-draining/variables.tf b/examples/easy/ec2-managed-draining/variables.tf
new file mode 100644
index 0000000..c549865
--- /dev/null
+++ b/examples/easy/ec2-managed-draining/variables.tf
@@ -0,0 +1,16 @@
+variable "instance_profile_arn" {
+ description = "Instance Profile to use for EC2 to join to ECS Cluster. See `modules/iam/ecs-instance-profile`"
+ type = string
+}
+
+variable "availability_zones" {
+ description = "Override automatic detection of availability zones"
+ default = []
+ type = list(string)
+}
+
+variable "enable_ipv6" {
+ description = "Enable IPv6?"
+ default = true
+ type = bool
+}
diff --git a/examples/easy/ec2-managed-draining/versions.tf b/examples/easy/ec2-managed-draining/versions.tf
new file mode 100644
index 0000000..88a651b
--- /dev/null
+++ b/examples/easy/ec2-managed-draining/versions.tf
@@ -0,0 +1,10 @@
+terraform {
+ required_version = ">= 1.0"
+
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = ">= 3.74.0"
+ }
+ }
+}