liangruibupt / aws-ecs-workshop-gcr

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GCR Amazon ECS Workshop

Amazon Elastic Container Service (Amazon ECS) is a highly scalable, fast, container management service that makes it easy to run, stop, and manage Docker containers on a cluster. There are 2 cluster launch types:

  1. Fargate: Host the cluster as serverless approach that is managed by Amazon ECS. You only need focus on launching your services or tasks
  2. ECS on EC2. To provide more control, you can host your tasks on a cluster that you manage by using the EC2 launch type.

You can use Amazon ECS to schedule the placement of containers across your cluster based on your resource needs, isolation policies, and availability requirements.

Amazon ECS can be used to run microservices workloads, scale batch jobs, machine learning and Extract-Transform-Load (ETL) workloads, and etc.

Amazon Container Serivces Landscape Amazon-Container-Landscape

Concept

  1. Amazon ECS cluster: is a logical grouping of tasks or services.

  2. The task definition: is a json file that describes one or up to 10 containers to form your application. It can be treat as the blueprint for your application

  3. A task: is instantiation of a task definition within a cluster. After you have created a task definition for your application within Amazon ECS, you can specify the number of tasks that will run on your cluster. Each task has its own isolation boundary and does not share the underlying kernel, CPU resources, memory resources, or elastic network interface with another task.

  4. The task scheduler: is responsible for placing tasks within your cluster. There are different scheduling options

  5. A service: is logical group of a specified number of tasks in an Amazon ECS cluster to serve the business logic of your application. ECS maintaining the desired count of tasks in your service.

    You can run your service behind a load balancer to distributes traffic cross the instance by define Service scheduler:

    • REPLICA: places and maintains the desired number of tasks across your cluster.
    • DAEMON: deploys exactly one task on each active container instance that meets all of the task placement constraints that you specify in your cluster.

Testing utility and test case

Resource

ECS Offical Guide

About


Languages

Language:Shell 100.0%