-
Notifications
You must be signed in to change notification settings - Fork 593
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
http2 requests not supported yet and checking config status failed: %!w(*kong.APIError=&{500 An unexpected error occurred}) #2435
Comments
I'm also seeing this on a straightforward installation of the 2.8.0 helm chart. I found a proxy PR to support http2 on the status endpoint: This is an exact output from
Kong overall is operating fine, but the log volume is annoying and it's not clear if this issue has any further impact. |
JFTR, just got hit by this issue aswell. It also happens with chart version |
It looks like the effect is that this new feature is not operational:
39c385e#diff-d8590e8687e7807da0cf97910b88e0ddbfc670866e0973a15c56597b99df9244R59 workaroundThese helm chart values seem to restore the broken feature and remove all the error logs: # Temporary workaround: disable HTTP2 on admin endpoint
# https://github.com/Kong/kubernetes-ingress-controller/issues/2435
admin:
tls:
parameters: [] (It seems like KIC could be hitting /status on the status port instead of the admin port, as the status port already has http2 disabled) |
@rainest do you know whether the above workaround actually leaves the system in a state that correctly is validating configuration? (If you don't know, I'm not asking you to do the work of checking) As mentioned in the above PR: "since the /nginx_status location is marked as internal, I don't think it will be possible to fetch it using real network socket"... does that mean the status call we are making doesn't actually check the nginx status, or does that only impact metrics? Just trying to get an idea of whether I can tell my product owners that the upgrade I just put in place will resolve the stability issues or not ;) Thanks!!! |
The workaround (disabling HTTP/2 support on the admin API) is fine. It doesn't meaningfully change the operation of the controller, which makes a separate request for each API call anyway rather than using HTTP/2 pipelining. It may technically degrade Manager performance, but I can't think of pages that are making more than 2-3 admin API requests at once, so I doubt the impact would be noticeable. Kong/kong#8690 is the PR that's planned to fix this/will allow you to turn HTTP/2 back on. The status endpoint (as of 2.8) provides both generic NGINX status information (connection count and such) and whether or not configuration is present. We only care about the latter, we just can't fetch it separately, and weren't using the endpoint before. |
Awesome, thank you for the detail! |
marking this as blocked on Kong/kong#8690 |
Minor related issue with the error formatting should be corrected by #2436 |
Blocked until Kong/kong#8690 releases (2.8.1)? |
I have set ADMIN_LISTEN environment variable to "127.0.0.1:8444 http2 ssl" and it was causing this error. As a workaround, I had to set ADMIN_LISTEN to "127.0.0.1:8444 ssl" to get rid of these errors. |
Up, It seem it is released and that it can now be fixed |
It seems that Kong/kong#8690 didn't land in 2.8.1: Kong/kong@c5fd723. In that case this will be available in 3.0 (it's already included in 3.0 alpha.1 build: https://github.com/Kong/kong/releases/tag/3.0.0-alpha.1) |
Resolving this issue is a no-op on the ingress controller side. Leaving this issue open for sake of discussion & comments if this solution does not work after 3.0 is out. |
not sure if this is supposed to be active but I'm still seeing this behavior on 3.0 🤔 I'm still getting the same lua exception log bloat for the HTTP2 probes. So I still have to disable the http2 listener config. |
@redradrat can you double-check your Deployment? Deploying https://raw.githubusercontent.com/Kong/kubernetes-ingress-controller/v2.7.0/deploy/single/all-in-one-dbless.yaml and adding
|
Is there an existing issue for this?
Current Behavior
On brand new install of Kong using Helm Chart Version 2.8.0, getting the following two errors on an Azure Kubernetes Service Cluster, one error in the proxy logs and the other on the ingress logs.
Subsequently installed it on minikube to make sure that the issue wasn't specific to an AKS cluster and got the same set of errors.
More detail error in Proxy:
3714 [lua] api_helpers.lua:511: handle_error(): /usr/local/share/lua/5.1/lapis/application.lua:424: /usr/local/share/lua/5.1/kong/api/routes/health.lua:45: http2 requests not supported yet
Expected Behavior
No errors.
Steps To Reproduce
Kong Ingress Controller version
Kubernetes version
Anything else?
Kong Ingress Controller seems to be working though...so not sure what these errors mean and how concern I should be.
The text was updated successfully, but these errors were encountered: