diff --git a/staging/src/k8s.io/cloud-provider/controllers/node/node_controller.go b/staging/src/k8s.io/cloud-provider/controllers/node/node_controller.go index b7559f16acc..83e0b1d9d64 100644 --- a/staging/src/k8s.io/cloud-provider/controllers/node/node_controller.go +++ b/staging/src/k8s.io/cloud-provider/controllers/node/node_controller.go @@ -233,15 +233,6 @@ func (cnc *CloudNodeController) updateNodeAddress(ctx context.Context, node *v1. if !ok { return nil, fmt.Errorf("failed to get instances from cloud provider") } - // Node that isn't present according to the cloud provider shouldn't have its address updated - exists, err := ensureNodeExistsByProviderID(ctx, instances, node) - if err != nil { - // Continue to update node address when not sure the node is not exists - klog.Errorf("%v", err) - } else if !exists { - klog.V(4).Infof("The node %s is no longer present according to the cloud provider, do not process.", node.Name) - return nil, fmt.Errorf("node %q not exist", node.Name) - } nodeAddresses, err := getNodeAddressesByProviderIDOrName(ctx, instances, node.Spec.ProviderID, node.Name) if err != nil { diff --git a/staging/src/k8s.io/cloud-provider/controllers/node/node_controller_test.go b/staging/src/k8s.io/cloud-provider/controllers/node/node_controller_test.go index 3f3f402b944..5a4dd47e03e 100644 --- a/staging/src/k8s.io/cloud-provider/controllers/node/node_controller_test.go +++ b/staging/src/k8s.io/cloud-provider/controllers/node/node_controller_test.go @@ -217,7 +217,22 @@ func Test_AddCloudNode(t *testing.T) { }, Spec: v1.NodeSpec{ ProviderID: "fake://12345", - Taints: []v1.Taint{}, + }, + Status: v1.NodeStatus{ + Addresses: []v1.NodeAddress{ + { + Type: v1.NodeHostName, + Address: "node0.cloud.internal", + }, + { + Type: v1.NodeInternalIP, + Address: "10.0.0.1", + }, + { + Type: v1.NodeExternalIP, + Address: "132.143.154.163", + }, + }, }, }, }, @@ -338,10 +353,23 @@ func Test_AddCloudNode(t *testing.T) { LastTransitionTime: metav1.Date(2015, 1, 1, 12, 0, 0, 0, time.UTC), }, }, + Addresses: []v1.NodeAddress{ + { + Type: v1.NodeHostName, + Address: "node0.cloud.internal", + }, + { + Type: v1.NodeInternalIP, + Address: "10.0.0.1", + }, + { + Type: v1.NodeExternalIP, + Address: "132.143.154.163", + }, + }, }, Spec: v1.NodeSpec{ ProviderID: "aws://12345", - Taints: []v1.Taint{}, }, }, }, @@ -601,7 +629,6 @@ func Test_AddCloudNode(t *testing.T) { ObjectMeta: metav1.ObjectMeta{ Name: "node0", CreationTimestamp: metav1.Date(2012, 1, 1, 0, 0, 0, 0, time.UTC), - Labels: map[string]string{}, }, Status: v1.NodeStatus{ Conditions: []v1.NodeCondition{ @@ -612,6 +639,20 @@ func Test_AddCloudNode(t *testing.T) { LastTransitionTime: metav1.Date(2015, 1, 1, 12, 0, 0, 0, time.UTC), }, }, + Addresses: []v1.NodeAddress{ + { + Type: v1.NodeHostName, + Address: "node0.cloud.internal", + }, + { + Type: v1.NodeInternalIP, + Address: "10.0.0.1", + }, + { + Type: v1.NodeExternalIP, + Address: "132.143.154.163", + }, + }, }, Spec: v1.NodeSpec{ ProviderID: "test-provider-id",