-
Notifications
You must be signed in to change notification settings - Fork 2k
Description
In what area(s)?
/area placement
/area scheduler
Describe the feature
The current Helm charts for dapr-placement-server and dapr-scheduler-server only support "soft" anti-affinity rules (preferredDuringSchedulingIgnoredDuringExecution) via global.ha.enabled. They do not expose configuration for Topology Spread Constraints or Required (Hard) Node Affinity.
In some HA environments, if two out of three replicas are scheduled on the same Node or Zone, and the PVCs are subnet (AZ-bound), a single infrastructure failure results in the loss of a quorum. With only 1 replica remaining, leader election cannot occur.
Feature Request:
Update the Helm charts to allow configuration of hard scheduling constraints. Specifically:
- Topology Spread Constraints: Expose
topologySpreadConstraintsinvalues.yamlto allow users to enforce strict distribution across zones (e.g.,topology.kubernetes.io/zone) withwhenUnsatisfiable: DoNotSchedule. - Custom Affinity: Allow the default
affinityrules to be overridden or merged so users can definerequiredDuringSchedulingIgnoredDuringExecutionfor node affinity.
Value:
Guarantees High Availability for production clusters. By strictly enforcing physical separation of control plane pods, Dapr can survive node or zonal failures without losing the consensus quorum required for operation.
Release Note
RELEASE NOTE: ADD Support for Topology Spread Constraints and strict affinity rules in Dapr Control Plane charts to ensure Quorum resilience.