Are you new to Kubernetes? Want to build your career in Kubernetes?
Then Welcome ! You are at the right place.
This repository brings you tutorials that help you get hands-on experience using Kubernetes. Here you will find a mix of labs and tutorials that will help you, no matter if you are a beginner, SysAdmin, IT Pro or Developer. Yes, you read it correct ! Its $0 learning platform. You don't need any infrastructure. Most of the tutorials runs on Play with K8s Platform. This is a free browser based learning platform for you. Kubernetes tools like kubeadm, kompose & kubectl are already installed for you. All you need is to get started.
We recommend you start with one of our Beginners Guides, and then move to intermediate and expert level tutorials that cover most of the features of Kubernetes. For a comprehensive approach to understanding Docker, I have categorized it as shown below:
To get started with Kubernetes, follow the below steps:
- Open https://labs.play-with-k8s.com/ on your browser
Click on Add Instances to setup first k8s node cluster
git clone https://github.com/ajeetraina/kubernetes101/
cd kubernetes101/install
sh bootstrap.sh
Click on Add Instances to setup first k8s node cluster
Wait for 1 minute time till it gets completed.
Copy the command starting with kubeadm join ....
. We will need it to be run on the worker node.
Click on "Add New Instance" and paste the last kubeadm command on this fresh new worker node.
[node2 ~]$ kubeadm join --token 4f924f.14eb7618a20d2ece 192.168.0.8:6443 --discovery-token-ca-cert-hash sha256:a5c25aa4573e06a0c11b11df23c8f85c95bae36cbb07d5e7879d9341a3ec67b3```
You will see the below output:
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[preflight] Skipping pre-flight checks[discovery] Trying to connect to API Server "192.168.0.8:6443"
[discovery] Created cluster-info discovery client, requesting info from "https://192.168.0.8:6443"
[discovery] Requesting info from "https://192.168.0.8:6443" again to validate TLS against the pinned public key
[discovery] Cluster info signature and contents are valid and TLS certificate validates against pinned roots, will use API Server "192.168.0.8:6443"[discovery] Successfully established connection with API Server "192.168.0.8:6443"
[bootstrap] Detected server version: v1.8.15
[bootstrap] The server supports the Certificates API (certificates.k8s.io/v1beta1)
Node join complete:
* Certificate signing request sent to master and response
received.
* Kubelet informed of new secure connection details.
Run 'kubectl get nodes' on the master to see this machine join.
[node2 ~]$
Run the below command on master node
[node1 ~]$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
node1 Ready master 15m v1.11.3
node2 Ready <none> 1m v1.11.3
[node1 ~]$
[node1 ~]$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
node1 Ready master 18m v1.11.3
node2 Ready <none> 4m v1.11.3
node3 Ready <none> 39s v1.11.3
node4 NotReady <none> 22s v1.11.3
node5 NotReady <none> 4s v1.11.3
[node1 ~]$
[node1 ]$ kubectl get po
No resources found.
[node1 ]$ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 1h
[node1 istio]$
Day-0: What is Kubernetes? What are its components
Day-1: Getting Started with Pods, Services & Replicasets
Day-2: Kubernetes on AWS
Day-3: Kubernetes on GCP
Day-4: Kubernetes on Azure
Day-5: Kubernetes on Vagrant
Day-6: Kubernetes & Networking
Day-7: Kubernetes & Network Policy
Day-8: Kubernetes & Monitoring
Day-9: Kubernetes & Service Catalog
Day-10: Kubernetes & RBAC
Day-11: Kubernetes & Ingress
Day-12: Kubernetes and Jobs
5 Minutes to Bootstrap Kubernetes Cluster on GKE using Docker for Mac 18.03.0
Context Switching Made Easy under Kubernetes powered Docker for Mac 18.02.0
2-minutes to Kubernetes Cluster on Docker for Mac 18.01 using Swarm CLI
3 Minutes to Single Node Kubernetes cluster on Docker for Mac Platform
When Kubernetes Meet Docker Swarm for the First time under Docker for Mac 17.12 Release
A First Look at Kubernetes Integrated Docker For Mac Platform
When Moby Meet Kubernetes for the first time
How to Build Kubernetes Cluster using CRI-containerd & Moby
Getting Started with Multi-Node Kubernetes Cluster using LinuxKit