Monday, November 24, 2014

Amazon Web Services Part 3: EC2 Container Service

At the AWS Re:Invent conference, Amazon announced a new feature "EC2 Container Service" - ECS

Wait, if my compute instance is Linux based, I can install Docker on that instance what does this new feature do for me?  In fact user can create and manage Docker containers in AWS Elastic Beanstalk.

If we look into this we can find that this new feature is also described as "Container Management for the AWS Cloud".  Deploying container on the cloud is easy but this is exactly why we need a management system to keep thing under control and to provide additional benefits for customers deploying container based application.  As the container technology is becoming more and more mature with the help of Docker, we need to have management tools in place.  In my opinion as with virtual machine, later on we need to have a complete monitoring and orchestration tools to provide autoscaling functionality.  And as the trend goes, policy will be defined for just like what OpenStack Congress does.

On November 13, 2014, I blogged about Docket in OpenStack and Heat is used to manage containers.  Both Google and Microsoft uses the open source Kubernetes to manage containers in their respective cloud offering.

ECS Benefits
During the product announce at the AWS Re:Invent conference keynote, there is a slide to show the benefits of this new EC2 Container Service:
image source:
If you cannot see the image, the 4 benefits are:

  • Native Docker support for AWS customers
  • Significantly easier to manage Docker apps
  • Integrated with Docker Hub
  • Enable app portability
ECS Terminologies
On the Amazon blog Jeff Barr (@jeffbarr) has an article that has a list of terminologies to help us understand EC2 Container Service:

  • Cluster - A cluster is a pool of EC2 instances in a particular AWS Region, all managed by EC2 Container Service. One cluster can contain multiple instance types and sizes, and can reside within one or more Availability Zones.
  • Scheduler - A scheduler is associated with each cluster. The scheduler is responsible for making good use of the resources in the cluster by assigning containers to instances in a way that respects any placement constraints and simultaneously drives as much parallelism as possible, while also aiming for high availability.
  • Container - A container is a packaged (or "Dockerized," as the cool kids like to say) application component. Each EC2 instance in a cluster can serve as a host to one or more containers.
  • Task Definition - A JSON file that defines a Task as a set of containers. Fields in the file define the image for each container, convey memory and CPU requirements, and also specify the port mappings that are needed for the containers in the task to communicate with each other.
  • Task - A task is an instantiation of a Task Definition consisting of one or more containers, defined by the work that they do and their relationship to each other.
  • ECS-Enabled AMI - An Amazon Machine Image (AMI) that runs the ECS Agent and dockerd. We plan to ECS-enable the Amazon Linux AMI and are working with our partners to similarly enable their AMIs.
ECS Function

From the Amazon Web Service official web site,  EC2 Container Service is a highly scalable, high performance container management service that supports Docker containers and allow user to:

  • Easily run distributed applications on a managed cluster of Amazon EC2 instances.
  • Launch and stop container-enabled applications with simple API calls, allows you to query the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features like security groups, EBS volumes and IAM roles.
  • Schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements.
  • Eliminates the need for you to operate your own cluster management and configuration management systems or worry about scaling your management infrastructure.
The smallest unit for EC2 Container Service to manage is a cluster.  From the terminology section about, cluster is defined as a pool of Amazon resources in an AWS Region.  When we look at the product detail of ECS, it is described as a tool for "complete visibility and control of your cluster from creating and terminating Docker containers to viewing detailed cluster state information". 

Future Direction

In my opinion, in a cloud the ability to meter and monitor is an important aspect especially for public cloud where resource is being charged.  Amazon had not announced anything on this yet in AWS Re:Invent. As of this writing this feature is still in preview status - FREE.  As the container technology in Amazon Web Services become more mature, it is very possible that it will become a paid service.  After all, the purpose of AWS is to make money. 

Another area that has potential for container technology to grow is PaaS.  Red Hat is using the container technology for it PaaS offering and I think AWS will be catching up in this area also. 

Network Function Virtualization with container is a hot topic these days but it seem AWS is not doing much in the networking area. 

Related Post:
Amazon Web Services Part 1: Do you know all of these icons?
Amazon Web Services Part 2: Security Offerings

