Change:
### Getting VMs <del> 1. You need a Google Cloud Platform account with billing enabled. Visit [http://cloud.google.com/console](http://cloud.google.com/console) for more details. 2. Make sure you can start up a GCE VM.  At least make sure you can do the [Create an instance](https://developers.google.com/compute/docs/quickstart#addvm) part of the GCE Quickstart. 3. Make sure you can ssh into the VM without interactive prompts. </del> <ins> 1. You need a Google Cloud Platform account with billing enabled. Visit the [Google Developers Console](http://cloud.google.com/console) for more details. 2. Make sure you can start up a GCE VM from the command line.  At least make sure you can do the [Create an instance](https://cloud.google.com/compute/docs/quickstart#create_an_instance) part of the GCE Quickstart. 3. Make sure you can ssh into the VM without interactive prompts.  See the [Log in to the instance](https://cloud.google.com/compute/docs/quickstart#ssh) part of the GCE Quickstart. </ins> * Your GCE SSH key must either have no passcode or you need to be using `ssh-agent`. * Ensure the GCE firewall isn't blocking port 22 to your VMs.  By default, this should work but if you have edited firewall rules or created a new non-default network, you'll need to expose it: `gcloud compute firewall-rules create --network=<network-name> --description "SSH allowed from anywhere" --allow tcp:22 default-ssh` <del> 4. You need to have the Google Cloud Storage API, and the Google Cloud Storage JSON API enabled. This can be done in the Google Cloud Console. </del> <ins> 4. You need to have the Google Cloud Storage API, and the Google Cloud Storage JSON API enabled. It is activated by default for new projects. Otherwise, it can be done in the Google Cloud Console.  See the [Google Cloud Storage JSON API Overview](https://cloud.google.com/storage/docs/json_api/) for more details. </ins> ### Prerequisites for your workstation <del> 1. Be running a Linux or Mac OS X. </del> <ins> 1. You must be running Linux or Mac OS X on your workstation. </ins> 2. You must have the [Google Cloud SDK](https://developers.google.com/cloud/sdk/) installed.  This will get you `gcloud` and `gsutil`. <del> 3. Ensure that your `gcloud` components are up-to-date by running `gcloud components update`. 4. If you want to build your own release, you need to have [Docker installed](https://docs.docker.com/installation/).  On Mac OS X you can use [boot2docker](http://boot2docker.io/). (see also: https://docs.docker.com/installation/mac/) 5. Get or build a [binary release](binary_release.md) </del> <ins> 3. Install `gcloud preview`: run `gcloud components update preview` to make sure it is. 4. Ensure that your other `gcloud` components are up-to-date by running `gcloud components update`. 5. If you want to build your own release, you need to have [Docker installed](https://docs.docker.com/installation/).  On Mac OS X you can use [boot2docker](http://boot2docker.io/). (see also: https://docs.docker.com/installation/mac/) 6. Get or build a [binary release](binary_release.md) of Kubernetes. </ins> ### Starting a Cluster <ins> Change into the `kubernetes` directory in which you have the binary release, and then do </ins> ```bash cluster/kube-up.sh ``` <ins> (If it fails, do `cluster/kube-down.sh` to clean up before trying again; otherwise, you'll get errors about resources that already exist.) </ins> The script above relies on Google Storage to stage the Kubernetes release. It then will start (by default) a single master VM along with 4 worker VMs.  You can tweak some of these parameters by editing `cluster/gce/config-default.sh`

Discussion:
I'm a recent user of Kubernetes, and I struggled a bit to get it up and running on GCE. It looks to me like the Getting started on Google Compute Engine]() doc is a bit out of date. I've updated the doc with what I think it should look like, and I'll link the PR here. The main issues I found are: The "Getting VMs" section could be clearer, and some of the docs linked to are out of date. I believe is now required for . Failure is messy with , so a note to run in case of failure before re-running would be helpful.
Isaac - thanks for these fixes! (we've been a bit negligent about making sure all of our documentation stays up to date as the underlying source/examples have been churning so quickly).