Getting started with Istio and etcd
Background
Late in 2017, my talk about Istio was chosen as one of the topics for Index Developer Conference in San Francisco. Since most presentations for Istio focus on microservices and how to efficiently route http traffic between the various microservices, I wanted to expand the conversation to more than just the web application and include a simple data persistence tier. For the persistence tier, I chose etcd because etcd can support a variety of use cases beyond just data storage and caching. In this presentation, I walked through the dev, test and deployment process for building a simple microservice deployed on Kubernetes. I also provided a brief overview of common tools used for observing a Kubernetes deployment with examples from Grafana, Prometheus and WeaveScope.
GitHub Project
Since I wanted the session to be interactive and live beyond the conference, I created a Github project Istio Index Conference that hosted the entire application I demoed at Index. The project contains not only the application source code but all of the required deployment artifacts such as Kubernetes YAML files, script to deploy the application including the integration of Istio as well as the required Docker artifacts to build the images. In addition to the source code, I created a README that walks you through the entire set up of the environment on both IBM Cloud Private and Minikube so it is really easy to do this on your own.
Index Conference Recording
Author note
This project is based upon a Medium Article Istio is not just for microservices written in 2017 and updated to support the latest version of Istio and Kubernetes. Since most of the content was embedded within the original Medium article, this project was created to encourage developers to clone this repository and modify it to learn more about Kubernetes, Istio and etcd.