Introduction to Automated Zero Downtime Deployment
Github
Codepipeline
ECS
$whoami
-
Asjad Saboor
-
Technical Lead @ 10Pearls
-
Full Stack JS Developer
Agenda
- What is Container orchestration?
- What is AWS ECS?
- Explore some basic AWS services
- Overview of Infrastructure diagram
- Deploy NodeJS API using ECS
- Automate deployment process using Codepipeline
Container Orchestration
Container Orchestration
-
Automation of all aspects of coordinating and managing containers which includes
- Configuring and scheduling of containers
- Provisioning and deployments of containers
- Availability of containers
- Scaling of containers to equally balance application workloads across infrastructure
- Allocation of resources between containers
- load balancing, traffic routing and service discovery of containers
- Health monitoring of containers
- Securing the interactions between containers.
Container Orchestration Tools
What is ECS?
- Elastic Container Service
- Highly scalable, high-performance container orchestration service
- Let you host your services in serverless infrastructure
- Fargate - Containers without servers
-
Has three main components:
- Elastic Container Registry
- Clusters
- Task Definitions
Some more AWS services
- Amazon Relational Database Service (RDS)
- Security Groups
- Codepipeline
- VPC
- Cloud Watch for logging
- Load balancer
What is Codepipeline?
- A continuous delivery service to model, visualize, and automate the steps required to release your software.
- Supports zero downtime deployment.
Infrastructure Diagram
Let's begin deployment....
Questions?
Thank you
Feedback
https://bit.ly/2Zhn5m0
NodeJS Training - ECS
By Asjad Saboor
NodeJS Training - ECS
- 386