Easiest containerized deploy, bar none!
March 28, 2017

Easiest containerized deploy, bar none!

Jake Luby | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with Kubernetes

It is being used across many departments, with more being added every day. My team was one of the first teams to use Kubernetes 8 for our microservice deployments. It addresses the problem of HDHA applications, agile development, rolling deployments with no downtime. We are also utilizing its service discovery with spring boot admin to provide node level details for all nodes in the cluster.
  • Single process microservice containerization that can be scaled up and down at a moments notice.
  • Rolling deployments with zero downtime.
  • Artifactory/DockerHub integration for deploying from an artifact repo.
  • Spring Boot integration with configmaps & secret managment.
  • Ingress is HTTP only, so something that is TCP only must be in the cluster.
  • Multi-process containers don't behave well.
  • Sizing constraints cause slow startups for Spring Boot apps.
  • Ingress' are slow to start up.
  • We switched from Chef, so we got a HUGE amount of ROI by switching our microservices over to Kubernetes 8. A lot less code, a lot easier to test, and immutable images means we have just one build and that artifact goes through all the environments.
  • Automated deploys are SUPER easy with Kubernetes 8. We just have simple scripts listening on a GitHub repo for changes that applies/creates all the Kubernetes 8 pieces we need. Everyone has the power to deploy to any of the clusters through code and code reviews.
  • Shrunk our devops need dramatically, everything just works.
We already had an enterprise Kubernetes 8 set up, so once we got our namespace it took me about 2 weeks to go from not knowing anything to having a self-contained jar in a container, running on Kubernetes 8. In comparison, it took me two weeks to install Java on a blank server utilizing Chef. The learning curve isn't that steep, the deploys are wonderful, and everything basically works as advertised (we've not been completely issue free). But once we got the kinks out, sized our containers correctly, and made them true single process microservices, it's really awesome. It allows my team to concentrate on the code deployed, knowing they are just a few clicks away from it with any new feature.
It is well suited for stateless microservices (single APIs that perform a single function, message consumers/producers, single session UIs, etc.). It is also great for teams that are deploying a lot since they are fast and rolling with no pods being down. It is not well suited for things that require a state or any kind of persistence layer in the app or cluster.