# Draft This tutorial lets you set up a JupyterHub installation on a Kubernetes Cluster (on Google Cloud), using Helm for managing installation & upgrades. Create a kubernetes cluster: gcloud container clusters create my-cluster-name --num-nodes=3 --zone=us-central1-b If you get this error: ERROR: (gcloud.container.clusters.create) ResponseError: code=503, message=Project alert-result-161014 is not fully initialized with the default service accounts. Please try again later. go to in browser https://console.cloud.google.com/kubernetes/list Install kubectl and make sure it works: gcloud components install kubectl kubectl get node (should return 3 nodes) Install helm using https://github.com/kubernetes/helm/blob/master/docs/install.md Clone our git repository git clone https://github.com/data-8/jupyterhub-k8s Create a file called ‘config.yaml’. This will hold the various customizations we perform for our JupyterHub installation. Make the values initially be: name: “name-of-your-hub” hub: cookieSecret: “” token: proxy: “” (Note: Make sure these aren’t curly quotes in your file!) Run `helm init` to prepare the kubernetes cluster for helm installation Run `helm install helm-chart --name= --namespace= -f config.yaml` You can see the pods being created with `kubectl --namespace= get pod`. Wait for the hub and proxy pod to get to running (the cull might be in error - ignore it for now, it’ll be fixed when https://github.com/data-8/jupyterhub-k8s/issues/143 is fixed) You can find the IP to use for accessing the JupyterHub with `kubectl --namespace= get svc` - the external IP for the ‘proxy-public’ service should be accessible in a minute or two. The default authenticator is ‘dummy’ - any username / password will let you in! We can explore setting other options, such as persistent storage for users, memory / cpu limits, and other authenticators now! Common errors: Something like “could not find default credentials. See https://developers.google.com/accounts/docs/application-default-credentials for more information.” Do gcloud auth application-default login and follow the prompts. The link provided has other options for advanced use cases.