Skip to content

Commit 1cc14f8

Browse files
authored
docs: one manager cannot run both sharded and non-sharded controllers (#443)
1 parent da5a1b0 commit 1cc14f8

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ I completed a study project ("half-time thesis") on this topic and evolved it in
2222

2323
This repository contains the implementation belonging to the scientific work: the actual sharding implementation, a sample operator using controller sharding, a monitoring and continuous profiling setup, and some tools for development and evaluation purposes.
2424

25+
Since finishing the scientific work, this project evolved further, especially in the [v0.9 release](https://github.com/timebertt/kubernetes-controller-sharding/releases/tag/v0.9.0).
26+
Be aware that the Master's thesis might not reflect the current development state in all descriptions.
27+
2528
## Motivation 💡
2629

2730
Typically, [Kubernetes controllers](https://kubernetes.io/docs/concepts/architecture/controller/) use a leader election mechanism to determine a *single* active controller instance (leader).

docs/implement-sharding.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ func run() error {
163163
}
164164
```
165165

166+
Note that if you're using controller-runtime, the same manager instance cannot run sharded and non-sharded controllers as a manager can only run under a single resource lock (either leader election or shard lease).
167+
166168
### Filtered Watch Cache
167169

168170
In short: use the following label selector on watches for all sharded resources listed in the `ControllerRing`.

0 commit comments

Comments
 (0)