How We Monitor Our Kubernetes Cluster

nanit has been using kubernetes on production from its early days and for almost two years now. As with every large and complicated system, we experienced failures on all levels: The Kubernetes level: Node failures, Pod allocation failures etc. The applicative infrastructure level: Redis, RabbitMQ etc. The applicative level: nanit’s web services and video processing mechanisms. […]

StatsD + Graphite Cluster on Kubernetes

<TL;DR> You can find a deployment-ready StatsD & Graphite cluster for Kubernetes 1.5.X here: GitHub – nanit/kubernetes-graphite-cluster: StatsD + Graphite cluster on top of Kubernetes kubernetes-graphite-cluster – StatsD + Graphite cluster on top of Kubernetesgithub.com </TL;DR> Who doesn’t need monitoring? We all do. Today, Graphite is one of the most common picks as a monitoring […]

Real World Deployments On Kubernetes

Note: I assume that you have a basic knowledge of how Kubernetes works and what are its main components, specifically Replication Controllers (RC), Pods and the CLI kubectl. Roll it up The recommended way of deploying applications in Kubernetes is via its rolling-update CLI command. The synopsis for the command is as follows: kubectl rolling-update OLD_CONTROLLER_NAME ([NEW_CONTROLLER_NAME] […]

Why We Chose Kubernetes Over ECS

On our last post, we saw how Docker changed the way we treat our infrastructure and what changes it brought to the domain of service orchestration. In the following post, we’re going to take a tour of two of the leading Docker orchestration frameworks out there: ECS (Elastic Container Service) by AWS, and Kubernetes, an orchestration framework which began […]