GoogleCloudPlatform / GoogleCloudPlatform/cloud-run-mesh

Multiple port support

Open
#27 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
35
Forks
8
PR merge metrics
No merged PRs in 30d

Description

Initial implementation supports a single app port, 8080. The port receives both mTLS-over-TLS requests from sidecar, but also requests that are not tunneled - the later for testing/demo/convenience, not intended for the final version.

The intended behavior is:
- support multiple ports, both HTTP and TCP
- non-tunneled requests will continue to be supported - it is a common use case to accept HTTPS from internet, and forward to mesh services. Non-tunneled, external requests will continue to go to port 8080, for backward compat and consistency with current practice.
- tunneled HTTP requests will go to a separate default port - 8000
- tunneled gRPC requests will go to a separate default port - 8002, since gRPC uses a separate stack and is hard to mux ports.
- For all other ports, user will need to specify them using an env variable - MESH_PORTS=name:5000,name:5001,etc.

We need this in order to run the Istio test app and do further TCP proxy testing, but also to enable more parity with in-cluster Istio.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.