Building microservices with Kubernetes
Microservices and Kubernetes are a great combination. Containers are not a required technology for implementing microservices – no technology is – but they're certainly a great fit, especially when properly orchestrated by software such as Kubernetes. For example, the following are some of the features of Kubernetes that make it particularly well suited for microservices architectures:
- Declarative service definition
- Built-in service discovery
- Naming and resource isolation via namespaces
- Granular autoscaling capabilities for pods/containers
We can add abstraction of several infrastructure layers and self-healing capabilities as extra bonuses to this list. Because Kubernetes (and a managed Kubernetes service, particularly) enables teams to focus more on customer-facing functionalities and less on undifferentiated "heavy lifting," it allows for the agility required to scale microservices deployments...