Skip to content
tezvyn:

Kubernetes

293 bites tagged Kubernetes — interview questions with model answers, and 60-second explainers.

Docker & Kubernetes2 min read

Kubernetes Events: The Cluster's Short-Term Memory

Think of Kubernetes Events as a cluster's temporary log, recording state changes like a Pod starting or a container failing. Use them with `kubectl describe` to debug issues in real-time.

Docker & Kubernetes2 min read

The Three Pillars of Observability

Observability isn't one tool; it's a three-legged stool of metrics, logs, and traces. Metrics give the 'what' (CPU is high), logs the 'why' (an error loop), and traces the 'where' (which service is slow). The footgun is treating them as separate silos.

Docker & Kubernetes2 min read

Falco: Real-Time Threat Detection for Cloud-Native

Falco is a runtime security camera, watching Linux syscalls to detect threats in real time. It's used in Kubernetes to spot abnormal behavior like privilege escalation or writing to /etc. The key is it only *detects* and *alerts*; it doesn't block threats.

Docker & Kubernetes2 min read

Kubernetes Audit Logging: Your Cluster's Black Box Recorder

Kubernetes audit logging is the security camera for your API server, recording every API call to answer "who did what, and when?". It's essential for security forensics and compliance, but a common footgun is using a weak default or logging everything.

Docker & Kubernetes2 min read

Kubernetes API Server Authorization Modules

Kubernetes API server authorization is like a chain of security guards. A request must get a "yes" from at least one configured module (like RBAC) to pass. This is fundamental to securing any cluster. The footgun is that the chain stops at the first "allow."

Docker & Kubernetes2 min read

K8s Authentication: Proving Who You Are to the API Server

The K8s API Server is a vault door; authentication is proving your identity to the guard. It tries a chain of methods—like OIDC for users or tokens for pods—until one succeeds. The footgun: unauthenticated requests become `system:anonymous`, a major risk.

Docker & Kubernetes2 min read

Kubernetes Admission Controllers: The API's Gatekeepers

Think of admission controllers as bouncers for your Kubernetes API. They intercept requests before objects are saved, enforcing custom policies like security rules or required labels. The footgun: a broken controller can block all changes to your cluster.

Docker & Kubernetes2 min read

Pod Security Admission: Kubernetes' Built-in Guardrails

Think of Pod Security Admission (PSA) as a bouncer for your namespaces, enforcing security rules before pods can run. It applies security standards (`Privileged`, `Baseline`, `Restricted`) via simple labels.

Docker & Kubernetes1 min read

Pod Security Standards: A Security Checklist for Pods

Pod Security Standards are a built-in security checklist for your pods. You apply a level (`Restricted`, `Baseline`, `Privileged`) to a namespace to prevent risky configurations like running as root.

Docker & Kubernetes2 min read

Pod Security Context: Set Security Rules for Pods

A Pod Security Context defines security settings for all containers in a Pod, like setting permissions for a user group before adding users. Use it to enforce non-root execution or manage shared volume permissions.

Docker & Kubernetes2 min read

Kubernetes RBAC: Roles vs. ClusterRoles

Think of Kubernetes RBAC Roles as permissions for a single room (a Namespace), while ClusterRoles grant access to the entire building (the cluster). Use Roles for namespaced apps and ClusterRoles for admin tasks.

Docker & Kubernetes2 min read

Kubernetes Scheduler Framework: A Plugin System for Pod Placement

The Kubernetes Scheduler Framework is a plugin pipeline for pod placement. Use it to add custom logic—like co-scheduling ML jobs or avoiding specific nodes—without forking Kubernetes. The footgun: a slow plugin can bottleneck your entire cluster's scheduling.

Docker & Kubernetes2 min read

Kubernetes CPU Management: Static vs. None Policy

K8s CPU policies control if your pod gets a dedicated CPU core or just a time-slice of a shared one. The default `none` policy maximizes utilization, while `static` gives exclusive cores to latency-sensitive apps.

Docker & Kubernetes2 min read

Pod Priority: Deciding Who Gets Evicted in Kubernetes

Pod Priority is a VIP pass for your critical workloads, telling the scheduler which pods can bump others off a node. This ensures system-critical services run even on a full cluster. The footgun: high-priority pods can cause cascading evictions if not planned.

Docker & Kubernetes2 min read

Kubernetes LimitRange: Setting Guardrails for Pod Resources

LimitRange acts like a bouncer for Pod resources, setting min/max CPU and memory rules for each Pod in a namespace. It's used to prevent resource hogging and apply sensible defaults.

Docker & Kubernetes2 min read

Node Affinity: Tell Your Pods Where to Go

Node affinity is like giving pods a 'preferred seating' list for nodes. You guide the scheduler to nodes with specific labels, like those with GPUs or in a certain zone. The footgun is confusing 'required' (a hard rule) with 'preferred' (a suggestion).

Docker & Kubernetes2 min read

Kubernetes Taints and Tolerations: Repelling Pods

Taints act like 'No Trespassing' signs on Kubernetes nodes, repelling pods. Tolerations are the keys that let specific pods ignore those signs. Use this to reserve nodes for special hardware or critical workloads, preventing general pods from landing there.

Docker & Kubernetes2 min read

Kubernetes Volume Snapshots: A Save Point for Data

A Volume Snapshot is a point-in-time copy of your persistent data in Kubernetes, like a game save. Use it to back up a database before an upgrade or clone a prod environment. The footgun: it's not a true backup; a storage failure can lose both.

Docker & Kubernetes2 min read

Container Storage Interface (CSI): The Universal Adapter for K8s Storage

CSI is a universal adapter for storage in Kubernetes, letting any storage system speak a common language. This allows providers to create plugins for their systems without touching core Kubernetes code.

Docker & Kubernetes2 min read

Dynamic Volume Provisioning: Storage on Demand

Dynamic Volume Provisioning lets you request storage by its type (e.g., "fast-ssd") instead of pre-provisioning a disk. Kubernetes automatically creates a matching volume. This is standard for stateful apps.

Docker & Kubernetes2 min read

Kubernetes StorageClass: A Menu for Your Data

A StorageClass is an admin-defined 'menu' of storage options, abstracting the provider. Developers request storage by name (e.g., 'fast-ssd') via a PersistentVolumeClaim, and Kubernetes dynamically provisions it.

Docker & Kubernetes2 min read

PersistentVolumeClaim: How Pods Request Storage

A PersistentVolumeClaim (PVC) is a request for storage, like a claim check for a storage locker. Pods use it to mount durable storage for databases or file uploads. The footgun: a PVC is just a request; a matching PersistentVolume must exist to fulfill it.

Docker & Kubernetes2 min read

Sealed Secrets: Safely Commit K8s Secrets to Git

Sealed Secrets lets you commit encrypted Kubernetes secrets to a public Git repo. In a GitOps workflow, this allows all configuration to live in version control. The footgun: a SealedSecret is a one-way street; only the target cluster can decrypt it.

Docker & Kubernetes2 min read

External Secrets Operator: Sync Secrets into Kubernetes

Treat your cloud's secret manager as the source of truth. The External Secrets Operator (ESO) fetches secrets from external APIs like AWS Secrets Manager or Vault and injects them into native Kubernetes Secrets, keeping them in sync.

Get Kubernetes bites daily.

Five a day, five minutes, offline. With quizzes so it sticks.

Open testing — you’ll join as an early tester.