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 {
zone := clusterInfo.Cluster.Spec.Zone
if zone == "" {
zones := clusterInfo.Cluster.Spec.Zones
if len(zones) == 0 {
continue
}
zoneInfo, ok := info.Zones[zone]
if !ok {
zoneInfo = ZoneInfo{
Name: zone,
Clusters: make([]ClusterDetailInfo, 0),
for _, zone := range zones {
zoneInfo, ok := info.Zones[zone]
if !ok {
zoneInfo = ZoneInfo{
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 {

View File

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