Introduction to Kubernetes
Managing distributed applications
If your company is about to embrace containers and develop microservices-type applications, this course will get you started. You’ll get a hands-on tour of Kubernetes core concepts covering installation, configuration, and the API resources to use for your containerized applications. You’ll learn how you can use Kubernetes primitives to build a distributed application that can scale and make efficient use of containers.
As the course comes to a close, you’ll have a clear understanding of how to take your container images to production, build a complex distributed application, and manage it in your data-center. In short, you’ll be well positioned to usher your company into the world of containers.
What you'll learn-and how you can apply it
By the end of this live, hands-on, online course, you’ll understand:
- The Kubernetes cluster architecture
- Basics of Kubernetes installation
- The API resources and endpoints
- How to interact with a Kubernetes cluster using kubectl
- How to use the Kubernetes primitives to build a scalable containerized application
And you’ll be able to:
- Interact with a Kubernetes cluster using the API and the kubectl CLI
- Build distributed applications using the core API resources
- Explore all the Kubernetes primitives and understand how they will integrate with their enterprise workflow and processes.
- Perform rolling-updates and rollbacks of your applications
- Expose your applications using Kubernetes services
- Monitor your cluster using Prometheus
This training course is for you because...
- You’re an application developer and want to understand how to prepare your containerized application for Kubernetes.
- You’re an application developer who is building Docker images and want to learn how to use those images in Kubernetes.
- You’re an application developer and want to understand the Kubernetes core API objects to configure your application
- You’re a system administrator and want to understand how to manage containerized applications in a cluster.
- You’re a system administrator and want to run system daemons in your cluster like the same way you manage end-user application.
- You’re a system administrator and want to understand how to monitor and collect logs in a Kubernetes cluster.
- Install minikube
- Install kubectl
- Create a deployment with
kubectl run ghost --image=ghost
- Scale that deployment, check the Pods
kubectl --helpwhat can you do ?
About your instructor
Sebastien Goasguen is a twenty year open source veteran. A member of the Apache Software Foundation, he worked on Apache CloudStack and Libcloud for several years before diving into the container world. He is the founder of Skippbox, a Kubernetes startup that develops open source tools for Kubernetes users. An avid blogger he enjoys spreading the word about new cutting edge technologies and also trains developers and sysadmins on all things Docker and Kubernetes. Sebastien is the author of the O’Reilly Docker Cookbook and 60 Recipes for Apache CloudStack.
The timeframes are only estimates and may vary according to how the class is progressing
- Kubernetes intro (history, lineage, web resources)
- Minikube (installation, basic usage, relation to other k8s deployment)
- Using kubectl (interact with your Kubernetes cluster, introduce basic primitives: pods, deployments, replica set, services)
- API resources and specification (json/yaml manifests)
- Labels (the why and how about labels)
- Services (how to expose applications to internet, service types, DNS)
- Scaling, rolling updates and rollbacks
- Ingress controllers (another way to expose apps using Ingress resources)
- Volumes (define volumes in Pods)
- DaemonSets (for admins who want to run system daemons via k8s)
- Third-party resources (and why they're important)
- Python client (custom controller 101, write a basic controller in Python)