Skip to content
tezvyn:

Docker & Kubernetes

Containers, Helm, orchestration, service mesh

45 bites

Test yourself: Top 30 advanced Docker & Kubernetes concepts questionsMultiple choice, with the correct answer and why it is correct on every question. Free, no sign-in.

Advanced concepts in Docker & Kubernetes, page 2

kube-proxy: The Plumber for Kubernetes Services
advanced2 min read

kube-proxy: The Plumber for Kubernetes Services

kube-proxy is the network plumber on each node, making Kubernetes Services work. It translates a Service's virtual IP into routes to real pods using iptables or IPVS. The name is a footgun: it's a Layer 4 packet forwarder, not a Layer 7 application proxy.

advanced2 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.

advanced2 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.

advanced2 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.

Kubernetes Volume Snapshots: A Save Point for Data
advanced2 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.

Pod Priority: Deciding Who Gets Evicted in Kubernetes
advanced2 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.

Kubernetes CPU Management: Static vs. None Policy
advanced2 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.

Kubernetes Scheduler Framework: A Plugin System for Pod Placement
advanced2 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.

K8s Authentication: Proving Who You Are to the API Server
advanced2 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.

Kubernetes API Server Authorization Modules
advanced2 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."

Kubernetes Audit Logging: Your Cluster's Black Box Recorder
advanced2 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.

Falco: Real-Time Threat Detection for Cloud-Native
advanced2 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.

PromQL: Querying Time Series Data as Vectors
advanced2 min read

PromQL: Querying Time Series Data as Vectors

PromQL treats metrics as vectors of values over time, letting you slice and aggregate system state. It's used for Grafana dashboards and Alertmanager rules. The footgun: applying rate() to a gauge instead of a counter produces silent, nonsensical results.

Prometheus Alertmanager: Taming Your Alert Storms
advanced2 min read

Prometheus Alertmanager: Taming Your Alert Storms

Alertmanager is the traffic controller for your Prometheus alerts, turning a potential flood into actionable notifications. It groups, deduplicates, and routes alerts to services like PagerDuty. The footgun: don't load balance traffic to an HA cluster.

advanced2 min read

OpenTelemetry

OpenTelemetry is a CNCF standard for generating, collecting and exporting traces, metrics and logs from your services using one vendor neutral set of APIs and SDKs, so you can switch observability backends without rewriting instrumentation code.

Service Mesh Observability: Seeing Inside the Black Box
advanced2 min read

Service Mesh Observability: Seeing Inside the Black Box

A service mesh provides observability by intercepting all service-to-service traffic. It automatically generates logs, metrics, and traces, helping you debug distributed systems without changing application code.

advanced2 min read

Helm Subcharts: Composing Applications from Dependencies

Helm subcharts are nested components a parent chart can configure, like a docker-compose for Kubernetes manifests. Use them to bundle dependencies like a database with your app. The footgun: subcharts are sandboxed and cannot access parent values directly.

advanced2 min read

Helm Hooks: Running Operations During a Release

Helm Hooks are Kubernetes resources that run at specific moments in a release lifecycle. Use them to run a database migration before an app upgrade or to back up data before a deletion. The footgun: a failing hook Job will block and fail the entire.

advanced2 min read

Argo CD Sync Phases and Waves: Ordering Your Deployments

Argo CD Sync Phases and Waves are a recipe for ordering deployments. Use them for complex apps where a database migration must run pre-sync. The footgun: a single failed resource in a wave halts the entire sync process, making it brittle if overused.

Flux Image Update Automation: Closing the GitOps Loop
advanced2 min read

Flux Image Update Automation: Closing the GitOps Loop

Flux's image update automation acts like a bot that watches your container registry. It finds new image tags that match your policies (like semver) and automatically commits the change back to your Git repository, triggering a deployment.

We are hiring for this. Every open role lists the topics its interview covers, so you can prepare for the real thing rather than guessing.

See open roles