Amazon ECS (EC2 Container Service)


Amazon ECS is supported, which allows RancherOS EC2 instances to join your cluster.

Pre-Requisites

Prior to launching RancherOS EC2 instances, the ECS Container Instance IAM Role will need to have been created. This ecsInstanceRole will need to be used when launching EC2 instances. If you have been using ECS, you created this role if you followed the ECS “Get Started” interactive guide.

Launching an instance with ECS

RancherOS makes it easy to join your ECS cluster. The ECS agent is a system service that is enabled in the ECS enabled AMI. There may be other RancherOS AMIs that don’t have the ECS agent enabled by default, but it can easily be added in the user data on any RancherOS AMI.

When launching the RancherOS AMI, you’ll need to specify the IAM Role and Advanced Details -> User Data in the Configure Instance Details step.

For the IAM Role, you’ll need to be sure to select the ECS Container Instance IAM role.

For the User Data, you’ll need to pass in the cloud-config file.

#cloud-config
rancher:
  environment:
    ECS_CLUSTER: your-ecs-cluster-name
    # Note: You will need to add this variable, if using awslogs for ECS task.
    ECS_AVAILABLE_LOGGING_DRIVERS: |-
      ["json-file","awslogs"]
# If you have selected a RancherOS AMI that does not have ECS enabled by default,
# you'll need to enable the system service for the ECS agent.
  services_include:
    amazon-ecs-agent: true

Version

By default, the ECS agent will be using the latest tag for the amazon-ecs-agent image. In v0.5.0, we introduced the ability to select which version of the amazon-ecs-agent.

To select the version, you can update your cloud-config file.

#cloud-config
rancher:
  environment:
    ECS_CLUSTER: your-ecs-cluster-name
    # Note: You will need to make sure to include the colon in front of the version.
    ECS_AGENT_VERSION: :v1.9.0
    # If you have selected a RancherOS AMI that does not have ECS enabled by default,
    # you'll need to enable the system service for the ECS agent.
  services_include:
    amazon-ecs-agent: true


Note: The : must be in front of the version tag in order for the ECS image to be tagged correctly.

Amazon ECS enabled AMIs

Latest Release: v1.0.3

Region Type AMI
ap-south-1 HVM - ECS enabled ami-f7770998
eu-west-2 HVM - ECS enabled ami-f4041290
eu-west-1 HVM - ECS enabled ami-66b2a800
ap-northeast-2 HVM - ECS enabled ami-9e03dcf0
ap-northeast-1 HVM - ECS enabled ami-32b1a755
sa-east-1 HVM - ECS enabled ami-e01f758c
ca-central-1 HVM - ECS enabled ami-cca619a8
ap-southeast-1 HVM - ECS enabled ami-d79618b4
ap-southeast-2 HVM - ECS enabled ami-7d4a591e
eu-central-1 HVM - ECS enabled ami-f653f599
us-east-1 HVM - ECS enabled ami-3a71472c
us-east-2 HVM - ECS enabled ami-51466734
us-west-1 HVM - ECS enabled ami-b70f23d7
us-west-2 HVM - ECS enabled ami-3ad2c543