Exposing a Service
There are a few different options for exposing a service.
To expose a standard HTTP service simply add the http port in the
HTTPS Load Balancing section.
The service will be exposed with a secure TLS protected URL endpoint.
Standard HTTPS load balancer supports advanced features like Real IP forwarding, WebSocket, Server Sent Events (SSE), and more.
To expose a GRPC service, first use the same instruction as a HTTP service.
Then click on the gear icon and select the
Standard GRPC load balancing supports GRPC-aware request routing, GRPC streaming, in addition to all HTTP load balancing features.
Public TCP/UDP Service
To expose your TCP/UDP based service to public, you can use the Cloud Load Balancer feature.
Cloud Load Balancer utilizes services such as AWS ELB, GCP CLB to provide scalable TCP/UDP load balancing.
The external service will be assigned a static egress IP and DNS name that persists across instance restarts.
Cloud Load Balancer will incur additional cost depends on the cloud provider you use.
Egress IP/DNS may change if you disable/re-enable the networking port or project.
Internal TCP/UDP Service
To expose your TCP/UDP based service to other internal services, you can use the ports settings without Cloud Load Balancer.
The exposed service will receive an internal routable DNS name which can be used by other zeet projects.
The following sections are for advanced use cases only. Host networking requires additional cloud firewall rules.
Setting a port to
Public will open the port you specify on the host machine. This is useful if you have direct networking access to the host machine.
Cloud Firewalls will deny public access to most host ports by default unless you explicitly allow it.
Host network mode will disable most cluster-aware networking features and uses the networking configuration of the host machine.
This feature has security implications and is not recommended for most users unless you have specific performance requirements.