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-6a460205
eu-west-2 HVM - ECS enabled ami-55c2d231
eu-west-1 HVM - ECS enabled ami-972ad1ee
ap-northeast-2 HVM - ECS enabled ami-4d568e23
ap-northeast-1 HVM - ECS enabled ami-0bd72f6d
sa-east-1 HVM - ECS enabled ami-2b097a47
ca-central-1 HVM - ECS enabled ami-1946f87d
ap-southeast-1 HVM - ECS enabled ami-ac6002cf
ap-southeast-2 HVM - ECS enabled ami-47afb524
eu-central-1 HVM - ECS enabled ami-18309a77
us-east-1 HVM - ECS enabled ami-0f020c74
us-east-2 HVM - ECS enabled ami-fed7f49b
us-west-1 HVM - ECS enabled ami-7f5b6f1f
us-west-2 HVM - ECS enabled ami-1e15fe66