Documentation
¶
Index ¶
- func BuildCircuitBreakerMap(dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, ...) core_xds.CircuitBreakerMap
- func BuildDestinationMap(dataplane *mesh_core.DataplaneResource, routes core_xds.RouteMap) core_xds.DestinationMap
- func BuildEdsEndpointMap(mesh *mesh_core.MeshResource, zone string, ...) core_xds.EndpointMap
- func BuildEndpointMap(mesh *mesh_core.MeshResource, zone string, ...) core_xds.EndpointMap
- func BuildHealthCheckMap(dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, ...) core_xds.HealthCheckMap
- func BuildRetryMap(dataplane *mesh_core.DataplaneResource, retries []*mesh_core.RetryResource, ...) (core_xds.RetryMap, error)
- func BuildRouteMap(dataplane *mesh_core.DataplaneResource, ...) core_xds.RouteMap
- func BuildTimeoutMap(dataplane *core_mesh.DataplaneResource, timeouts []*core_mesh.TimeoutResource) core_xds.TimeoutMap
- func GetCircuitBreakers(ctx context.Context, dataplane *mesh_core.DataplaneResource, ...) (core_xds.CircuitBreakerMap, error)
- func GetDataplanes(log logr.Logger, ctx context.Context, rm manager.ReadOnlyResourceManager, ...) (*core_mesh.DataplaneResourceList, error)
- func GetHealthChecks(ctx context.Context, dataplane *mesh_core.DataplaneResource, ...) (core_xds.HealthCheckMap, error)
- func GetRetries(ctx context.Context, dataplane *mesh_core.DataplaneResource, ...) (core_xds.RetryMap, error)
- func GetRoutes(ctx context.Context, dataplane *mesh_core.DataplaneResource, ...) (core_xds.RouteMap, error)
- func GetTimeouts(ctx context.Context, dataplane *core_mesh.DataplaneResource, ...) (core_xds.TimeoutMap, error)
- func GetTrafficTrace(ctx context.Context, dataplane *mesh_core.DataplaneResource, ...) (*mesh_core.TrafficTraceResource, error)
- func GetZoneIngresses(log logr.Logger, ctx context.Context, rm manager.ReadOnlyResourceManager, ...) (*core_mesh.ZoneIngressResourceList, error)
- func ResolveAddress(lookupIPFunc lookup.LookupIPFunc, dataplane *core_mesh.DataplaneResource) (*core_mesh.DataplaneResource, error)
- func ResolveAddresses(log logr.Logger, lookupIPFunc lookup.LookupIPFunc, ...) []*core_mesh.DataplaneResource
- func ResolveIngressPublicAddress(lookupIPFunc lookup.LookupIPFunc, dataplane *core_mesh.DataplaneResource) (*core_mesh.DataplaneResource, error)
- func ResolveZoneIngressAddresses(log logr.Logger, lookupIPFunc lookup.LookupIPFunc, ...) []*core_mesh.ZoneIngressResource
- func ResolveZoneIngressPublicAddress(lookupIPFunc lookup.LookupIPFunc, zoneIngress *core_mesh.ZoneIngressResource) (*core_mesh.ZoneIngressResource, error)
- func SelectTrafficTrace(dataplane *mesh_core.DataplaneResource, ...) *mesh_core.TrafficTraceResource
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildCircuitBreakerMap ¶
func BuildCircuitBreakerMap(dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, circuitBreakers []*mesh_core.CircuitBreakerResource) core_xds.CircuitBreakerMap
BuildCircuitBreakerMap creates a map with circuit-breaking configuration per reachable service.
func BuildDestinationMap ¶
func BuildDestinationMap(dataplane *mesh_core.DataplaneResource, routes core_xds.RouteMap) core_xds.DestinationMap
BuildDestinationMap creates a map of selectors to match other dataplanes reachable from a given one via given routes.
func BuildEdsEndpointMap ¶
func BuildEdsEndpointMap( mesh *mesh_core.MeshResource, zone string, dataplanes []*mesh_core.DataplaneResource, zoneIngresses []*mesh_core.ZoneIngressResource, ) core_xds.EndpointMap
func BuildEndpointMap ¶
func BuildEndpointMap( mesh *mesh_core.MeshResource, zone string, dataplanes []*mesh_core.DataplaneResource, zoneIngresses []*mesh_core.ZoneIngressResource, externalServices []*mesh_core.ExternalServiceResource, loader datasource.Loader, ) core_xds.EndpointMap
BuildEndpointMap creates a map of all endpoints that match given selectors.
func BuildHealthCheckMap ¶
func BuildHealthCheckMap(dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, healthChecks []*mesh_core.HealthCheckResource) core_xds.HealthCheckMap
BuildHealthCheckMap creates a map with health-checking configuration per reachable service.
func BuildRetryMap ¶
func BuildRetryMap( dataplane *mesh_core.DataplaneResource, retries []*mesh_core.RetryResource, destinations core_xds.DestinationMap, ) (core_xds.RetryMap, error)
func BuildRouteMap ¶
func BuildRouteMap(dataplane *mesh_core.DataplaneResource, routes []*mesh_core.TrafficRouteResource) core_xds.RouteMap
BuildRouteMap picks a single the most specific route for each outbound interface of a given Dataplane.
func BuildTimeoutMap ¶
func BuildTimeoutMap(dataplane *core_mesh.DataplaneResource, timeouts []*core_mesh.TimeoutResource) core_xds.TimeoutMap
BuildTimeoutMap picks a single the most specific timeout for each outbound interface of a given Dataplane.
func GetCircuitBreakers ¶
func GetCircuitBreakers(ctx context.Context, dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, manager core_manager.ReadOnlyResourceManager) (core_xds.CircuitBreakerMap, error)
GetCircuitBreakers resolves all CircuitBreakers applicable to a given Dataplane.
func GetDataplanes ¶
func GetDataplanes(log logr.Logger, ctx context.Context, rm manager.ReadOnlyResourceManager, lookupIPFunc lookup.LookupIPFunc, mesh string) (*core_mesh.DataplaneResourceList, error)
GetDataplanes returns list of Dataplane in provided Mesh and Ingresses (which are cluster-scoped, not mesh-scoped)
func GetHealthChecks ¶
func GetHealthChecks(ctx context.Context, dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, manager core_manager.ReadOnlyResourceManager) (core_xds.HealthCheckMap, error)
GetHealthChecks resolves all HealthChecks applicable to a given Dataplane.
func GetRetries ¶
func GetRetries( ctx context.Context, dataplane *mesh_core.DataplaneResource, destinations core_xds.DestinationMap, manager core_manager.ReadOnlyResourceManager, ) (core_xds.RetryMap, error)
func GetRoutes ¶
func GetRoutes(ctx context.Context, dataplane *mesh_core.DataplaneResource, manager core_manager.ReadOnlyResourceManager) (core_xds.RouteMap, error)
GetRoutes picks a single the most specific route for each outbound interface of a given Dataplane.
func GetTimeouts ¶
func GetTimeouts( ctx context.Context, dataplane *core_mesh.DataplaneResource, manager core_manager.ReadOnlyResourceManager, ) (core_xds.TimeoutMap, error)
GetTimeouts picks a single the most specific timeout for each outbound interface of a given Dataplane.
func GetTrafficTrace ¶
func GetTrafficTrace(ctx context.Context, dataplane *mesh_core.DataplaneResource, manager core_manager.ReadOnlyResourceManager) (*mesh_core.TrafficTraceResource, error)
func GetZoneIngresses ¶
func GetZoneIngresses(log logr.Logger, ctx context.Context, rm manager.ReadOnlyResourceManager, lookupIPFunc lookup.LookupIPFunc) (*core_mesh.ZoneIngressResourceList, error)
func ResolveAddress ¶
func ResolveAddress(lookupIPFunc lookup.LookupIPFunc, dataplane *core_mesh.DataplaneResource) (*core_mesh.DataplaneResource, error)
ResolveAddress resolves 'dataplane.networking.address' if it has DNS name in it. This is a crucial feature for some environments specifically AWS ECS. Dataplane resource has to be created before running Kuma DP, but IP address will be assigned only after container's start. Envoy EDS doesn't support DNS names, that's why Kuma CP resolves addresses before sending resources to the proxy.
func ResolveAddresses ¶
func ResolveAddresses(log logr.Logger, lookupIPFunc lookup.LookupIPFunc, dataplanes []*core_mesh.DataplaneResource) []*core_mesh.DataplaneResource
func ResolveIngressPublicAddress ¶
func ResolveIngressPublicAddress(lookupIPFunc lookup.LookupIPFunc, dataplane *core_mesh.DataplaneResource) (*core_mesh.DataplaneResource, error)
func ResolveZoneIngressAddresses ¶
func ResolveZoneIngressAddresses(log logr.Logger, lookupIPFunc lookup.LookupIPFunc, zoneIngresses []*core_mesh.ZoneIngressResource) []*core_mesh.ZoneIngressResource
func ResolveZoneIngressPublicAddress ¶
func ResolveZoneIngressPublicAddress(lookupIPFunc lookup.LookupIPFunc, zoneIngress *core_mesh.ZoneIngressResource) (*core_mesh.ZoneIngressResource, error)
func SelectTrafficTrace ¶
func SelectTrafficTrace(dataplane *mesh_core.DataplaneResource, traces []*mesh_core.TrafficTraceResource) *mesh_core.TrafficTraceResource
Types ¶
This section is empty.