1. Proposed title of this feature request
Expose TopologySpreadConstraints for Prometheus, Alertmanager, and ThanosRuler in CMO configuration
2. What is the nature and description of the request?
In OpenShift environments with multiple Availability Zones it's most of the time required to properly distribute workload across different Availability Zones to prevent complete failure in case one Availability Zone is failing. Right now OpenShift Cluster Monitoring supports this with the usage of OpenShift - Node labels. Since this is rather cumbersome it would be nice to provide TopologySpreadConstraints functionality/ability in OpenShift - Monitoring to ease pod placement in different Availability Zones
3. Why does the customer need this? (List the business requirements here)
When running in public cloud, most of the time there are abilities to run OpenShift across different Availability Zones. As OpenShift Monitoring is a key part of the OpenShift - Cluster it's desired to have this running across different Availability Zones to keep monitoring running even if one Availability Zone is lost.
4. List any affected packages or components.
OpenShift Cluster Monitoring including Prometheus Operator