1. Home
  2. Training Library
  3. DevOps
  4. Courses
  5. Container Orchestration With Docker Swarm Mode

Summary

The course is part of this learning path

Docker in Depth
course-steps 3 certification 1 lab-steps 2

Contents

keyboard_tab
Intro
1
Course Introduction
PREVIEW2m 30s
2
Overview
PREVIEW5m 57s
Architecture
6
Security
3m 42s
Wrap Up
11
Summary
3m 42s
play-arrow
Start course
Overview
DifficultyIntermediate
Duration1h
Students701
Ratings
4.5/5
star star star star star-half

Description

Container Orchestration With Docker Swarm Mode

Docker has made great strides in advancing development and operational agility, portability, and cost savings by leveraging containers. You can see a lot of benefits even when you use a single Docker host. But when container applications reach a certain level of complexity or scale, you need to make use of several machines. Container orchestration products and tools allow you to manage multiple container hosts in concert. Docker swarm mode is one such tool. In this course, we’ll explain the architecture of Docker swarm mode, and go through lots of demos to perfect your swarm mode skills. 

Course Objectives

After completing this course, you will be able to:

  • Describe what Docker swarm mode can accomplish.
  • Explain the architecture of a swarm mode cluster.
  • Use the Docker CLI to manage nodes in a swarm mode cluster.
  • Use the Docker CLI to manage services in a swarm mode cluster.
  • Deploy multi-service applications to a swarm using stacks.

Intended Audience

This course is for anyone that is interested in orchestrating distributed systems at any scale. This includes:

  • DevOps Engineers
  • Site Reliability Engineers
  • Cloud Engineers
  • Software Engineers

Prerequisites

This is an intermediate level course that assumes:

  • You have experience working with Docker and Docker Compose

Topics

Lesson What you'll learn
Introduction What will be covered in this course
Overview Understand what Docker swarm mode is
Networking Discover the multi-host networking features built into swarm mode
Container Orchestration Learn the swarm mode features related to orchestrating containers
Consistency Understand how nodes keep a consistent view of the cluster
Security Discover the security features built into swarm mode
Setting Up a Swarm Learn the options for setting up swarms
Managing Nodes Use the Docker CLI to manage swarm nodes
Managing Services Use the Docker CLI to manage swarm services
Working With Stacks Manage Services with Compose files
Summary Review the course and see what's next

If you have thoughts or suggestions for this course, please contact Cloud Academy at support@cloudacademy.com.

Transcript

Here we are the of this course about container orchestration with Docker swarm mode. I hope you it has been as fun for you as it was for me. We covered a lot of ground in this course. Let's take a look back at what we learned.

Course Review
We started with a high-level overview of swarm mode and then dove into various components of the swarm mode architecture. The first was networking.
We learned about the overlay network type that makes networking swarm services distributed across multiple hosts extremely easy.
We saw how swarm accomplishes load balancing by virtual IP or by DNS round robin.
Finally, we saw swarm services can be accessed via any node when using ingress port publishing. That is possible thanks to the swarm mode routing mesh.

After that, we looked at the headline architecture component: container orchestration. In that lesson we saw how to influence the placement of services on the swarm,
and we also considered rolling updates and rollbacks.

The next architecture component was consistency. Swarm mode uses the raft consensus algorithm for guaranteeing a consistent state of the swarm. Managers participate in elections and elect a single leader responsible for making changes to bring the actual swarm state to the desired state.
We examined the fault-tolerance and performance tradeoff related to the number of managers in a swarm. You should consider using 3, 5, or 7 for production workloads.
Lastly, we discussed the raft logs where cluster state is persisted.

Security was the last architecture component we looked at.
Swarm mode has many security features enabled by default including public key infrastructure and token semantics for joining members to a swarm.
Data plane communication on overlay networks is optionally encrypted using IPSec.
We also learned how you can improve swarm security by taking control of keys used for decrypting raft logs through a feature called autolocking.

Then we started getting hands-on and learned about options for setting up swarms from single-node, to mutli-node, and from on-prem to in the cloud. We then created a single-node swarm and a multi-node swarm with the help of docker machine.

Following that, we discussed node management in swarm. We demonstrated routine tasks such as promoting, demoting, labeling, and setting a node's availability to schedule jobs.

The next demo focused lesson was about service management. We saw how to create and update services using various configurations such as host and ingress routing, global and replicated services, resource and placement constraints, and updates and rollbacks.

In the last demo lesson, we explored using stacks for managing distributed applications in Docker swarm mode. Stacks are represented using Compose files and have swarm specific configuration under the deploy key.

Learning Outcomes
By taking this course, you have achieved the following learning outcomes. You are able to:
" Describe what Docker swarm mode can accomplish
" Explain the architecture of a swarm mode cluster
" Use the Docker CLI to manage nodes in a swarm mode cluster
" Use the Docker CLI to manage services in a swarm mode cluster
" Deploy multi-service applications to a swarm using stacks


Learning More
There are a few places I can recommend for learning more. Try out some of the labs, quizzes or other courses on Cloud Academy. There is more content on swarm as well as other container orchestration tools in case you want to understand the entire ecosystem.
https://cloudacademy.com

The Docker Swarm Mode docs are a great place to learn all the intricacies of swarm mode and to stay on top of release changes.
https://docs.docker.com/compose/

The Docker swarmkit GitHub repository is the ultimate place to learn about swarm mode from its source. See what features are coming next for swarm mode and learn from discussions around reported issues. Maybe even report your own or contribute to the code base.
https://github.com/docker/swarmkit


Feedback
I'm happy to hear from you. I make content for you. If you have any feedback, please get in touch with me by leaving a comment on the Comments tab below the video, by emailing support@cloudacademy.com, or by connecting with me on Twitter where my handle is @LoganRakai.

Thank you
That does it for another course here on Cloud Academy. You have developed some serious Docker swarm mode skills and should be proud of your accomplishment. Now go and do me the ultimate service by putting what you've learned here into practice. Until next time, I'm Logan Rakai with Cloud Academy.

What's that? All right, swarm twister, take us away!

About the Author

Students38382
Labs101
Courses11
Learning paths9

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.

Covered Topics