20 May 2016 in Demo, Fault-Tolerance

Cheapest Fault-Tolerant Cluster For Deis V1 PaaS

This guide is targeted to the Deis v1.13 LTS branch. With over 6 million downloads, Deis V1 PaaS has never been more popular. These instructions will not work with Deis Workflow, the Kubernetes-native PaaS, which is still currently in beta.

I am going to demo a cheap, quick, and dirty way to bring up a cluster for Deis V1 PaaS on DigitalOcean. This is the cheapest fault-tolerant configuration that I could manage. That is, a cluster on which some nodes can go down—but the cluster and its platform services remain available!

Before we go on, let's distinguish fault-tolerant from highly available.

Fault-Tolerant or Highly Available?

A fault-tolerant Deis cluster continues operating, even in the event of some partial or complete failure of some of its component nodes. This guide will show you how even a cheap Deis cluster can be fault tolerant—and to what extent.

A highly available (HA) Deis cluster is one that is continuously operational, or never failing. HA is the harder of the two to achieve, and this tutorial won't show you how to do that.

High availability is something that isn't provided out-of-the-box in most cases. If HA is one of your goals, your sysadmin or dev team will be better qualified to say what obstacles you will face in maintaining a standard of high availability for your apps.

Read More
19 May 2016 in GlusterFS, GCE, GKE, Kubernetes

Bootstrap a GlusterFS Cluster on GCE

As we've covered before, shared file systems are a tricky problem in the cloud. One solution to that problem is a distributed file system. Something each one of your app nodes can read from and write to. When it comes to distributed file systems, GlusterFS is one of the leading products.

With a few simple scripts on your Mac OS X or Linux machine, you can deploy a multi-zone High Availability (HA) GlusterFS cluster to Google Compute Engine (GCE) that provides scalable, persistent shared storage for your GCE or Google Container Engine (GKE) Kubernetes clusters.

In this post, I will demo these scripts and show you how to do this. By default, our GlusterFS cluster will use three GlusterFS servers, one server per Google Cloud zone in the same chosen region.

Read More
11 May 2016 in Deis Workflow, Announcement

Deis Workflow, Beta 4

Another few weeks, another Deis Workflow beta!

And what good is a changelog if it doesn't come with a soundtrack? Maybe a little "Crazy on You" by Heart...

Read More
10 May 2016 in Community Meeting, Deis Workflow, Deis LTS

May 2016 Community Meeting

In case you missed our last community meeting and are dying to find out what happened, we’ve got your summary notes right here!

First we got some housekeeping items out of the way; our team and community seem pretty happy with the recent switch from IRC to Slack - the channel is quite busy and filling up quickly. If you haven’t already signed up, you can request to join us here.

Want to become internet famous? Or maybe just demo something at the next community meeting? We don’t want community meetings to be all about us! So if you’re using Deis or have something to show off, consider a demo at our next meeting! Email jhansen@deis.com with details about your suggested demo.

Next an update from Matt Boersma about long term support for Deis V1 which launched about a month ago:

Read More
6 May 2016 in Kubernetes, GKE, Tutorial

Spinning Up Your First Kubernetes Cluster on GKE

So you've read about Kubernetes and maybe Google Cloud Platform, but you've never spun up a cluster for yourself. Fret not. In this post, we'll take you through the basics, and by the end of it, you'll have a three node cluster up and running.

Create Your Google Cloud Project

If you don't already have a Google account, you must create one before you continue.

Sign in to your Google Cloud Platform console and create a new project:

Then pick the project name:

Note down the project ID. This is a unique name across all Google Cloud projects. Later in this post, we will refer to this as PROJECT_ID.

Next, enable billing in the console. You need this to access Google Cloud resources. Next, enable the Container Engine API and Compute Engine API. You must complete all three steps before continuing.

Read More