Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashloop with no logs between querying provider and verifying client #183

Open
xunholy opened this issue Nov 4, 2021 · 1 comment
Open

Comments

@xunholy
Copy link

xunholy commented Nov 4, 2021

There is an issue where the pods run into a crashloop because the start-up is never successful past the querying provider where it should continue moving into verifying client.

2021/11/04 05:45:35 Using config file: /app/config.yaml
2021/11/04 05:45:35 Creating new provider https://dex.example.com

This never progresses, I can confirm the pod can reach the provider and that it has connectivity, I've enabled debug: true yet this is kind of useless and doesn't add any extra verbosity to this phase of the pod life cycle.

Only clue i could consider is it's failing silently somewhere around here

provider, err := oidc.NewProvider(ctx, cluster.Issuer)

Open to suggestions on how or why this could be the case. My helm values can be found here https://github.com/xUnholy/k8s-gitops/blob/ef4cfeb9d9992e05b5b861fd2cb706511e8e7bf1/k8s/namespaces/base/network-system/dex-k8s-authenticator/helmrelease.yaml#L33

@nabadger
Copy link
Contributor

nabadger commented Nov 10, 2021

Is this related to #182 ? Since in that issue it looks like it got further than this ...and then errored out.

For this particular case, does it hang or does it exit? If it hangs then it sounds like it's stuck trying to get a connection (I've seen similar issue that have been the result of networkpolicy...).

You might have some luck with GODEBUG=http2debug=2 (this is part of net/http I think, which is what oidc.NewProvider uses).

There's more:

GODEBUG=http2client=0  # disable HTTP/2 client support
GODEBUG=http2server=0  # disable HTTP/2 server support
GODEBUG=http2debug=1   # enable verbose HTTP/2 debug logs
GODEBUG=http2debug=2   # ... even more verbose, with frame dumps

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants