Documentation ¶
Index ¶
- Constants
- Variables
- func RegisterBigIPSchemaTypes()
- type BigIPv4FormatChecker
- type BigIPv6FormatChecker
- type EventNotifier
- type FwdRuleMap
- type HostFwdRuleMap
- type Manager
- func (appMgr *Manager) AddNamespace(namespace string, cfgMapSelector labels.Selector, resyncPeriod time.Duration) error
- func (appMgr *Manager) AddNamespaceLabelInformer(labelSelector labels.Selector, resyncPeriod time.Duration) error
- func (appMgr *Manager) GetAllWatchedNamespaces() []string
- func (appMgr *Manager) GetNamespaceLabelInformer() cache.SharedIndexInformer
- func (appMgr *Manager) GetWatchedNamespaces() []string
- func (appMgr *Manager) GetWatchedNamespacesLockless() []string
- func (appMgr *Manager) IsNodePort() bool
- func (appMgr *Manager) ProcessNodeUpdate(obj interface{}, err error)
- func (appMgr *Manager) Run(stopCh <-chan struct{})
- func (appMgr *Manager) UseNodeInternal() bool
- type NamespaceEventNotifier
- type NamespaceEventNotifierMap
- type NewBroadcasterFunc
- type Node
- type Params
- type ResourceMap
- type RouteConfig
- type RouteList
- type RoutesMap
- type ServiceFwdRuleMap
- type SvcEndPointsCache
- type WatchedNamespaces
Constants ¶
const ( // Kinds of Resources Namespaces = "namespaces" Services = "services" Endpoints = "endpoints" Configmaps = "configmaps" Ingresses = "ingresses" Routes = "routes" Secrets = "secrets" IngressClasses = "ingressclasses" )
const (
F5RouterName = "F5 BIG-IP"
)
Variables ¶
var RoutesProcessed []*routeapi.Route
Functions ¶
Types ¶
type BigIPv4FormatChecker ¶
type BigIPv4FormatChecker struct{}
Big-IP ipv4/ipv6 checkers
func (BigIPv4FormatChecker) IsFormat ¶
func (f BigIPv4FormatChecker) IsFormat(input interface{}) bool
type BigIPv6FormatChecker ¶
type BigIPv6FormatChecker struct{}
func (BigIPv6FormatChecker) IsFormat ¶
func (f BigIPv6FormatChecker) IsFormat(input interface{}) bool
type EventNotifier ¶
type EventNotifier struct {
// contains filtered or unexported fields
}
func NewEventNotifier ¶
func NewEventNotifier(bfunc NewBroadcasterFunc) *EventNotifier
func (*EventNotifier) CreateNotifierForNamespace ¶
func (en *EventNotifier) CreateNotifierForNamespace( namespace string, coreIntf corev1.CoreV1Interface, ) *NamespaceEventNotifier
Create a notifier for a namespace, or return the existing one
func (*EventNotifier) DeleteNotifierForNamespace ¶
func (en *EventNotifier) DeleteNotifierForNamespace(namespace string)
func (*EventNotifier) GetNotifierForNamespace ¶
func (en *EventNotifier) GetNotifierForNamespace( namespace string, ) *NamespaceEventNotifier
Get the notifier for a namespace
type FwdRuleMap ¶
key is path regex, data unused. Using a map as go doesn't have a set type.
type HostFwdRuleMap ¶
type HostFwdRuleMap map[string]FwdRuleMap
key is fqdn host name, data is map of paths.
type Manager ¶
type Manager struct { DynamicNS bool WatchedNS WatchedNamespaces RoutesProcessed RoutesMap AgentCIS cisAgent.CISAgentInterface K8sVersion string TeemData *teem.TeemsData // contains filtered or unexported fields }
func NewManager ¶
Create and return a new app manager that meets the Manager interface
func (*Manager) AddNamespace ¶
func (*Manager) AddNamespaceLabelInformer ¶
func (appMgr *Manager) AddNamespaceLabelInformer( labelSelector labels.Selector, resyncPeriod time.Duration, ) error
AddNamespaceLabelInformer spins an informer to watch all namespaces with matching label
func (*Manager) GetAllWatchedNamespaces ¶
Get all Namespaces being watched based on Namespaces provided, Namespace Label or all
func (*Manager) GetNamespaceLabelInformer ¶
func (appMgr *Manager) GetNamespaceLabelInformer() cache.SharedIndexInformer
func (*Manager) GetWatchedNamespaces ¶
func (*Manager) GetWatchedNamespacesLockless ¶
func (*Manager) IsNodePort ¶
func (*Manager) ProcessNodeUpdate ¶
Check for a change in Node state
func (*Manager) UseNodeInternal ¶
type NamespaceEventNotifier ¶
type NamespaceEventNotifier struct {
// contains filtered or unexported fields
}
func (*NamespaceEventNotifier) RecordEvent ¶
func (nen *NamespaceEventNotifier) RecordEvent( obj runtime.Object, eventType, reason, message string, )
type NamespaceEventNotifierMap ¶
type NamespaceEventNotifierMap map[string]*NamespaceEventNotifier
type NewBroadcasterFunc ¶
type NewBroadcasterFunc func() record.EventBroadcaster
type Params ¶
type Params struct { KubeClient kubernetes.Interface RouteClientV1 routeclient.RouteV1Interface UseNodeInternal bool IsNodePort bool RouteConfig RouteConfig ResolveIngress string DefaultIngIP string VsSnatPoolName string NodeLabelSelector string UseSecrets bool SchemaLocal string EventChan chan interface{} ManageConfigMaps bool ManageIngress bool ManageIngressClassOnly bool HubMode bool IngressClass string Agent string SchemaLocalPath string TrustedCertsCfgmap string // Data group path DgPath string AgRspChan chan interface{} ProcessAgentLabels func(map[string]string, string, string) bool UserAgent string DefaultRouteDomain int // contains filtered or unexported fields }
Struct to allow NewManager to receive all or only specific parameters.
type ResourceMap ¶
type ResourceMap map[int32][]*ResourceConfig
type RouteConfig ¶
type RouteConfig struct { RouteVSAddr string RouteLabel string HttpVs string HttpsVs string ClientSSL string ServerSSL string }
Configuration options for Routes in OpenShift
type ServiceFwdRuleMap ¶
type ServiceFwdRuleMap map[serviceQueueKey]HostFwdRuleMap
key is namespace/serviceName, data is map of host to paths.
func NewServiceFwdRuleMap ¶
func NewServiceFwdRuleMap() ServiceFwdRuleMap
func (ServiceFwdRuleMap) AddEntry ¶
func (sfrm ServiceFwdRuleMap) AddEntry(ns, svc, host, path string)
func (ServiceFwdRuleMap) AddToDataGroup ¶
func (sfrm ServiceFwdRuleMap) AddToDataGroup(dgMap DataGroupNamespaceMap)
type SvcEndPointsCache ¶
type SvcEndPointsCache struct {
// contains filtered or unexported fields
}
type WatchedNamespaces ¶
Watched Namespaces for global availability.