This is project is a monorepo of projects that illustrate migrating a monolith application to microservices.
The motivation for the patterns used in this repo are articulated in detail in this blog post
Whether using Kubernetes or OpenShift Origin, make sure you have Istio installed .
Check the deployment folder. In here we have scripts for deploying to Kubernetes and OpenShift Origin. In the $platform/demo/
folder is step-by-step instructions for running the demo.
There are a series of projects used to illustrate a migration to microservices from a Java EE monolith.
The getting started experience begins with the monolith project. In this project we deploy our monolith application and understand the domain, architecture, and structure of the application that will be the foundation for successive iterations.
The tm-ui-*
folders contain different versions of the front-facing UI that we use as we migrate from a monolith to split out the UI to the set of microservices.
The backend-*
folders contain the monolith with the UI removed and successive iterations of evolution. With backend-v1
, we have taken the monolith as it is and removed the UI. It contains a REST API that can be called from the UI. In backend-v2
we've stated adding feature flags for controlling the introduction of a new microservice. See each respective sub project for more information.
This
Bootstrapping minikube:
$ minikube start --vm-driver=xhyve --memory=4096 --disk-size=30g --kubernetes-version=v1.7.5
Bootstrapping in minishift: