From a2350b5b2c958a230cfb40654ad93ededaa1df00 Mon Sep 17 00:00:00 2001 From: qini Date: Thu, 7 Jan 2021 10:20:14 +0800 Subject: [PATCH] Skip standalone VM when reconciling LoadBalancer --- .../k8s.io/legacy-cloud-providers/azure/azure_loadbalancer.go | 2 +- .../src/k8s.io/legacy-cloud-providers/azure/azure_standard.go | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_loadbalancer.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_loadbalancer.go index 19b409d5679..629da8c2669 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_loadbalancer.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_loadbalancer.go @@ -313,7 +313,7 @@ func (az *Cloud) cleanBackendpoolForPrimarySLB(primarySLB *network.LoadBalancer, return nil, err } primaryVMSetName := az.VMSet.GetPrimaryVMSetName() - if !strings.EqualFold(primaryVMSetName, vmSetName) { + if !strings.EqualFold(primaryVMSetName, vmSetName) && vmSetName != "" { klog.V(2).Infof("cleanBackendpoolForPrimarySLB: found unwanted vmSet %s, decouple it from the LB", vmSetName) // construct a backendPool that only contains the IP config of the node to be deleted interfaceIPConfigToBeDeleted := network.InterfaceIPConfiguration{ diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_standard.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_standard.go index d4854ef04a3..6f9fdb6dc93 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_standard.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_standard.go @@ -1087,6 +1087,10 @@ func (as *availabilitySet) GetNodeNameByIPConfigurationID(ipConfigurationID stri if vm.VirtualMachineProperties != nil && vm.AvailabilitySet != nil { asID = to.String(vm.AvailabilitySet.ID) } + if asID == "" { + return vmName, "", nil + } + asName, err := getAvailabilitySetNameByID(asID) if err != nil { return "", "", fmt.Errorf("cannot get the availability set name by the availability set ID %s", asID)