Return node unhealthy if http request fails

If health check cannot talk to kubelet (http connection fail, instead of 500 code), it will return a connection fail instead of Unhealth status. Part of #2192

@lavalamp 
> I think it is wired to check the returned value before checking the error.

Yes, it can't go in like this :)

IMO if you fix this here, you should just return ErrNotHealthy if you get *any* error. (And log the actual error gotten, so we can analyze logs later and see if that's an OK strategy.