Make multiple attempts to sanity check (GCE) and validate (ALL) cluster

This PR changed the sanity check for GCE cluster creation to make multiple attempts to deal with slow cluster birth. It also performs a more detailed check of the Docker installation (by ensuring kubernetes/pause can be found). It also adjusts validate-cluster.sh (for all providers) to make multiple attempts to validate a cluster.

Before, even when creating a modest sized cluster (say, 12 nodes), these steps failed not because there was anything wrong with the cluster but just because these steps can be slow and we don't retry.
I **very** much appreciate all your great suggestions and I am
(re-)learning a lot. I've drunk too much wine now to work on this any more
tonight (without any work being counter-productive) but I shall get back to
it in the morning,

Cheers,

Satnam

On Thu, Dec 11, 2014 at 9:22 PM, Filipe Brandenburger <
notifications@github.com> wrote:

> In cluster/gce/util.sh
> <https://github.com/GoogleCloudPlatform/kubernetes/pull/2816#discussion-diff-21729175>
> :
>
> > @@ -21,6 +21,13 @@
> >  KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../..
> >  source "${KUBE_ROOT}/cluster/gce/${KUBE_CONFIG_FILE-"config-default.sh"}"
> >
> > +# Some useful colors.
>
> Yep I do see your point...
>
> In any case, my suggestions are here, feel free to take as much as you'd
> like and when you think it's good enough let's move on.
>
> I agree that it's best to just keep this working well enough until there's
> time to rewrite the bulk of it in Go.
>
> Cheers,
> Filipe
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/GoogleCloudPlatform/kubernetes/pull/2816/files#r21729175>
> .
>