Microservices architecture can be adopted when traditional monolithic deployments are unable to solve agility and scalability challenges within an environment. Advantages of Microservices include the following:
Agility – small independent teams help to shorten cycle times
Availability – easier to implement failure isolation.
Innovation – smaller teams can act independently and choose the technologies for their areas. This becomes a continuous development process where new ideas can be tested quickly and rolled back if necessary.
Scalability – a best practice for large-scale systems is fine grained decoupling which can be scaled horizontally and independently with failing components easily and automatically replaced.
Amazon Elastic Container Service for Kubernetes (EKS) is a managed Kubernetes service that provides easy management of a Kubernetes control plane. It automatically provides availability and scalability of the Kubernetes API servers and etcd persistence layer for each cluster. EKS runs across three Availability Zones (AZ’s) and automatically detects and replaces unhealthy masters so is highly available.
Main features of EKS
- Fully Managed
- Security managed via IAM
- Runs in a VPC
- Can run using GPU enabled P2 and P3 EC2
- Integrated with CloudTrail Logging
- Fully compatible with existing community plugins, tools and add-ons