<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kubernetes on Luke Hebert</title><link>https://lukehebert.com/tag/kubernetes/</link><description>Recent content in Kubernetes on Luke Hebert</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 23 Aug 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://lukehebert.com/tag/kubernetes/index.xml" rel="self" type="application/rss+xml"/><item><title>Enable Kubelet Certificates in Kubernetes if you forgot.</title><link>https://lukehebert.com/post/enable-kubelet-serving-certificates-in-kubernetes-if-you-did-not-do-so-during-cluster-deployment-metric-server/</link><pubDate>Sat, 23 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/enable-kubelet-serving-certificates-in-kubernetes-if-you-did-not-do-so-during-cluster-deployment-metric-server/</guid><description>Enables kubelet TLS bootstrapping so the controller-manager issues proper serving certificates, resolving the x509 certificate validation error in metrics-server. Covers deployment edits, controller-manager configuration, and automated certificate renewal.</description></item><item><title>Installing Kubernetes the Hard Way</title><link>https://lukehebert.com/post/update-kubernetes-the-hard-way/</link><pubDate>Thu, 21 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/update-kubernetes-the-hard-way/</guid><description>A guide to building a Kubernetes cluster manually, component by component, without kubeadm or minikube. This approach provides a deep understanding of how Kubernetes works under the hood and prepares you for both certification exams and day-to-day operations.</description></item><item><title>CNI Plugin Binaries and Configs</title><link>https://lukehebert.com/post/cni-plugin-binaries-configs/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/cni-plugin-binaries-configs/</guid><description>Catalogs the active Flannel CNI configuration and the full set of 19 available CNI plugin binaries on a Kubernetes node. Provides file sizes, modification dates, and the purpose of each installed plugin.</description></item><item><title>CNIs and the CKA Exam</title><link>https://lukehebert.com/post/important-note-about-cni-and-cka-exam/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/important-note-about-cni-and-cka-exam/</guid><description>Clarifies which CNI plugins are acceptable for the CKA exam and explains why the official Kubernetes documentation avoids vendor-specific deployment commands.</description></item><item><title>CoreDNS</title><link>https://lukehebert.com/post/coredns/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/coredns/</guid><description>Set up a dedicated server as a DNS server using CoreDNS, covering binary installation, server startup, and IP-to-hostname mapping via the hosts plugin. CoreDNS also supports extensibility through plugins, including one for Kubernetes.</description></item><item><title>Gateway API</title><link>https://lukehebert.com/post/gateway-api/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/gateway-api/</guid><description>Gateway API is a Kubernetes add-on that provides dynamic infrastructure provisioning and advanced traffic routing through an extensible, role-oriented configuration mechanism. It organizes traffic handling around three stable API kinds: GatewayClass, Gateway, and HTTPRoute.</description></item><item><title>Ingress and Ingress Controllers</title><link>https://lukehebert.com/post/ingress-and-ingress-controllers/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/ingress-and-ingress-controllers/</guid><description>An overview of Kubernetes Ingress resources and the controllers that fulfill them, covering terminology, creation, and prerequisites.</description></item><item><title>Ingress Annotations and Rewrite Target</title><link>https://lukehebert.com/post/ingress-annotations-and-rewrite-target/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/ingress-annotations-and-rewrite-target/</guid><description>Explains how the rewrite-target annotation in the NGINX Ingress controller maps user-facing URL paths to backend services, preventing 404 errors. Includes examples of simple and regex-based rewrites.</description></item><item><title>Kubernetes DNS: How Pods Talk (When They Actually Do)</title><link>https://lukehebert.com/post/understanding-how-pods-talk-in-kubernetes-networks-dns/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/understanding-how-pods-talk-in-kubernetes-networks-dns/</guid><description>A deep dive into how Kubernetes DNS resolves service names to IP addresses, covering A records, SRV records, search domains, and the full lookup path from pod to CoreDNS. Understanding this lifecycle is essential for debugging connectivity issues and designing resilient microservice architectures.</description></item><item><title>Kubernetes Gateway API: A Practical Guide Using NGINX (2025)</title><link>https://lukehebert.com/post/practical-guide-to-gateway-api-2025/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/practical-guide-to-gateway-api-2025/</guid><description>A practical walkthrough of the Kubernetes Gateway API using the NGINX Gateway Controller, covering HTTP routing, TLS termination, traffic splitting, and multi-protocol support. The concepts are implementation-agnostic and apply across any Gateway API-compatible controller.</description></item><item><title>Kubernetes Internal DNS (Search Base)</title><link>https://lukehebert.com/post/kubernetes-internal-dns-search-base/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-internal-dns-search-base/</guid><description>Kubernetes provides a built-in DNS service that assigns predictable names to Services and Pods within a cluster. By default, pods use cluster.local as their search base for internal DNS resolution, enabling communication through human-readable names rather than ephemeral IP addresses.</description></item><item><title>Kubernetes Kustomize</title><link>https://lukehebert.com/post/kubernetes-kustomize/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-kustomize/</guid><description>Kustomize is a native Kubernetes configuration management tool that enables declarative, template-free customization of Kubernetes objects using YAML files. It supports hierarchical base-and-overlay structures, targeted patches, and built-in generation of ConfigMaps and Secrets.</description></item><item><title>Kubernetes Ports and Protocols</title><link>https://lukehebert.com/post/kubernetes-networking/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-networking/</guid><description>An overview of the ports and protocols required by Kubernetes control plane and worker nodes. Includes guidance on overriding default port configurations in strict network environments.</description></item><item><title>Network Namespaces (Virtual Network)</title><link>https://lukehebert.com/post/network-namespaces-virtual-network/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/network-namespaces-virtual-network/</guid><description>Network namespaces provide the foundation for container network isolation in Docker and Kubernetes. This guide covers listing, creating, and linking namespaces, bridging, NAT, and how Docker and Kubernetes build on these primitives.</description></item><item><title>Nginx Ingress Controller</title><link>https://lukehebert.com/post/nginx-ingress-controller/</link><pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/nginx-ingress-controller/</guid><description>A practical guide to installing and configuring the Ingress-Nginx Controller in Kubernetes, covering Helm and kubectl methods, cloud-provider annotations, and local testing workflows.</description></item><item><title>Using Persistent Volume Claims in a Pod (PVC)</title><link>https://lukehebert.com/post/using-persistent-volume-claims-in-a-pod-pvc/</link><pubDate>Mon, 18 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/using-persistent-volume-claims-in-a-pod-pvc/</guid><description>This guide explains how Persistent Volumes and Persistent Volume Claims work together in Kubernetes and shows how to reference a PVC inside a Pod definition. It also covers access modes and the difference between static and dynamic provisioning.</description></item><item><title>Basic (CSV) Authentication to the API Server</title><link>https://lukehebert.com/post/basic-csv-authentication-to-the-api-server/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/basic-csv-authentication-to-the-api-server/</guid><description>Configure HTTP basic authentication on a kubeadm-managed Kubernetes cluster using a CSV credentials file. Covers mounting the file into kube-apiserver, defining RBAC roles, and verifying access with curl.</description></item><item><title>K8s Impersonation: Stepping Into Someone Else's Pods</title><link>https://lukehebert.com/post/user-impersonation/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/user-impersonation/</guid><description>Learn how Kubernetes administrators can verify permissions and impersonate other users using kubectl auth can-i and the &amp;ndash;as flag.</description></item><item><title>Kubectx and Kubens</title><link>https://lukehebert.com/post/kubectx-and-kubens/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubectx-and-kubens/</guid><description>Kubectx and kubens are lightweight CLI tools that simplify switching between Kubernetes clusters and namespaces. This guide covers installation and basic usage for both tools.</description></item><item><title>Kubernetes Secrets: Safety and Best Practices</title><link>https://lukehebert.com/post/encrypting-secrets/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/encrypting-secrets/</guid><description>Kubernetes Secrets use base64 encoding rather than true encryption, so their safety depends on surrounding practices like encryption at rest and access controls. This post covers best practices, built-in protections, and alternatives like Helm Secrets or HashiCorp Vault.</description></item><item><title>Kubernetes TLS Check List</title><link>https://lukehebert.com/post/kubernetes-tls-check-list/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-tls-check-list/</guid><description>A practical checklist covering X.509 certificate requirements for Kubernetes nodes, users, and the API server. Includes deployment methods, cert-manager workflows, and Extended Key Usage configuration.</description></item><item><title>Network Policies</title><link>https://lukehebert.com/post/network-policies/</link><pubDate>Sat, 16 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/network-policies/</guid><description>A practical guide to Kubernetes Network Policies, covering how Ingress and Egress rules work, AND/OR logic in rule layout, and the behavior of policyTypes.</description></item><item><title>Backing Up etcd</title><link>https://lukehebert.com/post/backing-up-etcd/</link><pubDate>Wed, 13 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/backing-up-etcd/</guid><description>A practical guide to backing up and restoring the etcd key-value database in a Kubernetes cluster. Covers snapshot-based and file-based backup methods, integrity checks, and static pod manifest updates.</description></item><item><title>Upgrading a K8 Cluster</title><link>https://lukehebert.com/post/upgrading-a-cluster/</link><pubDate>Wed, 13 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/upgrading-a-cluster/</guid><description>A step-by-step guide to upgrading a Kubernetes cluster using kubeadm, covering control plane and worker node upgrades. Includes the full sequence from version planning through final verification.</description></item><item><title>Creating a TLS Secret in Kubernetes</title><link>https://lukehebert.com/post/creating-a-tls-secret-in-kubernetes/</link><pubDate>Tue, 12 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/creating-a-tls-secret-in-kubernetes/</guid><description>Create a TLS secret from a certificate and key pair, then deploy a webhook server that mounts that secret to serve HTTPS on port 8443.</description></item><item><title>Kubernetes Resource Management</title><link>https://lukehebert.com/post/kubernetes-resource-management/</link><pubDate>Mon, 11 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-resource-management/</guid><description>A practical guide to configuring CPU, memory, and storage requests and limits in Kubernetes, covering container-level, Pod-level, and namespace-level resource controls. Includes troubleshooting steps for common scheduling and OOM issues.</description></item><item><title>Pod Node Assignment &amp; Manual Scheduling</title><link>https://lukehebert.com/post/manually-scheduling-pods/</link><pubDate>Mon, 11 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/manually-scheduling-pods/</guid><description>Learn how to assign Kubernetes pods to specific nodes at creation time and how to reassign running pods using Binding objects. Covers scheduler behavior and common pitfalls that leave pods stuck in Pending state.</description></item><item><title>JSON Path</title><link>https://lukehebert.com/post/json-path/</link><pubDate>Sun, 10 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/json-path/</guid><description>A practical guide to JSON Path syntax, operators, and filters, with hands-on examples for extracting data from JSON documents and Kubernetes resources via kubectl.</description></item><item><title>Useful JsonPath Queries for Kubernetes</title><link>https://lukehebert.com/post/useful-json-path-queries-for-kubernetes/</link><pubDate>Sun, 10 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/useful-json-path-queries-for-kubernetes/</guid><description>A practical guide to kubectl JsonPath expressions for extracting, formatting, and combining Kubernetes resource fields. Covers core patterns, array indexing, literal strings, and when to reach for jq instead.</description></item><item><title>Kubernetes EFS Storage (IAM Role)</title><link>https://lukehebert.com/post/kubernetes-efs-storage-iam-role/</link><pubDate>Sat, 09 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-efs-storage-iam-role/</guid><description>A practical guide to provisioning EFS filesystems and wiring them into Kubernetes via the AWS EFS CSI driver, IAM roles, and standard storage manifests. Covers StorageClass, PVCs, Deployments, and StatefulSets for shared, elastic storage.</description></item><item><title>S3 Identity Shift: Leveling Up to IAM Roles in K8s</title><link>https://lukehebert.com/post/kubernetes-s3-storage-iam-role/</link><pubDate>Sat, 09 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-s3-storage-iam-role/</guid><description>A practical guide to mounting S3 buckets as volumes in Kubernetes pods using the AWS S3 CSI driver, including IAM role setup, StorageClass configuration, and deployment examples.</description></item><item><title>Static Keys: S3 Vault Hunters: Hardcoding AWS Keys in K8s</title><link>https://lukehebert.com/post/kubernetes-s3-storage-access-key-secrete-key/</link><pubDate>Sat, 09 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-s3-storage-access-key-secrete-key/</guid><description>A guide to deploying S3 object storage in Kubernetes using the AWS S3 CSI driver, covering credential setup, StorageClass definition, PVC creation, and volume mounting in pods and deployments.</description></item><item><title>Helm Templates: A Practical Reference</title><link>https://lukehebert.com/post/helm-template-cheat-sheet/</link><pubDate>Fri, 08 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/helm-template-cheat-sheet/</guid><description>A comprehensive cheatsheet covering essential Helm template functions, syntax, and patterns for writing and debugging chart templates. Use it as a quick lookup while building or troubleshooting Helm charts.</description></item><item><title>Helm: A Practical Reference Guide</title><link>https://lukehebert.com/post/helm-usage-cheatsheet/</link><pubDate>Fri, 08 Aug 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/helm-usage-cheatsheet/</guid><description>A quick-reference guide covering Helm repository management, chart installation, release management, and common deployment workflows. Use this as a day-to-day cheat sheet for working with Helm in Kubernetes environments.</description></item><item><title>kubectl Quick Reference for Kubernetes</title><link>https://lukehebert.com/post/kubectl-quick-reference-kubernetes/</link><pubDate>Tue, 15 Jul 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubectl-quick-reference-kubernetes/</guid><description>A quick reference covering commonly used kubectl commands, flags, and workflows for managing Kubernetes resources. Topics range from shell autocomplete and cluster contexts to creating, viewing, updating, and deleting resources.</description></item><item><title>Kubernetes Cluster Components</title><link>https://lukehebert.com/post/kubernetes-cluster-components/</link><pubDate>Thu, 29 May 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-cluster-components/</guid><description>An overview of the key components that make up a Kubernetes cluster, covering both the control plane and worker nodes. Understanding these pieces is essential for operating and troubleshooting a Kubernetes environment.</description></item><item><title>Kubernetes Deployment Scheduler Sequence</title><link>https://lukehebert.com/post/kubernetes-deployment-scheduler-sequence/</link><pubDate>Thu, 29 May 2025 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/kubernetes-deployment-scheduler-sequence/</guid><description>A time sequence diagram walks through the sequential steps of pod scheduling in Kubernetes, from the initial kubectl command to the kubelet reporting status back to the API server. The diagram simplifies concurrent control plane and worker node processes into a clear, ordered flow.</description></item><item><title>Docker/Kubernetes Network Diagnostic Tools</title><link>https://lukehebert.com/post/docker-kubernetes-network-diagnostic-tools/</link><pubDate>Mon, 26 Aug 2024 00:00:00 +0000</pubDate><guid>https://lukehebert.com/post/docker-kubernetes-network-diagnostic-tools/</guid><description>A practical guide to using the netshoot container for Docker and Kubernetes network troubleshooting. Covers network namespaces, tcpdump examples, and real-world diagnostic workflows.</description></item></channel></rss>