-
Notifications
You must be signed in to change notification settings - Fork 2k
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
gRPC and TCP/HTTP listeners can't work together in the same gateway-ingress #12356
Comments
Hi @Dgotlieb 👋 I believe this is a characteristic of Consul. From their ingress gateway documentation:
So Would you mind opening an issue in the Consul repo? You can link back to this one. Thanks! |
Hi @lgfa29 😄
which I think means that I can add multiple services when using a "non-tcp" protocol (in this case ...
ingress {
listener {
port = 8011
protocol = "grpc"
service {
name = "service-a"
hosts = ["foo"]
}
service {
name = "service-b"
hosts = ["bar"]
}
}
... But can't add more than one service when using ...
ingress {
listener {
port = 8011
protocol = "tcp"
service {
name = "service-a"
}
service {
name = "service-b"
}
}
... My issue is focused on the fact that when using different listeners, it works only when they are separated into different (Nomad) groups. Thanks! |
Hey @Dgotlieb, the error message coming back from Consul contains |
OK, after debugging a little more I realized this is 100% related to #8647 $ cat 1.json {
"Kind": "service-defaults",
"Name": "service-a-grpc",
"Protocol": "grpc"
} $ consul config write 1.json This is has nothing to do with the groups separation as I thought, but a Nomad issue nonetheless. Sorry for the hassle. |
I'm going to lock this issue because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active issues. |
Nomad version
v1.2.6 (a6c6b47)
Operating system and Environment details
Distributor ID: Ubuntu
Description: Ubuntu 18.04.6 LTS
Release: 18.04
Codename: bionic
Issue
When placing gRPC listener and a TCP/HTTP listener in the same
gateway-ingress
an error is thrownReproduction steps
Place different listener types under the same gateway-ingress entry
Expected Result
Allow different listener types to be located under the same
gateway-ingress
entryActual Result
Error submitting job: Unexpected response code: 500 (rpc error: Unexpected response code: 500 (service "service-a-http" has protocol "tcp", which does not match defined listener protocol "http"))
Workaround
Separate the job into 2 groups:
Job file (before workaround):
Job file (after workaround):
This issue is possibly related to #8647
The text was updated successfully, but these errors were encountered: