169 cards
Kubernetes workloads are built from a small set of composable building blocks. The foundational unit is the Pod, which represents a single instance of a running process and may contain one or more containers that share a network namespace, storage volumes, and a common lifecycle. Multiple containers in a Pod are useful...
Pods come and go with their changing IP addresses, so Kubernetes abstracts them behind Services, which define a logical set of Pods and a stable access policy. A Service uses label selectors to match Pods and provides a stable IP, DNS name, and load balancing. The default ClusterIP type exposes the Service only inside...
Applications need configuration and data, and Kubernetes offers dedicated primitives for both. ConfigMaps store non-confidential key-value pairs that Pods consume as environment variables, command-line arguments, or mounted files, while Secrets hold sensitive material such as passwords, tokens, and TLS certificates. Se...
Kubernetes offers fine-grained control over where Pods run and how many resources they consume. The scheduler selects an optimal node for each new Pod based on resource requests, affinity and anti-affinity rules, taints and tolerations, node selectors, and topology spread constraints. Taints applied to nodes repel Pods...
A Kubernetes cluster is divided into a control plane that makes global decisions and worker nodes that actually run workloads. The control plane runs the kube-apiserver as its front-end and the only component that talks directly to etcd, which is a distributed consistent key-value store using the Raft consensus algorit...
Kubernetes security spans authentication, authorization, admission control, runtime hardening, and network segmentation. Authorization is governed by Role-Based Access Control through four objects: Roles grant permissions within a specific namespace, ClusterRoles grant cluster-wide permissions or apply to non-namespace...
The kubectl command-line tool is the primary interface to the Kubernetes API, and a working knowledge of its verbs and flags is essential. kubectl get lists resources, with flags like -A for all namespaces, -o wide for additional columns such as node and IP, -o yaml or -o json for full output, --show-labels for inspect...