"Amazon EC2 Container Service (ECS) - Container Management for the AWS Cloud." Amazon EC2 Container Service (ECS) - Container Management for the AWS Cloud. N.p., n.d. Web. 17 Nov. 2014.
"AWS | Amazon EC2 Container Service." Amazon Web Services, Inc. N.p., n.d. Web. 17 Nov. 2014.


  1. Bluehost is ultimately one of the best hosting company with plans for all of your hosting requirements.

  2. You might be eligible to get a $1,000 Amazon Gift Card.

  3. This comment has been removed by the author.

  4. Your good knowledge and kindness in playing with all the pieces were
    very useful. I don’t know what I would have done if I had not
    encountered such a step like this.

    AWS Training in Bangalore

    AWS Training in Bangalore

  5. Your good knowledge and kindness in playing with all the pieces were very useful. I don’t know what I would have done if I had not encountered such a step like this.

    AWS Training in Bangalore

  6. Thank you for posting such nice information.Keep Sharing.
    Amazon Web Services Training in Noida

  7. I really enjoy the blog.Much thanks again. Really Great AWS Online Training

  8. Well Written article on Amazon web services . Thank you for sharing with us please keep Sharing. For More Info please follow our aws online training

  9. Such a wonderful information. Thank you keep sharing like this AWS Online Training Bangalore

  10. Hi,

    This post is really nice and informative. The explanation given is really comprehensive and informative..
    Thank You
    AWS training in Hyderabad

  11. Really very informative and creative contents. This concept is a good way to enhance the knowledge of AWS.thanks for

    sharing please keep it up
    AWS Training in gurgaon

  12. Very interesting information Jodie, but, I am interested in publishing poetry. Is there another person who can advise me or you do that too? Thank you for responding

    aws training in chennai

  13. Hello Dear,

    Tecnogeekscs Provides Courses in Building, Deploying and Optimizing on AWS Web Services. Get Proper Training with Practical Exposure with Experiences Trainer. More Detail visit Amazon Web Services or Call +91 860-099-8107

    Excellent post, I believe it's information about profile back links and also good list. Thanks for sharing.

  14. I believe there are many more pleasurable opportunities ahead for individuals that looked at your site.

    AWS Training in Bangalore|

  15. Needed to compose you a very little word to thank you yet again regarding the nice suggestions you’ve contributed here.
    AWS Training in Chennai

  16. Thanks For your information, I think its very useful for more information about AWS Tutorial Information clieck this link. aws training in bhubaneshawar

  17. the detailed analysis about the ecs container service was very much important to know.. thanks a lot for the writeup..

    aws training in bangalore

  18. You provide super information about ECS thanks keep sharing new things with us AWS Online Course Hyderabad

  19. I am really happy with your blog because your article is very unique and powerful for new training in bangalore

  20. I feel really happy to have seen your webpage and look forward to so many more entertaining times reading here. Thanks once more for all the details.

    Best Java Training Institute Chennai

    Amazon Web Services Training in Chennai

  21. My rather long internet look up has at the end of the day been compensated with pleasant insight to talk about with my family and friends.
    Amazon Web Services Training in Bangalore


  22. Good blog, yours information is very effective. the information about AWS.
    Amazon Web Services Training in Delhi

  23. Thanks for the explanation. It’s really helpful. Please keep sharing
    Amazon Web Services Institute in Delhi

  24. Awesome Blog, I Loved it, Me first time here in the Blog. Totally Impressed.
    Aws Training in Hyderabad | Devops Training in Hyderabad

  25. Thanks for sharing and keep update with new information AWS Online Course Bangalore


  26. What a fantastic read on Aws. This has helped me understand a lot in Aws course. Please keep sharing similar write ups on Aws. Guys if you are keen to know more on Aws, must check this wonderful Aws tutorial and i'm sure you will enjoy learning on Aws training.

  27. Great article ...Thanks for your great information, the contents are quiet interesting. I will be waiting for your next post.
    AWSTraining in Hyderabad

  28. Thank you for sharing wonderful information with us to get some idea about that content
    Aws Training in Chennai

  29. Thanks for Sharing this Valuable Information i like this i Can Share this with My Friend Circle.
    AWS Interview Questions and Answers

  30. Amazing blog, it is very informative for us. Thanks for sharing.

    AWS Training in Pune

  31. Nice article, users are attracted when they see your post thanks for posting keep updating AWS Online Training Bangalore

  32. This concept is a good way to enhance the knowledge.thanks for sharing. please keep it up selenium Online Training Bangalore

  33. Excellent!! You provided very useful information in this article. I have read many articles in various sites but this article is giving in depth explanation about Amazon Web Services Online . Recently, I also took training on this “Amazon Web Services Online Training ” from Excelr.
    Amazon Web Services Online Training

  34. Your good knowledge and kindness in playing with all the pieces were
    very useful. I don’t know what I would have done if I had not
    encountered such a step like this.

    aws training in chennai

  35. Thanks for sharing the information, Salesforce experts a a lot of openings in multi-level companies, for more information n
    Salesforce Training in Hyderabad
    Salesforce Online Training in BangaloreProfessional Salesforce CRM Training

  36. Excellent blog, i have learned so much from this blog. Thanks for sharing..
    AWS Training in Hyderabad
    AWS Training in Ameerpet

  37. AWS is probably one of the most used cloud computing platforms. There is a constant requirement for AWS professionals in various organizations across the globe. There are several institutes which strive to provide aws training in hyderabad.

  38. Super blog, very useful information thanks. Get more knowledge on AWS Online Training