Introduction to Kubernetes
Managing distributed applications
Topic: System Administration
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 acquired by Bitnami. An avid blogger he enjoys spreading the word about new cutting edge technologies . 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)