kube-rs/controller-rs

A kubernetes reference controller with actix-web

Hosted by Cloud Native Computing Foundation · part of Linux Foundation

View on GitHub ↗Jump to charts ↓

kube-rs/controller-rs has 300+ stars and 40+ forks on GitHub, is written in Rust, and was last pushed on Jul 20, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on October 15th, 2026
Created on April 28th, 2019
Open Issues & Pull Requests: 15 (+0)
GitHub issues: Enabled
Number of forks: 42
Total Stargazers: 341 (+0)
Total Subscribers: 4 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 43.7 days
Mean response time: 460.4 days
90th percentile: 1178.5 days
Tracked items: 7

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 601 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • help wanted (2)
  • bug (1)
  • enhancement (1)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

controller-rs is a reference implementation of a Kubernetes controller written in Rust using the kube library and actix-web.

The project demonstrates how to build a controller that reconciles custom resources, specifically a Document resource defined via a CustomResourceDefinition. The controller watches for changes to Document instances and responds by updating the resource's status object, creating associated Kubernetes events, and using finalizers to handle guaranteed deletion. The implementation includes observability instrumentation through OpenTelemetry integration and Prometheus metrics exposure.

This is a learning resource and starting point rather than a production framework. Developers building their first Kubernetes controller in Rust should use this as a reference implementation to understand the patterns and structure needed. The project is particularly useful for those wanting to see how to integrate observability from the start, including optional OpenTelemetry tracing and metrics collection. The example reconciler performs a simple operation—checking a hidden boolean field and updating status accordingly—making it easy to understand the core reconciliation loop before extending it for real-world use cases. The README explicitly directs users to the kube.rs controller guide for building production controllers.

The project maintains active continuous integration with automated testing. Development activity shows consistent engagement with the codebase through regular updates and maintenance of the example implementation. The helm chart and container image distribution indicate ongoing operational support for those deploying the controller in Kubernetes clusters.