Pods Stuck for 6 Minutes After Network Partition Injection: Blast Radius Control and 5 Production-Grade Decisions in Fault Injection Testing

Overview Netflix says chaos engineering reduced major production incidents by 70%. Many teams have seen this number, but those who have actually run fault injection in production are rare. The reason is simple: fear. Inject a network partition and Pods freeze—what then? Simulate disk full and the database crashes—then what? Manually injecting faults at 3 AM and scrambling to roll back—that’s not a drill, that’s manufacturing an incident. During a K8s migration for a new-energy logistics platform with 120+ microservices, I needed to validate disaster recovery capabilities before the full cutover....

September 3, 2026 · 24 mins · 4936 words · ABao

Pushed an Image and Forgot About It? Harbor Artifact Repository: Permission Layering, Vulnerability Scanning, and 200GB Storage Governance

Overview 2 AM. Phone buzzed. Disk alert — 95%. Logged in and found the Harbor server’s /data/registry directory at 200GB, piled with 3,000+ tags. There was app:v0.0.3-beta from last year’s testing, app:feature-branch-xxx left over from failed builds, and ten copies of the same base image — each 800MB+. This isn’t an isolated case. I’ve seen the same script play out across multiple teams: once CI/CD is up and running, images get pushed but never cleaned....

September 3, 2026 · 15 mins · 3153 words · ABao

API Gateway Monitoring in Practice: Metrics Collection and Alert Design from Kong to APISIX

Overview At 2 AM, the payment system alerts exploded. After digging through logs for ages, we discovered the downstream services weren’t down — the API gateway’s connection pool was exhausted. Requests piled up at the gateway layer and never made it through. But our monitoring dashboard only showed CPU and memory curves, completely blind to gateway-level latency, connection counts, and error rates. This isn’t an isolated case. I’ve seen too many teams treat API gateways as “fancy Nginx” and only monitor nginx_active_connections, only digging into logs when things break....

September 1, 2026 · 18 mins · 3623 words · ABao

Don't Wait for the Crash to Check Monitoring: A Practical Methodology for Linux Performance Baselines and Anomaly Detection

Overview You’ve probably been here: woken up at 3 AM by a pager alert, scrambled to check Grafana, and found CPU usage spiked to 85%. You panic, investigate for half an hour, and finally realize — this database server runs a scheduled backup job every day from 2:50 to 3:10 AM. CPU is supposed to be at this level. What went wrong? You didn’t know what “normal” looks like for this machine....

August 30, 2026 · 23 mins · 4689 words · ABao

From "@ Ops in Chat" to Self-Service: 6-Layer Architecture and 4 Landing Phases for Platformizing 20+ Operations

Overview Friday, 4:30 PM. The business chat starts flooding: “@ops help me restart the order service” “@ops this endpoint is erroring, grab me the logs” “@ops is the disk full again? clear it for me” Three requests, three @s. The ops engineer puts down the inspection script they were writing, SSHs in, runs commands, pastes screenshots back to chat, then gets asked “is it done yet?” An afternoon, shattered. This isn’t an edge case—it’s the default mode of ops work in most teams: high-frequency, low-difficulty, heavily manual....

August 27, 2026 · 27 mins · 5653 words · ABao

The 3 AM Phone Rings Again: 7 Engineering Decisions for On-Call Rotation Design and Fatigue Management

Overview 3 AM. Your phone buzzes. P1 alert — order service 5xx error rate spiking. You drag yourself out of bed, fire up the laptop, pull logs, check Grafana, trace it to a saturated upstream database connection pool. Restart, scale up, recover. It’s 4:30 AM. The next morning, nursing dark circles in the standup, someone mentions that last night’s alert was actually a false positive. If you’ve worked in operations, you know this feeling....

August 25, 2026 · 24 mins · 4917 words · ABao

Don't Fall for the No-Ops Myth: 5 Production-Level Governance Decisions for Serverless Cold Starts, Cost Explosions, and Observability Blind Spots

Overview At 2 AM, I got a phone call. Users of a ride-hailing project reported that opening the App to view trip history during late-night hours caused a 3-5 second blank screen. After investigation, I found that this API group used Serverless function compute. During the day, traffic was normal, but after traffic dropped off at night, function instances were reclaimed. The first request triggered a cold start, pushing P99 latency to 4....

August 22, 2026 · 22 mins · 4662 words · ABao

Cutting 80% of Annual Downtime: 6 Engineering Decisions and Hard-Learned Lessons Going from 99.5% to 99.9% Availability

Overview 99.5% availability sounds pretty good — until you do the math. A year has 8,760 hours. 99.5% means you’re allowed 43.8 hours of downtime. Per month, that’s roughly 3.65 hours of service interruption. If this is a core transaction system, those 3.65 hours could mean tens of thousands in lost orders. During a major promotion, the loss multiplies by orders of magnitude. 99.9%? Annual downtime drops to 8.77 hours, less than 44 minutes per month....

August 20, 2026 · 22 mins · 4628 words · ABao

False Positive Rate from 70% to 5%: A Four-Layer Security Gate Design and False Positive Management in CI/CD

Overview Plug a SAST tool into your Jenkins pipeline, let the scan finish with zero alerts, then tell your boss “we’ve adopted DevSecOps” — I’ve seen this playbook too many times. During a Level 2 cybersecurity protection audit for a ride-hailing project, the client’s security team required us to integrate security scanning into our CI/CD pipeline. The first version was textbook standard: SonarQube for code scanning + Trivy for image scanning, with the gate set to “block Critical....

August 18, 2026 · 25 mins · 5153 words · ABao

Don't Turn Terraform Modules Into Black Boxes: IaC Layered Design Decisions and 6 Production Anti-Patterns Broken Down

Overview Last year I was setting up an IaC system for an e-commerce client. When I took over, their Terraform codebase looked roughly like this: three environments (dev/staging/prod), each with its own copy of the configuration, totaling over 3,000 lines—90% of which was copy-paste. Changing a VPC CIDR meant editing three files in sync. Miss one, and you get environment drift. The worst part: a security group rule was missing in prod for three months without anyone noticing....

August 15, 2026 · 17 mins · 3529 words · ABao