-
Task
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
3
-
False
-
-
False
-
Not Selected
-
rhos-connectivity-vans
-
-
-
Important
Goal:
Implement multipool support in the Designate operator controllers, including an admission webhook for ConfigMap validation, DesignateBackendbind9 controller logic to manage multiple StatefulSets (one per pool), migration support between single and multipool modes, and orphaned pool cleanup. This enables operators to dynamically manage multiple DNS pools with independent scaling while ensuring seamless migration paths.
Acceptance Criteria:
- Verify webhook validates YAML structure, at least one pool defined, default pool exists, no duplicate pool names, bindReplicas >= 0
- Verify when multipool ConfigMap exists, one StatefulSet is created per pool (e.g., designate-backendbind9-pool0, designate-backendbind9-pool1)
- Verify each StatefulSet uses pool-specific replica count from configuration
- Verify network attachments are verified per pool
- Verify controller watches the multipool ConfigMap and reconciles all Backendbind9 CRs on changes
- both single to multipool and vice versa migration: old single StatefulSet is deleted when multipool ConfigMap is created, and all pool StatefulSets are deleted when multipool ConfigMap is removed. There should be no manual intervention during the migration, as long as the user allocated the required resources for the migration
- Verify error condition is set if pool removal validation fails
- Verify orphaned StatefulSets are gracefully scaled down to 0 replicas
- Verify pools are deleted only if there are no associated DNS zones