Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OvnClusterController ¶
type OvnClusterController struct { Kube kube.Interface KubeServer string CACert string Token string ClusterIPNet *net.IPNet HostSubnetLength uint32 GatewayInit bool GatewayIntf string GatewayNextHop string NorthDBServerAuth *OvnDBAuth NorthDBClientAuth *OvnDBAuth SouthDBServerAuth *OvnDBAuth SouthDBClientAuth *OvnDBAuth StartNodeWatch func(handler cache.ResourceEventHandler) // contains filtered or unexported fields }
OvnClusterController is the object holder for utilities meant for cluster management
func (*OvnClusterController) SetupMaster ¶
func (cluster *OvnClusterController) SetupMaster(masterNodeName string, masterSwitchNetwork string) error
SetupMaster calls the external script to create the switch and central routers for the network
func (*OvnClusterController) StartClusterMaster ¶
func (cluster *OvnClusterController) StartClusterMaster(masterNodeName string) error
StartClusterMaster runs a subnet IPAM and a controller that watches arrival/departure of nodes in the cluster On an addition to the cluster (node create), a new subnet is created for it that will translate to creation of a logical switch (done by the node, but could be created here at the master process too) Upon deletion of a node, the switch will be deleted
TODO: Verify that the cluster was not already called with a different global subnet
If true, then either quit or perform a complete reconfiguration of the cluster (recreate switches/routers with new subnet values)
func (*OvnClusterController) StartClusterNode ¶
func (cluster *OvnClusterController) StartClusterNode(name string) error
StartClusterNode learns the subnet assigned to it by the master controller and calls the SetupNode script which establishes the logical switch
type OvnDBAuth ¶
type OvnDBAuth struct { URL string PrivKey string Cert string CACert string // contains filtered or unexported fields }
OvnDBAuth describes an OVN database location and authentication method
func NewOvnDBAuth ¶
NewOvnDBAuth returns an OvnDBAuth object describing the connection to an OVN database, given a connection description string and authentication details
type OvnDBScheme ¶
type OvnDBScheme string
OvnDBScheme describes the OVN database connection transport method
const ( // OvnHostSubnet is the constant string representing the annotation key OvnHostSubnet = "ovn_host_subnet" // OvnDBSchemeSSL specifies SSL as the OVN database transport method OvnDBSchemeSSL OvnDBScheme = "ssl" // OvnDBSchemeTCP specifies TCP as the OVN database transport method OvnDBSchemeTCP OvnDBScheme = "tcp" // OvnDBSchemeUnix specifies Unix domains sockets as the OVN database transport method OvnDBSchemeUnix OvnDBScheme = "unix" )