Amazon EC2 Container Service

Amazon EC2 Container Service(Amazon ECS) is a fully managed container orchestration service. Customers such as Duolingo, Samsung, GE, and Cookpad use ECS to run their most sensitive and mission critical applications because of its security, reliability, and scalability.

ECS is a great choice to run containers for several reasons. First, you can choose to run your ECS clusters using AWS Fargate, which is serverless compute for containers. Fargate removes the need to provision and manage servers, lets you specify and pay for resources per application, and improves security through application isolation by design. Second, ECS is used extensively within Amazon to power services such as Amazon SageMaker, AWS Batch, Amazon Lex, and Amazon.com’s recommendation engine, ensuring ECS is tested extensively for security, reliability, and availability.

Additionally, because ECS has been a foundational pillar for key Amazon services, it can natively integrate with other services such as Amazon Route 53, Secrets Manager, AWS Identity and Access Management (IAM), and Amazon CloudWatch providing you a familiar experience to deploy and scale your containers. ECS is also able to quickly integrate with other AWS services to bring new capabilities to ECS. For example, ECS allows your applications the flexibility to use a mix of Amazon EC2 and AWS Fargate with Spot and On-Demand pricing options. ECS also integrates with AWS App Mesh, which is a service mesh, to bring rich observability, traffic controls and security features to your applications. ECS has grown rapidly since launch and is currently launching 5X more containers every hour than EC2 launches instances.

ECS supports Fargate to provide serverless compute for containers. Fargate removes the need to provision and manage servers, lets you specify and pay for resources per application, and improves security through application isolation by design.

ECS capacity providers help you to focus on building and managing applications instead of infrastructure. With capacity provider the demands of your application determines the compute capacity allocated to it and you get the flexibility to use a mix of EC2 and Fargate with Spot and On-Demand pricing options for your applications.

ECS powers several key services at Amazon and is built on technology developed from many years of experience running highly scalable services. You can rapidly launch thousands of containers using ECS with no additional complexity.

ECS launches your containers in your own Amazon VPC, allowing you to use your VPC security groups and network ACLs. No compute resources are shared with other customers. You can also assign granular access permissions for each of your containers using IAM to restrict access to each service and what resources a container can access. This high level of isolation helps you use ECS to build highly secure applications.

ECS runs on the best global infrastructure with 69 Availability Zones (AZ) across 22 Regions. AWS provides >2x more regions with multiple availability zones than the next largest cloud provider (22 vs. 8). ECS is backed by the AWS Compute SLA which guarantees a Monthly Uptime Percentage of at least 99.99% for ECS giving you ease of mind.

With ECS, you can use Fargate Spot tasks or EC2 Spot instances to realize up to 90% discounts compared to on-demand prices for running stateless and fault tolerant applications. You can use savings plan and realize up to 50% discount for persistent workloads. You can easily run ECS clusters at scale by mixing Spot Instances with On-Demand and Reserved Instances.

Below are the cmdlets which are available with Amazon EC2 Container Service

CmdletNameServiceOperation
Add-ECSResourceTag                                 TagResource                                   
Get-ECSAccountSetting                              ListAccountSettings                           
Get-ECSAttributeList                               ListAttributes                                
Get-ECSCapacityProvider                            DescribeCapacityProviders                     
Get-ECSClusterDetail                               DescribeClusters                              
Get-ECSClusterList                                 ListClusters                                  
Get-ECSClusterService                              ListServices                                  
Get-ECSContainerInstanceDetail                     DescribeContainerInstances                    
Get-ECSContainerInstanceList                       ListContainerInstances                        
Get-ECSService                                     DescribeServices                              
Get-ECSTagsForResource                             ListTagsForResource                           
Get-ECSTaskDefinitionDetail                        DescribeTaskDefinition                        
Get-ECSTaskDefinitionFamilyList                    ListTaskDefinitionFamilies                    
Get-ECSTaskDefinitionList                          ListTaskDefinitions                           
Get-ECSTaskDetail                                  DescribeTasks                                 
Get-ECSTaskList                                    ListTasks                                     
Get-ECSTaskSet                                     DescribeTaskSets                              
New-ECSCapacityProvider                            CreateCapacityProvider                        
New-ECSCluster                                     CreateCluster                                 
New-ECSService                                     CreateService                                 
New-ECSTask                                        RunTask                                       
New-ECSTaskSet                                     CreateTaskSet                                 
Register-ECSTaskDefinition                         RegisterTaskDefinition                        
Remove-ECSAccountSetting                           DeleteAccountSetting                          
Remove-ECSAttribute                                DeleteAttributes                              
Remove-ECSCluster                                  DeleteCluster                                 
Remove-ECSResourceTag                              UntagResource                                 
Remove-ECSService                                  DeleteService                                 
Remove-ECSTaskSet                                  DeleteTaskSet                                 
Start-ECSTask                                      StartTask                                     
Stop-ECSTask                                       StopTask                                      
Submit-ECSAttachmentStateChange                    SubmitAttachmentStateChanges                  
Unregister-ECSContainerInstance                    DeregisterContainerInstance                   
Unregister-ECSTaskDefinition                       DeregisterTaskDefinition                      
Update-ECSClusterSetting                           UpdateClusterSettings                         
Update-ECSContainerAgent                           UpdateContainerAgent                          
Update-ECSContainerInstancesState                  UpdateContainerInstancesState                 
Update-ECSService                                  UpdateService                                 
Update-ECSServicePrimaryTaskSet                    UpdateServicePrimaryTaskSet                   
Update-ECSTaskSet                                  UpdateTaskSet                                 
Write-ECSAccountSetting                            PutAccountSetting                             
Write-ECSAccountSettingDefault                     PutAccountSettingDefault                      
Write-ECSAttribute                                 PutAttributes                                 
Write-ECSClusterCapacityProvider                   PutClusterCapacityProviders                   

You can also check other AWS Services, and each services cmdlets we are providing.

Click on this Link for an Single place, where you get all the PowerShell cmdlets sorted based on the modules.

You can also refer other blogs on PowerShell at link

You can also refer other blogs on Microsoft at link

And also if you required any technology you want to learn, let us know below we will publish them in our site http://tossolution.com/

Like our page in Facebook and follow us for New technical information.

References are taken from Microsoft and AWS

Leave a Reply

Your email address will not be published. Required fields are marked *