Load Balance Application Traffic with Marathon-LB in DC/OS

Lab Steps

Logging in to the Amazon Web Services Console
Understanding the DC/OS Cluster Architecture
Connecting to the Virtual Machine using SSH
Installing the DC/OS CLI on Linux
Deploying Marathon-LB from the DC/OS GUI
Configuring a Marathon Application to Work with Marathon-LB
Performing a Blue/Green Deployment with Marathon-LB
Validate AWS Lab

The hands-on lab is part of this learning path

Introduction to DC/OS

Ready for the real environment experience?

Time Limit1h 10m


Lab Overview

Marathon-LB is a reverse proxy load balancer for Marathon applications. Marathon-LB supports TCP, HTTP, and HTTPS protocols and automatically updates its configuration in real-time as you add and remove applications from the cluster. Marathon-LB can be used as a public-facing load balancer running on public agents to allow ingress traffic into the cluster or as an internal load balancer. Load balance application traffic with Marathon-LB in DC/OS and keep traffic flowing by performing a zero downtime blue/green deployment in this Lab.

Lab Objectives

Upon completion of this Lab you will be able to:

  • Deploy Marathon-LB in a DC/OS Cluster
  • Deploy Applications load balanced by Marathon-LB
  • Perform zero downtime blue/green deployments with Marathon-LB

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 to optionally understand the architecture of the pre-created DC/OS cluster

Lab Environment

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

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



August 31st, 2020 - Updated screenshots for the new EC2 user interface


May 15th, 2019 - Updated a Lab Step to address an issue encountered while installing PycURL 

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

About the Author
Learning paths15

Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), Linux Foundation Certified System Administrator (LFCS), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.