← Voltar ao blog

Kubernetes Fault Tolerance: My Master's Research

An overview of my UFSC research into automated fault tolerance for Kubernetes — building a custom Golang framework.

·
  • #kubernetes
  • #research
  • #golang

My Master’s research at UFSC focuses on a deceptively simple question: can we automate fault tolerance in Kubernetes without operator intervention?

The problem

Kubernetes ships with primitives — probes, restart policies, replica sets — but they’re coarse. A pod restarts, sure. But what about partial network partitions, slow disks, or degraded nodes that pass liveness checks while silently underperforming? These grey-zone failures are where SREs spend a disproportionate amount of time.

The approach

I’m building a custom framework in Go that sits alongside the scheduler and continuously evaluates node health using composite signals — not just binary probe results. When a node degrades, workloads are proactively migrated before users feel the pain.

// Composite health score
func (s *Scorer) Score(node *NodeVitals) float64 {
    return weightedAvg(
        s.cpuScore(node),
        s.netScore(node),
        s.ioScore(node),
    )
}

Why this matters

The end goal isn’t to replace Kubernetes primitives — it’s to layer intelligent automation on top of them. If your platform processes financial transactions at scale, every minute of degraded performance has real cost. Automating the grey zone is where the next order of magnitude of reliability will come from.

More details as the research matures.