Performing Rolling Upgrades of Marathon Applications in DC/OS


29 students completed the lab in ~30m

Total available time: 50m

12 students rated this lab!

Lab Overview

By performing rolling upgrades of Marathon applications in DC/OS, you avoid downtime and can trade off upgrade speed, resource overhead, and application capacity. This Lab will walk you through configuring an upgrade strategy, performing a rolling upgrade, and rolling back to an earlier version of an application definition.

Lab Objectives

Upon completion of this Lab you will be able to:

  • Include upgrade strategies in Marathon application definitions
  • Configure upgrade strategy properties to achieve different goals
  • Upgrade Marathon applications using the DC/OS GUI and CLI

Lab Prerequisites

You should be familiar with:

  • Basic DC/OS concepts including master nodes, agents, services, tasks, and Marathon
  • Working at the command-line in Linux
  • AWS services knowledge is useful in order to understand the architecture of the pre-created DC/OS cluster, but not required

Lab Environment

Before completing the Lab instructions, the environment will look as follows:

After completing the Lab instructions, the environment should look similar to:

Follow these steps to learn by building helpful cloud resources

Logging in to the Amazon Web Services Console

Your first step to start the Lab experience

Understanding the DC/OS Cluster Architecture

Understand the cluster architecture and the resources provisioned for this Lab

Connecting to the Virtual Machine using SSH

Create a secure connection to a remote machine

Installing the DC/OS CLI on Linux

Install the DC/OS command-line interface (CLI) on Linux.

Defining a Marathon Application with a Custom Upgrade Strategy

Create and deploy a Marathon application that defines a custom upgrade strategy

Performing a Rolling Upgrade of a Marathon Application

Modify the application definition and observe a rolling upgrade in the DC/OS GUI

Rolling back to an Earlier Version of a Marathon Application

Roll back to the previous version of a Marathon application definition