6 Jun 2016 in Deis Workflow, Annoucement

Deis Workflow Release Candidate (Hooray)

The Deis Workflow team is as happy as a baby goat jumping off stuff during spring time. We just cut Release Candidate 2 of Deis Workflow!

While we are busy leaping off things in fits of glee, give Deis Workflow RC2 a shot.

We've been generally cleaning house and closing bugs. There are a few changes that we want to highlight for this release candidate.

Private Image Support

We shipped private image support in Workflow Beta 3. For RC2, instead of always pulling the remote images to the managed on-cluster registry, we now use ImagePullSecrets baked into Kubernetes. This means your private images will be pulled directly to the nodes. Usually good advice to go direct to the source concerning private matters, no?

New name for Release ENV vars

If your application is utilizing the DEIS_RELEASE environment variable you will need to update your application. In a bout of house cleaning, we've switched that over to WORKFLOW_RELEASE, it is Deis Workflow afterall. We've updated all our example apps as well, because bug free demos are always nice to see.

Ubuntu Slim, so thin!

Through the beta phase we repeatedly observed a number of DNS failures both on our end-to-end testing infrastructure and our development installs. Through a long and twisty maze of bugs, this boiled down to a bug in ulibc's DNS resolver.

As the "age old" adage goes, "it is always DNS".

For DNS stability, image security visability and other ilities, we've switched our base distribution to Ubuntu Slim. If Macho Man Randy Savage were still around, I'm sure he'd be glad for the change.

Upgrading to GA Release

The release of Helm Classic and RC2 have put in place the necessary functionality to provide an in-place upgrade story. The TL;DR version is that you will need Helm Classic 0.8.0 or later, a running Workflow RC2 cluster, a copy of your templated parameters and some cluster secrets. A quick un-install and re-install will bring your Workflow cluster up to stable when we ship our GA Release.

For the intrepid, you should be able to upgrade from beta4 to RC2 by manually applying a few Kubernetes annotations. Give it a shot! Your experience here is very welcome.

The updated documenatation is available here.

Upgrading from RC1 to RC2 should work as-documented.

Platform SSL Secret Changes

To mirror the secret format used by Ingress controllers in Kubernetes, we've changed the keys used for the platform SSL certificate. Before upgrading, update the secret via kubectl --namespace=deis edit secret deis-router-platform-cert:

  • Copy the existing cert key to tls.crt
  • copy the existing key key (ahem) to tls.key

Once you have completed the upgrade to RC2 you may delete the cert and key keys (ahem).

That's not all!

Many bug fixes, small updates, little tweaks and tuning, our ride has been pimped and is ready for prime time.

Click through for the complete release notes for RC1 and RC2.

Read More
6 Jun 2016 in Community Meeting, Deis Workflow, Deis LTS

June 2016 Community Meeting

A rolling stone gathers no moss! Another month, another community meeting!

This month we were joined by Josh Mize from Mozilla who gave us a wonderful update on how Mozilla is using Deis v1 in production.

Additionally, Michelle Noorali from the Helm team gave a wonderful demo of the Helm Alpha 1 release. Unfortunately due to computers, that portion of the meeting was lost to "video rendering error 10008." Not all is lost however; we made the necessary sacrifices to the lords of computation and re-recorded the demo!

Matt Boersma gave a maintenance update for Deis v1 PaaS and I gave a quick update about Deis Workflow release status. Spoiler alert, we're really close (super close).

Click Play

Until Next Time

Our next community meeting will be July 7th, 2016. If you like calendar reminders, this would be your jam.

See everyone next month!

3 Jun 2016 in Deis Workflow, Series: Deis Workflow Basics

Deis Workflow Basics, Part Two

This is the second post in a series on Deis Workflow, the second major release of the Deis PaaS. Workflow builds on Kubernetes and Docker to provide a lightweight PaaS with a Heroku-inspired workflow.

In part one, we gave a brief conceptual overview, including Twelve-Factor apps, Docker, Kubernetes, Workflow applications, the "build, release, run" cycle, and backing services. We also explained the benefits of Workflow. In summary:

Workflow is fast and easy to use. You can deploy anything you like. Release are versioned and rollbacks are simple. You can scale up and down effortlessly. And it is 100% open source, using the latest distributed systems technology.

In this post, we'll take a look at the architecture of Workflow and how Workflow is composed from multiple, independent components.

Read More
31 May 2016 in Deis Workflow, Series: Deis Workflow Basics

Deis Workflow Basics, Part One

Deis Workflow is an open source Platform as a Service (PaaS) that makes it easy to deploy and manage applications on your own servers. Workflow builds on Kubernetes and Docker to provide a lightweight PaaS with a Heroku-inspired workflow.

Deis Workflow is the second major release of the Deis PaaS.

In this miniseries we'll go over the basics of Deis Workflow. That includes: why you'd want to use Workflow, a conceptual overview, a look at architecture and components, and finally, how to install Workflow on a Kubernetes cluster.

Why Use Workflow?

There are five main reasons you might want to use Workflow:

  1. Fast and easy. Supercharge your team with a platform that deploys applications as fast as you can create them. No Kubernetes knowledge is needed.

  2. You can deploy anything. Deploy any language, framework, or Dockerfile with a simple git push. Use deis pull to move existing Docker images through your team's development CI/CD pipeline.

  3. Scale effortlessly. Your application can be scaled up or down with a single command that handles everything for you: deis scale.

  4. Open source. Avoid vendor lock-in with an open source platform that runs on public cloud, private cloud, or bare metal. Contribute to the project if you want to add features and help us set direction.

  5. The latest technology. Benefit from the latest distributed systems technology thanks to a platform that is constantly evolving.

Read More
27 May 2016 in Kubernetes, Intro

Getting Started With Kubernetes

Kubernetes is a very popular open source container management system.

The goal of the Kubernetes project is to make management of containers across multiple nodes as simple as managing containers on a single system. To accomplish this, it offers quite a few unique features such as traffic load balancing, self-healing (automatic restarts), scheduling, scaling, and rolling updates.

In this post, we'll learn about Kubernetes by deploying a simple web application across a multi-node Kubernetes cluster. Before we can start deploying containers however, we first need to set up a cluster.

Read More