3 Dec 2015 in Announcement, Helm, Kubernetes

Helm 0.2.0 Released

Since KubeCon 2015, the Helm team has been hard at work bringing you a new release.

Helm 0.2.0 contains numerous bug fixes, some code refactoring, and several enticing new features.


  • Helm has been moved to github.com/helm/helm and the core charts are now at github.com/helm/charts
  • helm lint helps you validate your charts.
  • helm repo add|rm|list lets you easily manage your own chart repositories.
  • Support for Kubernetes 1.1 beta 1 kinds (DaemonSet, Job, etc.) as well as custom kinds.
  • helm install and helm uninstall are smarter! In fact, many commands are improved.
  • Helm now supports git-style plugins.
  • Many, many bug fixes.

We're already hard at work on Helm 0.3 and have some exciting new features in the works.

Follow along on our GitHub Milestone for 0.3.0.

1 Dec 2015 in Series: Schedulers, Docker, Fleet, Swarm, Overview

Schedulers, Part 1: Basic Monolithic

Scheduling is a method to to assign workloads to resources that can handle those workloads. In a distributed environments, there is a particularly important need for schedulers. Especially ones that provide scalability, are resource aware, and cost effective.

Monolithic schedulers are a single process entity that make scheduling decisions and deploy jobs to be scheduled. These jobs could be a long running server, a short living batch command, a MapReduce query, and so on.

For monolithic scheduler to make decision for scheduling a job, it should observe the resources available in the cluster (e.g. CPU, memory, and so on), lock the resources, schedule the job, and update the available resources.

It’s hard for Monolithic schedulers to deal with more than one job at a time because there is a single resource manager entity a single scheduling entity. Avoiding concurrency makes the system easier to design and easier to understand.

Some examples of monolithic schedulers:

  • fleet: a native scheduler to CoreOS (not resource aware)
  • Swarm: a scheduling backend for Docker containers
  • Kubernetes: an advanced type of monolithic scheduler for Pods (a collection of co-located containers that share same namespaces)

In this post, we'll cover two basic monolithic schedulers.

First we'll look fleet, a scheduler for systemd units. systemd is an advanced init system that that configures and boots Linux userspace. A unit is an individual systemd configuration file that describes a process you’d like to run. We’ll also look at Swarm, a scheduling backend for Docker containers.

Read More
27 Nov 2015 in Deis v1 PaaS, LTS, Community Meeting

Deis 1.12.2 Release and Latest Release Planning

Deis v1.12.2 Release

Deis v1.12.2 will be released on Tuesday, December 1. We have a variety of bug fixes in this release, and the team continues to make progress on the upcoming version 2 of Deis. Please refer to the upgrade documentation to assist in your cluster migration.

A full list of items in this release will be provided on December 1.

Read More
24 Nov 2015 in Announcement

Star Power

Wow! Deis passed 5,000 stars on GitHub and I couldn't be more happy.

I wanted to take this moment to say THANK YOU to our amazing community.

You're the real stars! ;)

19 Nov 2015 in Docker, Docker Hub

Six Ready-made NoSQL Database Docker Images

NoSQL is an umbrella term for a whole category of databases, many different in their featuresets, but united in that they depart in some way from the relational model used by databases such as MySQL and PostgreSQL.

In this post, we cover six ready-made NoSQL database Docker images.

For each image, we address some of the current bugs, and offer potential workarounds.

Rethink DB

RethinkDB is an OSS project built to store JSON documents and has been designed with horizontal scalability in mind. RethinkDB supports functions, table joins, aggregations, and groupings to bolster its native query language, ReQL.

ReQL differs from other query languages in that, rather than constructing strings for a query engine, developers work with ReQL via chainable methods directly from their programming language of choice. As well as being a easy to learn, this also mitigates against the posibility of injection attacks.

Read More