Container Orchestration


What is Container Orchestration ?

- Fault tolerant
- Scaling
- Optimally use resources
- Discovery
- Access from outside world
- Update/rollback with 0 downtime

What Container Orchestrators do?

- cluster = multiple host together
- schedule container(pod) to run on host/node
- network among pod on different nodes
- bind container with storage
- services = group of containers
- keep resource usage in check and optimize if needed
- secure access to app running inside continer

Deployment options

on-premise v/s cloud
bare-matel v/s VM

Container Orchestrators 

- Kubernetes
- Docker Swarm
- Mesos Marathon
- Docker Compose : Single machine. Not for large scale. With one command, "docker compose up" it will bring up : containers, volumes, networks
- Hashicorp Nomad

- Amazon ECS (Amazon EC2 container service)
1. Task == Pod
2. It has its own repository. 
3. Task can be part of CloudFormation stack. Task, Queue, EC2 Volume all together in 
4. CloudFormation to start and to cleanup
5. To get started https://aws.amazon.com/ecs/
- AWS Fargate https://aws.amazon.com/fargate
- Google Kubernetes Engine (^L = clear = cls at Google Cloud Shell)
- Microsoft Azure Kubernetes Services (AKS)
- Cloud Foundry
- Rackspace
- Oracle Cloud Infrastructure 
- Rancher

K8s Features

schedule pod based on resource usage and constrain with HA
self-healing
scaling
- service discovery + load balancing. 
- auto rollout and rollback
- secrets and config mgt
- storage orchstration with SDS
- batch execution
- RBAC

0 comments:

Post a Comment