Data PRO or Pay-Per-Course
Pick a plan that right's for you!
Getting Started With Kubernetes
Kubernetes and the Cloud Ecosystem
Volumes and Storage
More on Pods and Containers
Kubernetes on AWS and Azure
kubeadm: Bootstrapping a Kubernetes Cluster on Ubuntu
The CNCF Certified Kubernetes Administrator Test
Introduction Source Code and PDFs CKA Test Prep Why Is Kubernetes So Hot Right Now? Containers vs. Virtual Machines What Is Docker? What Is Kubernetes? Quiz 1: Understanding Kubernetes in the Cloud Ecosystem Downloads
Getting Started With the GCP Setting Up A GCP Account Using The Cloud Shell An end-to-end example: Kubernetes on the GKE
How Kubernetes Works The Role of the Master Node Nodes, Kube-proxy, Kubelet What Is A Pod? Lab:Creating pods imperatively Where Do Pods Run? Can Pods Have Multiple Containers? Lab:Multi-container Pods How Do Master Nodes Communicate? Where Can We Run Kubernetes? Kubernetes for a Hybrid Multi-cloud World Cloud Controllers Interacting with Kubernetes
Lab:Creating pods declaratively Imperative or Declarative? How Declarative Files are Applied The Pros and Cons of Declarative and Imperative Object Management Names and UIDs Namespaces Labels Label Selectors Loose Coupling Annotations Lab:Deletion of pods Lab:Editing the configuration information of the deployment Lab: Scaling The Number of Pods using Deployments
Volumes Lab:Volumes and the emptydir volume Types Of Volumes Persistent_Volumes Cloud Specific Persistent Volumes Lab:Persistent Volumes Secrets, ConfigMaps and Other Volume Types Lab:Use of secrets pass information to pods Lab:Create secrets directly from files Lab: ConfigMaps
Containers in a Pod Lab:kubectl apply What Environment Do Containers See? Lab:Setting Environment Variables in Containers Lab:Downward API Passing information from pod to container How Can Containers React To Lifecycle Events? Lab:Handling Container Lifecycle Events Pod Node Matching Lab:Associating Pods with Nodes using nodeSelector Taints Lab:kubectl_taint Lab:Tolerations Init Containers Lab:Init containers Setting up the state of the pods Pod Lifecycle Container Probes Lab:Use of Liveness and Readiness Probes Lab:Liveness probes Using HTTP and TCP Pod Presets Pod Priorities
Introducing Controllers Lab:ReplicaSet object Working with ReplicaSets Lab:Deleting a ReplicaSet and its associated pods Lab:Deleting a ReplicaSet but not the associated pods ReplicaSets and Loose Coupling Horizontal Pod Autoscalers Lab:Loose coupling between ReplicaSet object and the pods Lab:Scaling a ReplicaSet object
Replication Controllers Lab:Replication controller Lab:Deleting a replication controller and the associated pods Lab:Deleting a replication controller but not its pods Lab:Loose coupling between replication controller and its pods
Deployments When Use Deployments Creating a Deployment Lab:kubectl run Create deployments imperatively Lab:YAML files for Deployment objects Rolling Back Deployment Pausing/Resuming Deployment Clean-up Policy Scaling Deployments Lab:Scaling deployments by editing the YAML config Lab:Changing the image version associated with a deployment Lab:Rolling back a deployment Lab:kubectl scale Scaling deployments imperatively Lab:Rolling Deployments
StatefulSets Lab:Statefulsets DaemonSets Run To Completion Jobs Cron Jobs Lab:Batch Processing Job Objects
Services Types of Services Service Pod Endpoint Services Without Selectors Virtual IPs Service Proxies Multi-Port Services Service Discovery Headless Services NodePort Services LoadBalancer Services External IPs DNS For Services DNS For Pods Securing Services Federated Services Ingress Objects Lab:kubectl expose Service objects Quiz 6: Services
Kubernetes on the cloud Lab: AKS - the Azure Kubernetes Service Lab: Jumping through hoops - kops and AWS Lab: Play With Kubernetes (PWK)
RBAC (Role-Based Access Control) Roles and ClusterRoles RoleBindings and ClusterRoleBindings Pod Networks and Flannel Instantiating Ubuntu VMs Bootstrapping the Master Node Configuring the Worker Nodes
The CKA Test Test Day Mechanics Curriculum and Preparation Tips
What will I learn?
- Improve their odds of succeeding at the CNCF Certified Kubernetes Administrator test
- Build and administer Kubernetes clusters - on-premise, as well as on all major cloud platforms (AWS, Azure, GCP)
- Understand and employ advanced deployment solutions using Kubernetes
- Master the important aspects of Kubernetes - pods, replicasets, deployments and services
About the course
Kubernetes is a container orchestration technology - a way to create and deploy clusters of machines running containers, usually Docker containers.
Kubernetes is also one of the hottest topics in tech today, because it is perhaps the only straightforward way to architect a hybrid, multi-cloud compute solution.
Let's parse that:
- Hybrid: This is a solution where an enterprise has a private cloud or on-premise data center, in addition to using one of the public cloud providers (such as AWS, GCP or Azure). Any firm migrating to the cloud is going to have to run a hybrid setup, at least during the migration
- Multi-cloud: This refers to the use of more than 1 cloud provider. Why is this so important? Well, because most large firms are unwilling to be completely locked into one provider, particularly after events like Amazon's acquisition of Whole Foods (that gave pause to a whole lot of potential AWS customers, who decided that 'multi-cloud' makes sense for strategic reasons)
- Only straightforward way: Most cloud providers offer a range of compute solutions, ranging from PaaS (Elastic Beanstalk, or Google App Engine) to IaaS (EC2, or Google Compute Engine VMs). The reality is that PaaS ties you down to 1 cloud provider, and IaaS is a lot of hassle, during migration and beyond.
- Kubernetes is supported by each of the Big-3: GCP has a special relationship with Kubernetes (since K8S originated at Google) but now AWS and Azure support it as well. Kubernetes has won the battle of the container orchestration systems.
This is why containers running on Kubernetes constitute the hottest compute choice for a hybrid, multi-cloud world.
Here is what this course contains:
- Docker, Kubernetes and the cloud platforms: understanding the inter-relationships
- Pods and containers: Pods are the basic building block in K8S; each pod holds one or more containers that are tightly-coupled to each other
- ReplicaSets: Higher-level abstractions that provide scaling and auto-healing (they encapsulate pods, and bring new pods back up if the old ones crash)
- Deployments: Even higher-level abstractions that provide versioning, fast rollback, rolling updates and more
- Services: Front-end abstractions (think of them as similar to load-balancers) that are loosely coupled with backend pods. Services provide a static, stable network frontend IP, as well as load-balancing
- Other K8S objects: StatefulSets, Secrets, ConfigMaps, Jobs and CronJobs and more
- CKA test tips: We don't reveal any information about the test that we should not, such as specific questions. But we do discuss the test format, what to expect, pitfalls to avoid, and strategies for success
Who should take the course?
- Cloud Architects looking to understand the compute choices on AWS, Azure and GCP
- Technical decision makers evaluating a hybrid, multi-cloud solution
- Devops professionals looking to master Kubernetes
- Anyone seeking to take and pass the CNCF Certified Kubernetes Administrator test
Pre-requisites & Requirements
- Understanding of basic computer science concepts: What an operating system and executable unit are
- Basic understanding of cloud computing would help, but is not required
- Basic understanding of what a container is would help, but is not required