Documentation
¶
Overview ¶
This package is copied from Kubernetes project. https://github.com/kubernetes/kubernetes/blob/v1.23.0/pkg/proxy/config/config.go Added DestinationRuleHandler to listen to the events of the destination rule object
Index ¶
- type DestinationRuleConfig
- type DestinationRuleHandler
- type EndpointSliceConfig
- type EndpointSliceHandler
- type EndpointsConfig
- type EndpointsHandler
- type NodeConfig
- type NodeHandler
- type NoopEndpointSliceHandler
- func (*NoopEndpointSliceHandler) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice)
- func (*NoopEndpointSliceHandler) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice)
- func (*NoopEndpointSliceHandler) OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice)
- func (*NoopEndpointSliceHandler) OnEndpointSlicesSynced()
- type NoopNodeHandler
- type ServiceConfig
- type ServiceHandler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DestinationRuleConfig ¶
type DestinationRuleConfig struct {
// contains filtered or unexported fields
}
DestinationRuleConfig tracks a set of destination rule configurations.
func NewDestinationRuleConfig ¶
func NewDestinationRuleConfig( drInformer istioinformers.DestinationRuleInformer, resyncPeriod time.Duration) *DestinationRuleConfig
NewDestinationRuleConfig creates a new DestinationRuleConfig.
func (*DestinationRuleConfig) RegisterEventHandler ¶
func (c *DestinationRuleConfig) RegisterEventHandler(handler DestinationRuleHandler)
RegisterEventHandler registers a handler which is called on every destination rule change.
func (*DestinationRuleConfig) Run ¶
func (c *DestinationRuleConfig) Run(stopCh <-chan struct{})
Run starts the goroutine responsible for calling registered handlers.
type DestinationRuleHandler ¶
type DestinationRuleHandler interface { // OnDestinationRuleAdd is called whenever creation of new destination rule // object is observed. OnDestinationRuleAdd(dr *istioapi.DestinationRule) // OnDestinationRuleUpdate is called whenever modification of an existing // destination rule object is observed. OnDestinationRuleUpdate(oldDr, dr *istioapi.DestinationRule) // OnDestinationDelete is called whenever deletion of an existing // destination rule object is observed. OnDestinationRuleDelete(dr *istioapi.DestinationRule) // OnDestinationSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. OnDestinationRuleSynced() }
DestinationRuleHandler is an abstract interface of objects which receive notifications about node object changes.
type EndpointSliceConfig ¶
type EndpointSliceConfig struct {
// contains filtered or unexported fields
}
EndpointSliceConfig tracks a set of endpoints configurations.
func NewEndpointSliceConfig ¶
func NewEndpointSliceConfig(endpointSliceInformer discoveryinformers.EndpointSliceInformer, resyncPeriod time.Duration) *EndpointSliceConfig
NewEndpointSliceConfig creates a new EndpointSliceConfig.
func (*EndpointSliceConfig) RegisterEventHandler ¶
func (c *EndpointSliceConfig) RegisterEventHandler(handler EndpointSliceHandler)
RegisterEventHandler registers a handler which is called on every endpoint slice change.
func (*EndpointSliceConfig) Run ¶
func (c *EndpointSliceConfig) Run(stopCh <-chan struct{})
Run waits for cache synced and invokes handlers after syncing.
type EndpointSliceHandler ¶
type EndpointSliceHandler interface { // OnEndpointSliceAdd is called whenever creation of new endpoint slice // object is observed. OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice) // OnEndpointSliceUpdate is called whenever modification of an existing // endpoint slice object is observed. OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice) // OnEndpointSliceDelete is called whenever deletion of an existing // endpoint slice object is observed. OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice) // OnEndpointSlicesSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. OnEndpointSlicesSynced() }
EndpointSliceHandler is an abstract interface of objects which receive notifications about endpoint slice object changes.
type EndpointsConfig ¶
type EndpointsConfig struct {
// contains filtered or unexported fields
}
EndpointsConfig tracks a set of endpoints configurations.
func NewEndpointsConfig ¶
func NewEndpointsConfig(endpointsInformer coreinformers.EndpointsInformer, resyncPeriod time.Duration) *EndpointsConfig
NewEndpointsConfig creates a new EndpointsConfig.
func (*EndpointsConfig) RegisterEventHandler ¶
func (c *EndpointsConfig) RegisterEventHandler(handler EndpointsHandler)
RegisterEventHandler registers a handler which is called on every endpoints change.
func (*EndpointsConfig) Run ¶
func (c *EndpointsConfig) Run(stopCh <-chan struct{})
Run waits for cache synced and invokes handlers after syncing.
type EndpointsHandler ¶
type EndpointsHandler interface { // OnEndpointsAdd is called whenever creation of new endpoints object // is observed. OnEndpointsAdd(endpoints *v1.Endpoints) // OnEndpointsUpdate is called whenever modification of an existing // endpoints object is observed. OnEndpointsUpdate(oldEndpoints, endpoints *v1.Endpoints) // OnEndpointsDelete is called whenever deletion of an existing endpoints // object is observed. OnEndpointsDelete(endpoints *v1.Endpoints) // OnEndpointsSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. OnEndpointsSynced() }
EndpointsHandler is an abstract interface of objects which receive notifications about endpoints object changes. This is not a required sub-interface of proxy.Provider, and proxy implementations should not implement it unless they can't handle EndpointSlices.
type NodeConfig ¶
type NodeConfig struct {
// contains filtered or unexported fields
}
NodeConfig tracks a set of node configurations. It accepts "set", "add" and "remove" operations of node via channels, and invokes registered handlers on change.
func NewNodeConfig ¶
func NewNodeConfig(nodeInformer coreinformers.NodeInformer, resyncPeriod time.Duration) *NodeConfig
NewNodeConfig creates a new NodeConfig.
func (*NodeConfig) RegisterEventHandler ¶
func (c *NodeConfig) RegisterEventHandler(handler NodeHandler)
RegisterEventHandler registers a handler which is called on every node change.
func (*NodeConfig) Run ¶
func (c *NodeConfig) Run(stopCh <-chan struct{})
Run starts the goroutine responsible for calling registered handlers.
type NodeHandler ¶
type NodeHandler interface { // OnNodeAdd is called whenever creation of new node object // is observed. OnNodeAdd(node *v1.Node) // OnNodeUpdate is called whenever modification of an existing // node object is observed. OnNodeUpdate(oldNode, node *v1.Node) // OnNodeDelete is called whenever deletion of an existing node // object is observed. OnNodeDelete(node *v1.Node) // OnNodeSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. OnNodeSynced() }
NodeHandler is an abstract interface of objects which receive notifications about node object changes.
type NoopEndpointSliceHandler ¶
type NoopEndpointSliceHandler struct{}
NoopEndpointSliceHandler is a noop handler for proxiers that have not yet implemented a full EndpointSliceHandler.
func (*NoopEndpointSliceHandler) OnEndpointSliceAdd ¶
func (*NoopEndpointSliceHandler) OnEndpointSliceAdd(endpointSlice *discovery.EndpointSlice)
OnEndpointSliceAdd is a noop handler for EndpointSlice creates.
func (*NoopEndpointSliceHandler) OnEndpointSliceDelete ¶
func (*NoopEndpointSliceHandler) OnEndpointSliceDelete(endpointSlice *discovery.EndpointSlice)
OnEndpointSliceDelete is a noop handler for EndpointSlice deletes.
func (*NoopEndpointSliceHandler) OnEndpointSliceUpdate ¶
func (*NoopEndpointSliceHandler) OnEndpointSliceUpdate(oldEndpointSlice, newEndpointSlice *discovery.EndpointSlice)
OnEndpointSliceUpdate is a noop handler for EndpointSlice updates.
func (*NoopEndpointSliceHandler) OnEndpointSlicesSynced ¶
func (*NoopEndpointSliceHandler) OnEndpointSlicesSynced()
OnEndpointSlicesSynced is a noop handler for EndpointSlice syncs.
type NoopNodeHandler ¶
type NoopNodeHandler struct{}
NoopNodeHandler is a noop handler for proxiers that have not yet implemented a full NodeHandler.
func (*NoopNodeHandler) OnNodeAdd ¶
func (*NoopNodeHandler) OnNodeAdd(node *v1.Node)
OnNodeAdd is a noop handler for Node creates.
func (*NoopNodeHandler) OnNodeDelete ¶
func (*NoopNodeHandler) OnNodeDelete(node *v1.Node)
OnNodeDelete is a noop handler for Node deletes.
func (*NoopNodeHandler) OnNodeSynced ¶
func (*NoopNodeHandler) OnNodeSynced()
OnNodeSynced is a noop handler for Node syncs.
func (*NoopNodeHandler) OnNodeUpdate ¶
func (*NoopNodeHandler) OnNodeUpdate(oldNode, node *v1.Node)
OnNodeUpdate is a noop handler for Node updates.
type ServiceConfig ¶
type ServiceConfig struct {
// contains filtered or unexported fields
}
ServiceConfig tracks a set of service configurations.
func NewServiceConfig ¶
func NewServiceConfig(serviceInformer coreinformers.ServiceInformer, resyncPeriod time.Duration) *ServiceConfig
NewServiceConfig creates a new ServiceConfig.
func (*ServiceConfig) RegisterEventHandler ¶
func (c *ServiceConfig) RegisterEventHandler(handler ServiceHandler)
RegisterEventHandler registers a handler which is called on every service change.
func (*ServiceConfig) Run ¶
func (c *ServiceConfig) Run(stopCh <-chan struct{})
Run waits for cache synced and invokes handlers after syncing.
type ServiceHandler ¶
type ServiceHandler interface { // OnServiceAdd is called whenever creation of new service object // is observed. OnServiceAdd(service *v1.Service) // OnServiceUpdate is called whenever modification of an existing // service object is observed. OnServiceUpdate(oldService, service *v1.Service) // OnServiceDelete is called whenever deletion of an existing service // object is observed. OnServiceDelete(service *v1.Service) // OnServiceSynced is called once all the initial event handlers were // called and the state is fully propagated to local cache. OnServiceSynced() }
ServiceHandler is an abstract interface of objects which receive notifications about service object changes.