gateway.proto

Package: gateway.solo.io

Types:

Source File: github.com/solo-io/gloo/projects/gateway/api/v1/gateway.proto

Gateway

A Gateway describes a single Listener (bind address:port) and the routing configuration to upstreams that are reachable via a specific port on the Gateway Proxy itself.

"ssl": bool
"bindAddress": string
"bindPort": int
"options": .gloo.solo.io.ListenerOptions
"status": .core.solo.io.Status
"metadata": .core.solo.io.Metadata
"useProxyProto": .google.protobuf.BoolValue
"httpGateway": .gateway.solo.io.HttpGateway
"tcpGateway": .gateway.solo.io.TcpGateway
"proxyNames": []string
Field Type Description Default
ssl bool if set to false, only use virtual services without ssl configured. if set to true, only use virtual services with ssl configured.
bindAddress string the bind address the gateway should serve traffic on.
bindPort int bind ports must not conflict across gateways for a single proxy.
options .gloo.solo.io.ListenerOptions top level optional configuration for all routes on the gateway.
status .core.solo.io.Status Status indicates the validation status of this resource. Status is read-only by clients, and set by gloo during validation.
metadata .core.solo.io.Metadata Metadata contains the object metadata for this resource.
useProxyProto .google.protobuf.BoolValue Enable ProxyProtocol support for this listener.
httpGateway .gateway.solo.io.HttpGateway Only one of httpGateway or tcpGateway can be set.
tcpGateway .gateway.solo.io.TcpGateway Only one of tcpGateway or httpGateway can be set.
proxyNames []string Names of the Proxy resources to generate from this gateway. If other gateways exist which point to the same proxy, Gloo will join them together. Proxies have a one-to-many relationship with Envoy bootstrap configuration. In order to connect to Gloo, the Envoy bootstrap configuration sets a role in the node metadata Envoy instances announce their role to Gloo, which maps to the {{ .Namespace }}~{{ .Name }} of the Proxy resource. The template for this value can be seen in the Gloo Helm chart Note: this field also accepts fields written in camel-case. They will be converted to kebab-case in the Proxy name. This allows use of the Gateway Name Helm value for this field Defaults to ["gateway-proxy"].

HttpGateway

"virtualServices": []core.solo.io.ResourceRef
"virtualServiceSelector": map<string, string>
"options": .gloo.solo.io.HttpListenerOptions
Field Type Description Default
virtualServices []core.solo.io.ResourceRef names of the the virtual services, which contain the actual routes for the gateway if the list is empty, all virtual services in the same namespace as this gateway will apply (with accordance to tls flag above).
virtualServiceSelector map<string, string> Select virtual services by their label. This will apply only to virtual services in the same namespace as the gateway resource. only one of virtualServices or virtualServiceSelector should be provided.
options .gloo.solo.io.HttpListenerOptions http gateway configuration.

TcpGateway

"tcpHosts": []gloo.solo.io.TcpHost
"options": .gloo.solo.io.TcpListenerOptions
Field Type Description Default
tcpHosts []gloo.solo.io.TcpHost TCP hosts that the gateway can route to.
options .gloo.solo.io.TcpListenerOptions tcp gateway configuration.