Documentation
¶
Index ¶
- type ConnectionInfo
- type Context
- type ControlPlaneContext
- type MeshContext
- type MeshContextBuilder
- type MeshGatewayDataplanes
- type ResourceMap
- type Resources
- func (r Resources) CircuitBreakers() *core_mesh.CircuitBreakerResourceList
- func (r Resources) Dataplanes() *core_mesh.DataplaneResourceList
- func (r Resources) ExternalServices() *core_mesh.ExternalServiceResourceList
- func (r Resources) FaultInjections() *core_mesh.FaultInjectionResourceList
- func (r Resources) GatewayRoutes() *core_mesh.MeshGatewayRouteResourceList
- func (r Resources) Gateways() *core_mesh.MeshGatewayResourceList
- func (r Resources) HealthChecks() *core_mesh.HealthCheckResourceList
- func (r Resources) ListOrEmpty(resourceType core_model.ResourceType) core_model.ResourceList
- func (r Resources) OtherMeshes() *core_mesh.MeshResourceList
- func (r Resources) ProxyTemplates() *core_mesh.ProxyTemplateResourceList
- func (r Resources) RateLimits() *core_mesh.RateLimitResourceList
- func (r Resources) Retries() *core_mesh.RetryResourceList
- func (r Resources) Secrets() *system.SecretResourceList
- func (r Resources) ServiceInsights() *core_mesh.ServiceInsightResourceList
- func (r Resources) Timeouts() *core_mesh.TimeoutResourceList
- func (r Resources) TrafficLogs() *core_mesh.TrafficLogResourceList
- func (r Resources) TrafficPermissions() *core_mesh.TrafficPermissionResourceList
- func (r Resources) TrafficRoutes() *core_mesh.TrafficRouteResourceList
- func (r Resources) TrafficTraces() *core_mesh.TrafficTraceResourceList
- func (r Resources) ZoneEgresses() *core_mesh.ZoneEgressResourceList
- func (r Resources) ZoneIngresses() *core_mesh.ZoneIngressResourceList
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConnectionInfo ¶
type ConnectionInfo struct { // Authority defines the URL that was used by the data plane to connect to the control plane Authority string }
type Context ¶
type Context struct { ControlPlane *ControlPlaneContext Mesh MeshContext }
type ControlPlaneContext ¶
ControlPlaneContext contains shared global data and components that are required for generating XDS This data is the same regardless of a data plane proxy and mesh we are generating the data for.
type MeshContext ¶
type MeshContext struct { Hash string Resource *core_mesh.MeshResource Resources Resources DataplanesByName map[string]*core_mesh.DataplaneResource EndpointMap xds.EndpointMap CrossMeshEndpoints map[xds.MeshName]xds.EndpointMap VIPDomains []xds.VIPDomains VIPOutbounds []*mesh_proto.Dataplane_Networking_Outbound ServiceTLSReadiness map[string]bool DataSourceLoader datasource.Loader }
MeshContext contains shared data within one mesh that is required for generating XDS config. This data is the same for all data plane proxies within one mesh. If there is an information that can be precomputed and shared between all data plane proxies it should be put here. This way we can save CPU cycles of computing the same information.
func (*MeshContext) GetLoggingBackend ¶ added in v1.8.1
func (mc *MeshContext) GetLoggingBackend(tl *core_mesh.TrafficLogResource) *mesh_proto.LoggingBackend
func (*MeshContext) GetTracingBackend ¶ added in v1.8.1
func (mc *MeshContext) GetTracingBackend(tt *core_mesh.TrafficTraceResource) *mesh_proto.TracingBackend
type MeshContextBuilder ¶ added in v1.8.1
type MeshContextBuilder interface { Build(ctx context.Context, meshName string) (MeshContext, error) // BuildIfChanged builds MeshContext only if hash of MeshContext is different // If hash is the same, then the function returns (nil, nil) // Hash returned in MeshContext can never be empty BuildIfChanged(ctx context.Context, meshName string, hash string) (*MeshContext, error) }
func NewMeshContextBuilder ¶ added in v1.8.1
func NewMeshContextBuilder( rm manager.ReadOnlyResourceManager, types []core_model.ResourceType, ipFunc lookup.LookupIPFunc, zone string, vipsPersistence *vips.Persistence, topLevelDomain string, ) MeshContextBuilder
type MeshGatewayDataplanes ¶ added in v1.8.1
type MeshGatewayDataplanes struct { Mesh *core_mesh.MeshResource Gateways []*core_mesh.MeshGatewayResource Dataplanes []*core_mesh.DataplaneResource }
type ResourceMap ¶ added in v1.8.1
type ResourceMap map[core_model.ResourceType]core_model.ResourceList
type Resources ¶ added in v1.8.1
type Resources struct { MeshLocalResources ResourceMap CrossMeshResources map[xds.MeshName]ResourceMap }
func NewResources ¶ added in v1.8.1
func NewResources() Resources
func (Resources) CircuitBreakers ¶ added in v1.8.1
func (r Resources) CircuitBreakers() *core_mesh.CircuitBreakerResourceList
func (Resources) Dataplanes ¶ added in v1.8.1
func (r Resources) Dataplanes() *core_mesh.DataplaneResourceList
func (Resources) ExternalServices ¶ added in v1.8.1
func (r Resources) ExternalServices() *core_mesh.ExternalServiceResourceList
func (Resources) FaultInjections ¶ added in v1.8.1
func (r Resources) FaultInjections() *core_mesh.FaultInjectionResourceList
func (Resources) GatewayRoutes ¶ added in v1.8.1
func (r Resources) GatewayRoutes() *core_mesh.MeshGatewayRouteResourceList
func (Resources) Gateways ¶ added in v1.8.1
func (r Resources) Gateways() *core_mesh.MeshGatewayResourceList
func (Resources) HealthChecks ¶ added in v1.8.1
func (r Resources) HealthChecks() *core_mesh.HealthCheckResourceList
func (Resources) ListOrEmpty ¶ added in v1.8.1
func (r Resources) ListOrEmpty(resourceType core_model.ResourceType) core_model.ResourceList
func (Resources) OtherMeshes ¶ added in v1.8.1
func (r Resources) OtherMeshes() *core_mesh.MeshResourceList
func (Resources) ProxyTemplates ¶ added in v1.8.1
func (r Resources) ProxyTemplates() *core_mesh.ProxyTemplateResourceList
func (Resources) RateLimits ¶ added in v1.8.1
func (r Resources) RateLimits() *core_mesh.RateLimitResourceList
func (Resources) Retries ¶ added in v1.8.1
func (r Resources) Retries() *core_mesh.RetryResourceList
func (Resources) Secrets ¶ added in v1.8.1
func (r Resources) Secrets() *system.SecretResourceList
func (Resources) ServiceInsights ¶ added in v1.8.1
func (r Resources) ServiceInsights() *core_mesh.ServiceInsightResourceList
func (Resources) Timeouts ¶ added in v1.8.1
func (r Resources) Timeouts() *core_mesh.TimeoutResourceList
func (Resources) TrafficLogs ¶ added in v1.8.1
func (r Resources) TrafficLogs() *core_mesh.TrafficLogResourceList
func (Resources) TrafficPermissions ¶ added in v1.8.1
func (r Resources) TrafficPermissions() *core_mesh.TrafficPermissionResourceList
func (Resources) TrafficRoutes ¶ added in v1.8.1
func (r Resources) TrafficRoutes() *core_mesh.TrafficRouteResourceList
func (Resources) TrafficTraces ¶ added in v1.8.1
func (r Resources) TrafficTraces() *core_mesh.TrafficTraceResourceList
func (Resources) ZoneEgresses ¶ added in v1.8.1
func (r Resources) ZoneEgresses() *core_mesh.ZoneEgressResourceList
func (Resources) ZoneIngresses ¶ added in v1.8.1
func (r Resources) ZoneIngresses() *core_mesh.ZoneIngressResourceList
Click to show internal directories.
Click to hide internal directories.