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.5

Region Type AMI
ap-south-1 HVM - ECS enabled ami-0eb3e061
eu-west-3 HVM - ECS enabled ami-56a0162b
eu-west-2 HVM - ECS enabled ami-eda3468a
eu-west-1 HVM - ECS enabled ami-87432afe
ap-northeast-2 HVM - ECS enabled ami-78d07216
ap-northeast-1 HVM - ECS enabled ami-7b097e1d
sa-east-1 HVM - ECS enabled ami-c1044aad
ca-central-1 HVM - ECS enabled ami-729c1816
ap-southeast-1 HVM - ECS enabled ami-ebf6b097
ap-southeast-2 HVM - ECS enabled ami-1df50e7f
eu-central-1 HVM - ECS enabled ami-aa2f4bc5
us-east-1 HVM - ECS enabled ami-3faba445
us-east-1 HVM - ECS enabled ami-43ada239
us-east-2 HVM - ECS enabled ami-6790a502
us-east-2 HVM - ECS enabled ami-f290a597
us-west-1 HVM - ECS enabled ami-109a9570
us-west-2 HVM - ECS enabled ami-9a9a1ee2