Adopt zones in scheduler spread by constraints

Signed-off-by: Tanggui Bian <softwarebtg@163.com>
This commit is contained in:
Tanggui Bian 2023-08-25 15:27:49 +08:00
parent fb4c16d348
commit 10b5ff2036
2 changed files with 13 additions and 12 deletions

View File

@ -136,22 +136,23 @@ func (info *GroupClustersInfo) generateZoneInfo(spreadConstraints []policyv1alph
} }
for _, clusterInfo := range info.Clusters { for _, clusterInfo := range info.Clusters {
zone := clusterInfo.Cluster.Spec.Zone zones := clusterInfo.Cluster.Spec.Zones
if zone == "" { if len(zones) == 0 {
continue continue
} }
zoneInfo, ok := info.Zones[zone] for _, zone := range zones {
if !ok { zoneInfo, ok := info.Zones[zone]
zoneInfo = ZoneInfo{ if !ok {
Name: zone, zoneInfo = ZoneInfo{
Clusters: make([]ClusterDetailInfo, 0), Name: zone,
Clusters: make([]ClusterDetailInfo, 0),
}
} }
zoneInfo.Clusters = append(zoneInfo.Clusters, clusterInfo)
zoneInfo.AvailableReplicas += clusterInfo.AvailableReplicas
info.Zones[zone] = zoneInfo
} }
zoneInfo.Clusters = append(zoneInfo.Clusters, clusterInfo)
zoneInfo.AvailableReplicas += clusterInfo.AvailableReplicas
info.Zones[zone] = zoneInfo
} }
for zone, zoneInfo := range info.Zones { for zone, zoneInfo := range info.Zones {

View File

@ -18,7 +18,7 @@ func NewClusterWithTopology(name, provider, region, zone string) *clusterv1alpha
Spec: clusterv1alpha1.ClusterSpec{ Spec: clusterv1alpha1.ClusterSpec{
Provider: provider, Provider: provider,
Region: region, Region: region,
Zone: zone, Zones: []string{zone},
}, },
} }
} }