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

[TD-629] defect: expose more than one port on the Gateway #183

Open
asoorm opened this issue Jan 26, 2022 · 0 comments
Open

[TD-629] defect: expose more than one port on the Gateway #183

asoorm opened this issue Jan 26, 2022 · 0 comments
Labels
bug Something isn't working

Comments

@asoorm
Copy link
Member

asoorm commented Jan 26, 2022

The Gateway tyk.conf and environment variables provide a way to expose a list of ports.

https://github.com/TykTechnologies/tyk/blob/master/config/config.go#L592-L595

The Gateway tyk.conf and environment variables provide a way to disable port whitelisting

https://github.com/TykTechnologies/tyk/blob/master/config/config.go#L597-L598

It is not possible to create a service which opens up extra ports aside from the default service port and a separate control port.

https://github.com/TykTechnologies/tyk-helm-chart/blob/master/tyk-pro/values.yaml#L294-L304

  service:
    type: NodePort
    port: 8080
    externalTrafficPolicy: Local
    annotations: {}
  control:
    enabled: false
    containerPort: 9696
    port: 9696
    type: ClusterIP
    annotations: {}

In the event that the Gateway should listen to one or more ports, it is impossible using these helm charts to expose more than one port for the Tyk Gateway.

This makes it impossible to:

  • Integrate with cert-manager, as we cannot handle the acme challenge (impact on ingress)
  • Get the Gateway to listen on both http and https for different APIs and services
  • get the gateway to listen on different protocols - e.g. TCP, TLS, HTTP, HTTPS as to do so means creating listeners for each protocol on different ports.

It would be great if we had an option such as extraPorts which gave me the ability to specify an array of ports to open up which resolves the issue at the K8s side. But we also need to surface the fact that we have these config options in the Gateway - so maybe we could put them in the Values.yaml, but comment it out?

@asoorm asoorm added the bug Something isn't working label Jan 26, 2022
@letzya letzya changed the title defect: expose more than one port on the Gateway [TD-629] defect: expose more than one port on the Gateway Jun 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant