Kubernetes is a platform for managing application containers across multiple hosts. It provides lots of management features for container-oriented applications, such as auto scaling, rolling deployment, compute resource, and volume management. Same as the nature of containers, it's designed to run anywhere, so we're able to run it on a bare metal, in our data center, on the public cloud, or even hybrid cloud.
Kubernetes considers most of the operational needs for application containers. The highlights are:
- Container deployment
- Persistent storage
- Container health monitoring
- Compute resource management
- Auto-scaling
- High availability by cluster federation
Kubernetes is a perfect match for microservices. With Kubernetes, we can create a Deployment to rollout, rollover, or roll back selected containers (Chapter 7, Continous Delivery). Containers...