Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateCluster ¶
func CreateCluster(name string, edsServiceName string, namespace string, serviceAccountName string, healthCheckPort uint32, healthCheckProtocol string, healthCheckPathOrGRPCService string, enableTLS bool, requireClientCerts bool) (*clusterv3.Cluster, error)
CreateCluster returns a CDS Cluster.
`edsServiceName` is the resource name to request from EDS (for Clusters that use EDS). Typically, this is just the CDS Cluster name, but it must be a different name if the CDS Cluster name uses the `xdstp://` scheme for xDS federation.
To enable client-side active health checking, provide a `healthCheckProtocol` value of one of `grpc`, `http`, or `tcp`. If the health check port is different to the serving port, provide the health check port number too.
If the health check port is the same as the serving port, you can provide `0` as the value of `healthCheckPort`.
`pathOrGRPCService` is the URL path for HTTP health checks, or the gRPC service name for gRPC health checks. It is ignored for TCP health checks.
To disable client-side health checking, set `healthCheckProtocol` to an empty string.
Client-side active health checks are supported by Envoy proxy, but not by gRPC clients. See https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/service_discovery#on-eventually-consistent-service-discovery and https://github.com/grpc/grpc/issues/34581
TODO: Clean up too many parameters.
Types ¶
This section is empty.