Documentation ¶
Index ¶
- Constants
- func DeleteGlobalnetObjects(smClientSet submclient.Interface, dynClient dynamic.Interface)
- func GetInternalSvcName(name string) string
- func NewGatewayResourceSyncerConfig(base *syncer.ResourceSyncerConfig, namespace string) *syncer.ResourceSyncerConfig
- func NewGlobalIngressIPController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool) (*globalIngressIPController, error)
- func NewServiceExportController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers, ...) (*serviceExportController, error)
- func RemoveStaleInternalServices(config *syncer.ResourceSyncerConfig) error
- func UninstallDataPath()
- type GatewayMonitorConfig
- type IngressEndpointsControllers
- type IngressPodControllers
- type Interface
- func NewClusterGlobalEgressIPController(config *syncer.ResourceSyncerConfig, localSubnets []string, pool *ipam.IPPool) (Interface, error)
- func NewGatewayController(config *syncer.ResourceSyncerConfig, informer cache.SharedInformer, ...) (Interface, error)
- func NewGatewayMonitor(config *GatewayMonitorConfig) (Interface, error)
- func NewGlobalEgressIPController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool) (Interface, error)
- func NewServiceController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers, ...) (Interface, error)
- type LeaderElectionConfig
- type LeaderElectionInfo
- type ServiceExportEndpointsControllers
- type Specification
Constants ¶
View Source
const ( ServiceRefLabel = "submariner.io/serviceRef" // InternalServicePrefix is a prefix used for internal services. InternalServicePrefix = "submariner-" // InternalServiceLabel is a label applied on the internal service created by Globalnet controller and // it points to the exported service. InternalServiceLabel = "submariner.io/exportedServiceRef" // InternalServiceFinalizer is applied on the internal services created by Globalnet controller // to protect them from accidental deletion. InternalServiceFinalizer = "submariner.io/globalnet-internal-service" // The prefix used for the ipset chains created by Globalnet pod. IPSetPrefix = "SM-GN-" AddRules = true DeleteRules = false DefaultNumberOfClusterEgressIPs = 8 LeaderElectionLockName = "submariner-globalnet-lock" )
Variables ¶
This section is empty.
Functions ¶
func DeleteGlobalnetObjects ¶ added in v0.12.0
func DeleteGlobalnetObjects(smClientSet submclient.Interface, dynClient dynamic.Interface)
func GetInternalSvcName ¶ added in v0.12.0
func NewGatewayResourceSyncerConfig ¶ added in v0.18.0
func NewGatewayResourceSyncerConfig(base *syncer.ResourceSyncerConfig, namespace string) *syncer.ResourceSyncerConfig
func NewGlobalIngressIPController ¶
func NewGlobalIngressIPController(config *syncer.ResourceSyncerConfig, pool *ipam.IPPool) (*globalIngressIPController, error)
func NewServiceExportController ¶
func NewServiceExportController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers, endpointsControllers *ServiceExportEndpointsControllers, ingressEndpointsControllers *IngressEndpointsControllers, ) (*serviceExportController, error)
func RemoveStaleInternalServices ¶ added in v0.15.0
func RemoveStaleInternalServices(config *syncer.ResourceSyncerConfig) error
func UninstallDataPath ¶ added in v0.12.0
func UninstallDataPath()
Types ¶
type GatewayMonitorConfig ¶ added in v0.16.1
type GatewayMonitorConfig struct { RestMapper meta.RESTMapper Client dynamic.Interface Scheme *runtime.Scheme LeaderElectionConfig Spec Specification LocalCIDRs []string LocalClusterCIDRs []string KubeClient kubernetes.Interface Hostname string }
type IngressEndpointsControllers ¶ added in v0.13.0
type IngressEndpointsControllers struct {
// contains filtered or unexported fields
}
func NewIngressEndpointsControllers ¶ added in v0.13.0
func NewIngressEndpointsControllers(config *syncer.ResourceSyncerConfig) (*IngressEndpointsControllers, error)
type IngressPodControllers ¶
type IngressPodControllers struct {
// contains filtered or unexported fields
}
func NewIngressPodControllers ¶
func NewIngressPodControllers(config *syncer.ResourceSyncerConfig) (*IngressPodControllers, error)
type Interface ¶
type Interface interface { Start() error Stop() }
func NewGatewayController ¶ added in v0.18.0
func NewGatewayController(config *syncer.ResourceSyncerConfig, informer cache.SharedInformer, pool *ipam.IPPool, hostName, namespace, cniIP string, ) (Interface, error)
func NewGatewayMonitor ¶
func NewGatewayMonitor(config *GatewayMonitorConfig) (Interface, error)
func NewServiceController ¶
func NewServiceController(config *syncer.ResourceSyncerConfig, podControllers *IngressPodControllers, serviceExportSyncer syncer.Interface, gipSyncer syncer.Interface, ) (Interface, error)
type LeaderElectionConfig ¶ added in v0.16.1
type LeaderElectionInfo ¶ added in v0.16.1
type LeaderElectionInfo struct {
// contains filtered or unexported fields
}
type ServiceExportEndpointsControllers ¶ added in v0.12.0
type ServiceExportEndpointsControllers struct {
// contains filtered or unexported fields
}
func NewServiceExportEndpointsControllers ¶ added in v0.12.0
func NewServiceExportEndpointsControllers(config *syncer.ResourceSyncerConfig) (*ServiceExportEndpointsControllers, error)
Source Files ¶
- base_controllers.go
- cluster_egressip_controller.go
- egress_pod_watcher.go
- endpoints_controller.go
- gateway_controller.go
- gateway_monitor.go
- global_egressip_controller.go
- global_ingressip_controller.go
- ingress_endpoints_controller.go
- ingress_endpoints_controllers.go
- ingress_pod_controller.go
- ingress_pod_controllers.go
- service_controller.go
- service_export_controller.go
- service_export_endpoints_controllers.go
- types.go
- uninstall.go
Click to show internal directories.
Click to hide internal directories.