Overview of Kuberentes
Deploying Containerized Applications to Kubernetes
The Kubernetes Ecosystem
The course is part of these learning paths
Kubernetes is a production-grade container orchestration system that helps you maximize the benefits of using containers. Kubernetes provides you with a toolbox to automate deploying, scaling, and operating containerized applications in production. This course will teach you all about Kubernetes including what it is and how to use it.
This course is paired with an Introduction to Kubernetes Playground lab that you can use to follow along with the course using your own Kubernetes cluster. The lab creates a Kubernetes cluster for you to use as we perform hands-on demos in the course. All of the commands that are used in the course are included in the lab to make it easy to follow along.
The source files used in this course are available in the course's GitHub repository.
- Describe Kubernetes and what it is used for
- Deploy single and multiple container applications on Kubernetes
- Use Kubernetes services to structure N-tier applications
- Manage application deployments with rollouts in Kubernetes
- Ensure container preconditions are met and keep containers healthy
- Learn how to manage configuration, sensitive, and persistent data in Kubernetes
- Discuss popular tools and topics surrounding Kubernetes in the ecosystem
This course is intended for:
- Anyone deploying containerized applications
- Site Reliability Engineers (SREs)
- DevOps Engineers
- Operations Engineers
- Full Stack Developers
You should be familiar with:
- Working with Docker and be comfortable using it at the command line
August 27th, 2019 - Complete update of this course using the latest Kubernetes version and topics
Course GitHub repository: https://github.com/cloudacademy/intro-to-k8s
Introduction to Kubernetes Playground Lab: https://cloudacademy.com/lab/introduction-kubernetes-playground/
Docker Desktop for Mac or Windows: https://www.docker.com/products/docker-desktop
Kubernetes in Docker: https://github.com/kubernetes-sigs/kind
Welcome to the Introduction to Kubernetes Course! Kubernetes is a production-grade container orchestration system that helps you maximize the benefits of using containers. Kubernetes provides you with a toolbox to automate deploying, scaling, and operating containerized applications in production. This course will teach you all about Kubernetes including what it is and how to use it.
Before we get into it, allow me to introduce myself. I'm Logan Rakai and I'll be your trainer for this course. I'm a content researcher and developer here at Cloud Academy. I have been involved in software research and development since 2007 and I've been working in the cloud since 2012. I'm a Certified Kubernetes Application Developer and a Certified Kubernetes Administrator. You can connect with me on LinkedIn or on Twitter.
This course is for anyone deploying containerized applications. It is especially useful if you have an existing system and are evaluating deployment options. Container orchestration skills are relevant for Site Reliability Engineers, Operations Engineers, and other DevOps type roles. The course is also beneficial for anyone building their full stack portfolio.
In this course we will cover three main topics. The first is an overview of Kuberentes. These lessons will explain more about what Kubernetes is, why it has been so successful, and how you can start using it for your own container application needs.
The second main topic is deploying containerized applications to Kubernetes. We will get hands on with Kubernetes in these lessons. We'll learn how to deploy a microservice application to kubernetes in a sequence of lessons that build upon each other to make the application more and more production worthy. I've made it as easy as possible to follow along with me at each step of the way. All of the source files I use are available at the courses GitHub repository but I've gone a step farther and made an Introduction to Kubernetes Playground lab here on Cloud Academy. The lab is an exact copy of the environment I used in the production of this course. You don't need to worry about installing anything or freeing up system resources. Just start the lab and you can follow along and get hands-on experience deploying containers on Kubernetes. I've also copied the commands I use into the lab instructions in case you need them.
The third main topic is a relatively short one on the Kubernetes ecosystem. There is so much going on around Kubernetes that I want to highlight a few topics that I think are worth getting a bit of early exposure to. They might help you somewhere along your journey with Kubernetes and I want you to get a sense of the vibrant ecosystem that is in place.
Let's identify our concrete learning objectives. After completing this course you will be able to describe Kubernetes and what it is used for, deploy single and multiple container applications on Kubernetes, use Kubernetes services to structure N-tier applications, manage application deployments with rollouts in Kubernetes, ensure container preconditions are met and keep containers healthy, learn how to manage configuration, sensitive, and persistent data in Kubernetes, discuss popular tools and topics surrounding Kubernetes in the ecosystem
To get the most from this course you should have experience working with Docker and be comfortable using it at the command line. Try out some of the introductory Docker courses, labs and learning paths here on Cloud Academy if you need to before diving into Kubernetes. You will also benefit from understanding the YAML file format although you can still follow along and pick it up as we go. As I mentioned, you can follow along with the course examples, and I'd encourage you to. The Introduction to Kubernetes Playground lab is made specifically for you to follow along. It's what I'm using for the demos in this course. I'd recommend you start the Lab after this lesson so everything will be ready to use when we get to the first hands-on lesson. However, you can use any Kubernetes cluster you have access to including clusters you can run locally, for example using Docker Desktop for Mac or Windows, minikube or Kubernetes in Docker or K in D.
I'm happy to hear from you. I make content for you and I want it to be as good as it can be. Please give the course a rating and send along your feedback when you're finished.
Now let's get to it. We'll begin with an overview of what Kubernetes is and what it can do in the next lesson.
About the Author
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.