Documentation ¶
Index ¶
- type Controller
- func (c *Controller) AddRegistry(registry serviceregistry.Instance)
- func (c *Controller) AddRegistryAndRun(registry serviceregistry.Instance, stop <-chan struct{})
- func (c *Controller) AdditionalPodSubscriptions(proxy *model.Proxy, addr, cur sets.String) sets.String
- func (c *Controller) AddressInformation(addresses sets.String) ([]model.AddressInfo, sets.String)
- func (c *Controller) AppendServiceHandler(f model.ServiceHandler)
- func (c *Controller) AppendServiceHandlerForCluster(id cluster.ID, f model.ServiceHandler)
- func (c *Controller) AppendWorkloadHandler(f func(*model.WorkloadInstance, model.Event))
- func (c *Controller) DeleteRegistry(clusterID cluster.ID, providerID provider.ID)
- func (c *Controller) GetProxyServiceTargets(node *model.Proxy) []model.ServiceTarget
- func (c *Controller) GetProxyWorkloadLabels(proxy *model.Proxy) labels.Instance
- func (c *Controller) GetRegistries() []serviceregistry.Instance
- func (c *Controller) GetService(hostname host.Name) *model.Service
- func (c *Controller) HasSynced() bool
- func (c *Controller) MCSServices() []model.MCSServiceInfo
- func (c *Controller) NetworkGateways() []model.NetworkGateway
- func (c *Controller) Policies(requested sets.Set[model.ConfigKey]) []model.WorkloadAuthorization
- func (c *Controller) Run(stop <-chan struct{})
- func (c *Controller) Services() []*model.Service
- func (c *Controller) ServicesForWaypoint(key model.WaypointKey) []model.ServiceInfo
- func (c *Controller) ServicesWithWaypoint(key string) []model.ServiceWaypointInfo
- func (c *Controller) UnRegisterHandlersForCluster(id cluster.ID)
- func (c *Controller) WorkloadsForWaypoint(key model.WaypointKey) []model.WorkloadInfo
- type Options
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Controller ¶
type Controller struct { model.NetworkGatewaysHandler // contains filtered or unexported fields }
Controller aggregates data across different registries and monitors for changes
func NewController ¶
func NewController(opt Options) *Controller
NewController creates a new Aggregate controller
func (*Controller) AddRegistry ¶
func (c *Controller) AddRegistry(registry serviceregistry.Instance)
AddRegistry adds registries into the aggregated controller. If the aggregated controller is already Running, the given registry will never be started.
func (*Controller) AddRegistryAndRun ¶
func (c *Controller) AddRegistryAndRun(registry serviceregistry.Instance, stop <-chan struct{})
AddRegistryAndRun adds registries into the aggregated controller and makes sure it is Run. If the aggregated controller is running, the given registry is Run immediately. Otherwise, the given registry is Run when the aggregate controller is Run, using the given stop.
func (*Controller) AdditionalPodSubscriptions ¶
func (*Controller) AddressInformation ¶
func (c *Controller) AddressInformation(addresses sets.String) ([]model.AddressInfo, sets.String)
func (*Controller) AppendServiceHandler ¶
func (c *Controller) AppendServiceHandler(f model.ServiceHandler)
func (*Controller) AppendServiceHandlerForCluster ¶
func (c *Controller) AppendServiceHandlerForCluster(id cluster.ID, f model.ServiceHandler)
func (*Controller) AppendWorkloadHandler ¶
func (c *Controller) AppendWorkloadHandler(f func(*model.WorkloadInstance, model.Event))
func (*Controller) DeleteRegistry ¶
func (c *Controller) DeleteRegistry(clusterID cluster.ID, providerID provider.ID)
DeleteRegistry deletes specified registry from the aggregated controller
func (*Controller) GetProxyServiceTargets ¶
func (c *Controller) GetProxyServiceTargets(node *model.Proxy) []model.ServiceTarget
GetProxyServiceTargets lists service instances co-located with a given proxy
func (*Controller) GetProxyWorkloadLabels ¶
func (c *Controller) GetProxyWorkloadLabels(proxy *model.Proxy) labels.Instance
func (*Controller) GetRegistries ¶
func (c *Controller) GetRegistries() []serviceregistry.Instance
GetRegistries returns a copy of all registries
func (*Controller) GetService ¶
func (c *Controller) GetService(hostname host.Name) *model.Service
GetService retrieves a service by hostname if exists
func (*Controller) HasSynced ¶
func (c *Controller) HasSynced() bool
HasSynced returns true when all registries have synced
func (*Controller) MCSServices ¶
func (c *Controller) MCSServices() []model.MCSServiceInfo
func (*Controller) NetworkGateways ¶
func (c *Controller) NetworkGateways() []model.NetworkGateway
NetworkGateways merges the service-based cross-network gateways from each registry.
func (*Controller) Policies ¶
func (c *Controller) Policies(requested sets.Set[model.ConfigKey]) []model.WorkloadAuthorization
func (*Controller) Run ¶
func (c *Controller) Run(stop <-chan struct{})
Run starts all the controllers
func (*Controller) Services ¶
func (c *Controller) Services() []*model.Service
Services lists services from all platforms
func (*Controller) ServicesForWaypoint ¶
func (c *Controller) ServicesForWaypoint(key model.WaypointKey) []model.ServiceInfo
func (*Controller) ServicesWithWaypoint ¶
func (c *Controller) ServicesWithWaypoint(key string) []model.ServiceWaypointInfo
func (*Controller) UnRegisterHandlersForCluster ¶
func (c *Controller) UnRegisterHandlersForCluster(id cluster.ID)
func (*Controller) WorkloadsForWaypoint ¶
func (c *Controller) WorkloadsForWaypoint(key model.WaypointKey) []model.WorkloadInfo