func Node(registry *osdn.OsdnRegistryInterface, hostname string, publicIP string, ready chan struct{}, plugin knetwork.NetworkPlugin, mtu uint) { mp, ok := plugin.(*MultitenantPlugin) if !ok { glog.Fatalf("Failed to type cast provided plugin to a multitenant type plugin") } kc, err := ovssubnet.NewMultitenantController(registry, hostname, publicIP, ready) if err != nil { glog.Fatalf("SDN initialization failed: %v", err) } mp.OvsController = kc err = kc.StartNode(mtu) if err != nil { glog.Fatalf("SDN Node failed: %v", err) } }
func Master(registry *osdn.OsdnRegistryInterface, clusterNetworkCIDR string, clusterBitsPerSubnet uint, serviceNetworkCIDR string) { // get hostname from the gateway output, err := exec.New().Command("uname", "-n").CombinedOutput() if err != nil { glog.Fatalf("SDN initialization failed: %v", err) } host := strings.TrimSpace(string(output)) kc, err := ovssubnet.NewMultitenantController(registry, host, "", nil) if err != nil { glog.Fatalf("SDN initialization failed: %v", err) } kc.AdminNamespaces = append(kc.AdminNamespaces, "default") err = kc.StartMaster(clusterNetworkCIDR, clusterBitsPerSubnet, serviceNetworkCIDR) if err != nil { glog.Fatalf("SDN initialization failed: %v", err) } }