Part 2: Deploying Envoy with a Python Flask webapp and Kubernetes
In this tutorial, a straightforward REST-based user service is deployed using Kubernetes, Postgres, Flask, and Envoy. The application requires persistent storage, allows scaling of different pieces, and explores Envoy at the edge and internally. Minikube is used to create a local Kubernetes cluster for development purposes. The Flask app is built on top of the lyft/envoy Docker image, and a separate Docker image is created for the edge Envoy. The application is then scaled up to multiple instances of the Flask app using Kubernetes' scaling feature. Finally, a Python shim is used to bridge the Envoy "Service Discovery Service" (SDS) to the Kubernetes API, allowing round-robin traffic between several Flask apps.
Company
Ambassador
Date published
Dec. 15, 2017
Author(s)
Jake Beck
Word count
2229
Language
English
Hacker News points
None found.