Documentation ¶
Index ¶
- Constants
- func InitClientGoMetrics()
- func InitWorkQueueMetrics()
- type Configuration
- type Controller
- func (c *Controller) CheckGatewayReady()
- func (c *Controller) CheckNodePortGroup()
- func (c *Controller) GenVpcLoadBalancer(vpcKey string) *VpcLoadBalancer
- func (c *Controller) InitDefaultVpc() error
- func (c *Controller) InitIPAM() error
- func (c *Controller) InitOVN() error
- func (c *Controller) RemoveRedundantChassis(node *v1.Node) error
- func (c *Controller) Run(stopCh <-chan struct{})
- type VpcLoadBalancer
Constants ¶
View Source
const ( NAT_GW_INIT = "init" NAT_GW_FLOATING_IP_SYNC = "floating-ip-sync" NAT_GW_EIP_ADD = "eip-add" NAT_GW_EIP_DEL = "eip-del" NAT_GW_SNAT_SYNC = "snat-sync" NAT_GW_DNAT_SYNC = "dnat-sync" NAT_GW_SUBNET_ROUTE_ADD = "subnet-route-add" NAT_GW_SUBNET_ROUTE_DEL = "subnet-route-del" )
Variables ¶
This section is empty.
Functions ¶
func InitClientGoMetrics ¶ added in v1.7.0
func InitClientGoMetrics()
func InitWorkQueueMetrics ¶ added in v1.7.0
func InitWorkQueueMetrics()
Types ¶
type Configuration ¶
type Configuration struct { BindAddress string OvnNbAddr string OvnSbAddr string OvnTimeout int KubeConfigFile string KubeRestConfig *rest.Config KubeClient kubernetes.Interface KubeOvnClient clientset.Interface AttachNetClient attacnetclientset.Interface DefaultLogicalSwitch string DefaultCIDR string DefaultGateway string DefaultExcludeIps string ClusterRouter string NodeSwitch string NodeSwitchCIDR string NodeSwitchGateway string ClusterTcpLoadBalancer string ClusterUdpLoadBalancer string ClusterTcpSessionLoadBalancer string ClusterUdpSessionLoadBalancer string PodName string PodNamespace string PodNicType string WorkerNum int PprofPort int NetworkType string DefaultProviderName string DefaultHostInterface string DefaultVlanName string DefaultVlanID int EnableLb bool EnableNP bool EnableExternalVpc bool }
Configuration is the controller conf
func ParseFlags ¶
func ParseFlags() (*Configuration, error)
ParseFlags parses cmd args then init kubeclient and conf TODO: validate configuration
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller is kube-ovn main controller that watch ns/pod/node/svc/ep and operate ovn
func NewController ¶
func NewController(config *Configuration) *Controller
NewController returns a new ovn controller
func (*Controller) CheckGatewayReady ¶ added in v1.7.0
func (c *Controller) CheckGatewayReady()
func (*Controller) CheckNodePortGroup ¶ added in v1.8.0
func (c *Controller) CheckNodePortGroup()
func (*Controller) GenVpcLoadBalancer ¶ added in v1.8.0
func (c *Controller) GenVpcLoadBalancer(vpcKey string) *VpcLoadBalancer
func (*Controller) InitDefaultVpc ¶ added in v1.7.0
func (c *Controller) InitDefaultVpc() error
func (*Controller) InitIPAM ¶ added in v1.7.0
func (c *Controller) InitIPAM() error
func (*Controller) InitOVN ¶ added in v1.7.0
func (c *Controller) InitOVN() error
func (*Controller) RemoveRedundantChassis ¶ added in v1.8.2
func (c *Controller) RemoveRedundantChassis(node *v1.Node) error
func (*Controller) Run ¶
func (c *Controller) Run(stopCh <-chan struct{})
Run will set up the event handlers for types we are interested in, as well as syncing informer caches and starting workers. It will block until stopCh is closed, at which point it will shutdown the workqueue and wait for workers to finish processing their current work items.
Source Files ¶
- client_go_adapter.go
- config.go
- controller.go
- election.go
- endpoint.go
- exporter.go
- external-gw.go
- external_vpc.go
- gc.go
- init.go
- inspection.go
- ip.go
- namespace.go
- net_metrics.go
- network_policy.go
- node.go
- ovn-ic.go
- pod.go
- provider-network.go
- security_group.go
- service.go
- subnet.go
- vlan.go
- vpc.go
- vpc_nat_gateway.go
- workqueue_metrics.go
Click to show internal directories.
Click to hide internal directories.