Full Table of Contents An introduction to Kubernetes Why use Kubernetes Components of Kubernetes Control Plane (or Master Node) etcd API Server Scheduler Kube-Controller Manager Cloud-Controller Manager Worker Node Kubelet Kube-proxy Addons Container Network Interface DNS Ingress Controller UI Logging Monitoring Kubernetes Resources Basic Resources Pod Namespace Applications Deployment ReplicaSet StatefulSet DaemonSet Configuration ConfigMap Secret Batch Processes Jobs Cronjobs Networking Service Ingress Endpoints Storage PersistentVolumeClaim PersistentVolume StorageClass Volumes Other Resources ServiceAccount Role ClusterRole RoleBinding ClusterRoleBinding CustomResourceDefinition ResourceQuota LimitRange HorizontalPodAutoscaler NetworkPolicy PodSecurityPolicy PodDisruptionBudget Step by Step Tutorial Cluster Setup Creating a Pod Creating a Deployment Making Your Deployment Accessible Exposing Ports Communication within a Pod Communication between Pods Services Ingress Injecting Configuration Using ConfigMaps Using Secrets TLS Secret Docker Credentials Opaque Secrets Secrets from Files Back to Using Secrets Persisting Data Maintaining Application and Cluster Health Reacting to losing a Node Replicas Blue-Green Deployments Resource Management Quality of Service Health Checks Summary Extended Tutorial Updating Resources Editing Resources Patching Resources Using HorizontalPodAutoscalers Custom Metrics