code: func (az *Cloud) GetVirtualMachineWithRetry(name types.NodeName) (compute.VirtualMachine, error) {
  	var machine compute.VirtualMachine
  	var retryErr error
  	err := wait.ExponentialBackoff(az.requestBackoff(), func() (bool, error) {
  		machine, retryErr = az.getVirtualMachine(name)
  		if retryErr == cloudprovider.InstanceNotFound {
  			return true, cloudprovider.InstanceNotFound
  		}
  		if retryErr != nil {
  			klog.Errorf("GetVirtualMachineWithRetry(%s): backoff failure, will retry, err=%v", name, retryErr)
  			return false, nil
  		}
  		klog.V(2).Infof("GetVirtualMachineWithRetry(%s): backoff success", name)
  		return true, nil
  	})
  	if err == wait.ErrWaitTimeout {
  		err = retryErr
  	}
  	return machine, err
  }
docs: // GetVirtualMachineWithRetry invokes az.getVirtualMachine with exponential backoff retry