How to configure nginx-ingress controller for Github Authentication?

5/7/2018

I set up a Kubernetes Cluster using kubeadm.

[root@master fedora]# kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.2", GitCommit:"81753b10df112992bf51bbc2c2f85208aad78335", GitTreeState:"clean", BuildDate:"2018-04-27T09:22:21Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.2", GitCommit:"81753b10df112992bf51bbc2c2f85208aad78335", GitTreeState:"clean", BuildDate:"2018-04-27T09:10:24Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

I installed nginx-ingress using helm.

helm install stable/nginx-ingress --name=nginx --namespace=ingress-nginx -f nginx-values.yaml

The configuration file looks like this.

I also installed Jupyterhub using helm with this configuration file:

helm version
Client: &version.Version{SemVer:"v2.9.0", GitCommit:"f6025bb9ee7daf9fee0026541c90a6f557a3e0bc", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.9.0", GitCommit:"f6025bb9ee7daf9fee0026541c90a6f557a3e0bc", GitTreeState:"clean"}

helm install jupyterhub/jupyterhub --version=v0.7-fd73c61 --name=jh07 --namespace=jh07 -f config.yaml --timeout=14400 

Everything works fine, except the forwarding to the GitHub-Authentication service. I think it might have to do with this issue.

What settings do I have to change in the helm configuration files to make nginx forward the literal requests?

-- Johannes Bleher
github
jupyterhub
kubernetes
kubernetes-helm
nginx

1 Answer

5/15/2018

It was not a matter of configuration, my configuration was not all that wrong, but it was a port problem. The machines I am using are related to two different accounts on an OpenStack server. The OpenStack server has an ingress/engress controller. I thought I opened up all necessary ports... but it did not work... what struck me, was that it sometimes did work... I figured that when all pods were created on nodes belonging to one account it did work.

So I decided to only use one account (open all necessary ports for the kubernetes cluster listed here) and it worked.

I will update my answer if I find out which ingress and engress rules I have to apply to the other account.

I will update if I find out which ingress and engress rules I have to apply to the

-- Johannes Bleher
Source: StackOverflow