Open In App

ECS Features

Last Updated : 28 Mar, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Pre-requisite: ECS

ECS stands for Elastic Container Service it is a container management service that was introduced In order to solve the difficulty of container administration on Amazon Elastic Compute Cloud (EC2) instances, Amazon released Amazon ECS, a container management service, in 2014. With the aid of Amazon ECS, containers can be quickly deployed, each separated from the others, and distributed across numerous endpoints with ease.

Features of Elastic Container Service (ECS)

Docker Integration

AWS users may manage Docker containers across clusters of Amazon EC2 instances with the help of Amazon ECS, which supports Docker. A Docker daemon is launched by each EC2 instance in a cluster, and it can deploy and run any application that is packed as a container locally on Amazon ECS without modifying the container itself.

Scheduling

According to the needed resources, such as RAM or CPU, and availability requirements, schedulers distribute containers over clusters. To schedule batch processes and continuously run programs or services, use this capability. To launch containers based on computing needs or availability requirements, Amazon ECS comes with two schedulers. ECS interfaces with AWS Blox, an open-source container orchestration platform, to schedule containers. Due to their reactivity, schedulers are useful for batch operations and lengthy applications; ECS also allows third-party scheduling solutions.

Cluster Management

Amazon ECS manages all the cluster management processes for the developer. The process generally includes installing, operating, and scaling cluster management software, analyzing solutions along with building architecture, and managing the availability and scalability of every system. With the help of Amazon ECS, the developer can easily launch cluster container instances and also specify the desired task to perform.

Load Balancing

The distribution of traffic across containers is made possible by integration with AWS ELB. When the task definition and ELB to use are defined, the Amazon ECS scheduler automatically adds and removes containers using the ELB.

Repository Support

As long as it is mentioned in the Task Definition, developers can utilize any accessible private Docker registry, third-party repository, or Docker Hub with Amazon ECS.

Local Development

Users can set up an Amazon ECS cluster and all associated resources using the AWS CLI, which streamlines the local development process. Additionally, Docker Compose is an open-source program used to create and manage multiple container applications and is supported by the CLI.

Networking

To give container isolation, Amazon ECS supports Docker networking and is integrated with Amazon Virtual Private Cloud (Amazon VPC). Developers can thus regulate how the containers communicate with other services and outside traffic. The containers support four networking options, each of which supports a particular use case. The modes include

  • Host mode: Directly adds containers to the host’s network stack and exposes non-isolated containers on the network.
  • Task Networking Mode: Gives each Amazon ECS job that is now running a unique elastic networking interface, giving the containers complete networking features in the Amazon VPC comparable to EC2 instances.
  • Bridge Mode: It establishes a Linux bridge to link all running containers on the host to a local virtual network that can be accessed using the host’s built-in network connection.
  • None mode: External networking for containers is deactivated in none mode

Programmatic Control

Developers can integrate and expand the Amazon ECS service via a number of straightforward APIs. Users can launch or destroy Docker containers, register or unregister tasks, establish or remove clusters, launch or delete Docker containers, and get extensive information about the state of the cluster and its instances using APIs. AWS CloudFormation is a tool that developers may use to schedule containers, register Task Definitions, and deploy Amazon ECS clusters.

Container Deployments

The Amazon ECS scheduler automatically starts new containers using the updated image whenever a new version of the application Task Definition is submitted and shuts down any containers still using the outdated version. Additionally, the necessary new and old containers from the AWS ELB will be registered and unregistered via Amazon ECS.

Container Auto-Recovery

The Amazon ECS service scheduler automatically recovers unhealthy containers. This guarantees that the application is constantly supported by the required number of containers.

Container Security

The Amazon VPC houses EC2 instances, and users can choose which instances are available on the public internet. IAM roles are also followed by EC2 instances and ECS tasks, while security groups and network access control lists restrict access to instances


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads