This doc outlines the steps needed to run Ingress-GCE binary locally:
- Setup of a dev GKE cluster.
- Authorization configuration to it.
- Building and running the Ingress-GCE binary locally.
First step is to create a dev GKE cluster:
$ gcloud container clusters create CLUSTER_NAMEOnce the cluster is ready you need to disable HTTP Load Balancing.
$ gcloud container clusters update CLUSTER_NAME --update-addons=HttpLoadBalancing=DISABLEDYou can also do this from the Cloud Console. The HTTP Load Balancing option is available under Networking section.
Once the cluster is ready prepare authorization to it. You need to authorize both gcloud and kubectl.
$ gcloud auth application-default login
$ gcloud container clusters get-credentials CLUSTER_NAME --region CLUSTER_LOCATIONBuild the Ingress-GCE server
$ make buildPrepare configuration of the cluster. An example fully-specified config looks something like this:
[global]
token-url = nil
project-id = foo-project
network-name = foo-network
subnetwork-name = foo-subnetwork
node-instance-prefix = gke-foo-cluster
node-tags = my-custom-network-tags
local-zone=us-central1-cYou can run the provided script from the root of this repo:
$ hack/setup-local.sh <cluster-name>Or you can fill the config yourself and store it in the /tmp/gce.conf.
Once that is ready you can run the Ingress-GCE server.
$ GLBC=bin/amd64/glbc hack/run-local-glbc.sh