Chris's Cloud Blog

Thoughts, stories and ideas — in English

Latest Posts

49 posts

Why the 'Noisy Neighbor' Problem Is Inevitable in Kubernetes

Why the 'Noisy Neighbor' Problem Is Inevitable in Kubernetes

1. Why does the 'noisy neighbor' problem inevitably occur? The core of Kubernetes operations is Resource Sharing. But sharing inevitably leads to Contention. - The causal chain: 1. Multiple pods are placed on a single physical node (Bin Packing) to reduce costs. 2. A specific pod (A) experiences a traffic surge or an infinite loop in its logic. 3. Pod (A) occupies the node's shared resources (CPU, Memory, etc.) to their limits. 4. Other pods (B) on the same node suffer from resource starvation, leading to performance degradation or outages.

A 3-Step Methodology for Using AI as a Thinking Partner

--- I debated an entire book with AI. John Assaraf's *Having It All* — a book about the Law of Attraction. After finishing it, I was left with a question: "Is this law actually valid?" In the past, I would have looked up reviews or watched a YouTube breakdown. This time, I asked AI to play three roles — a physicist, a psychologist, and a philosopher — while I took the pro side in a round-based debate. All three attacked my arguments from their own perspectives. I defended, got attacked again. By the end, my original thinking had transformed beyond recognition. It was sharper. More honest. This post is about the methodology that emerged from that process.

Minikube Harbor Image Pull Troubleshooting Manual (macOS Environment)

> Purpose: A focused guide for resolving issues where kubelet fails to pull images from Harbor in a Minikube environment. Rather than explaining complex network architecture, this guide covers only the problem scenarios and their solutions. --- 1. Symptoms - Pods can successfully resolve service names like __INLINE_CODE_8__ via CoreDNS and communicate normally. - However, **kubelet (containerd/docker)** fails when attempting to pull images from the Harbor registry: - __INLINE_CODE_9__ - __INLINE_CODE_10__ - __INLINE_CODE_11__ - __INLINE_CODE_12__

What is SBOM (Software Bill of Materials)?

#SBOM #CI/CD #Concepts #DevOps Software Bill of Materials — SBOM stands for Software Bill of Materials. Literally, it's a "recipe list" of every component (package/library) that goes into a piece of software. - Just like a car has a parts list, software is built from countless open-source libraries, frameworks, and packages. SBOM records those components, their versions, and their origins in a structured format (JSON, SPDX, CycloneDX, etc.).

Kubernetes Simulation

#IaaS #Onboarding #Concepts 1. HPA (Horizontal Pod Autoscaler) Issue Colleague: "Why doesn't our service automatically scale up Pods even when CPU is maxed out?" Chris: "HPA relies on the Metrics Server to pull CPU/memory usage. If the Metrics Server isn't installed or lacks RBAC permissions, the values come back as 0 and HPA won't trigger. Also, if there are no Resource Requests set on the Deployment, HPA can't calculate a baseline threshold. So you need to verify the Metrics Server is working properly and check that Requests are configured."

Load Balancing from the Basics to Octavia vs HAProxy — All in One Guide

#IaaS #Onboarding #Concepts #Octavia --- 1) Core Load Balancing Concepts - Goal: Distribute traffic evenly across multiple backends (servers/pods) to ensure availability and performance. - L4 vs L7 - L4: TCP/UDP-level distribution. Fast and simple. Strong for source IP preservation, static IPs, and pass-through use cases. - L7: HTTP/HTTPS-level distribution. Provides application-aware features like path/host-based routing, header inspection, and cookie stickiness.