X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=host_thread.py;h=d8bca2e2e1ca13d091a34566d29610672f520cb8;hb=refs%2Fchanges%2F17%2F1317%2F3;hp=4da532850b7944e9f5863613ca8af713039523a3;hpb=c1d1d47cee5bd382fd9e2ca4d829aef0f545a0d1;p=osm%2Fopenvim.git diff --git a/host_thread.py b/host_thread.py index 4da5328..d8bca2e 100644 --- a/host_thread.py +++ b/host_thread.py @@ -341,23 +341,20 @@ class host_thread(threading.Thread): elif task[0] == 'new-ovsbridge': print self.name, ": Creating compute OVS bridge" self.create_ovs_bridge() - break elif task[0] == 'new-vxlan': print self.name, ": Creating vxlan tunnel=" + task[1] + ", remote ip=" + task[2] self.create_ovs_vxlan_tunnel(task[1], task[2]) - break elif task[0] == 'del-ovsbridge': print self.name, ": Deleting OVS bridge" self.delete_ovs_bridge() - break elif task[0] == 'del-vxlan': print self.name, ": Deleting vxlan " + task[1] + " tunnel" self.delete_ovs_vxlan_tunnel(task[1]) - break elif task[0] == 'create-ovs-bridge-port': print self.name, ": Adding port ovim-" + task[1] + " to OVS bridge" self.create_ovs_bridge_port(task[1]) elif task[0] == 'del-ovs-port': + print self.name, ": Delete bridge attached to ovs port vlan {} net {}".format(task[1], task[2]) self.delete_bridge_port_attached_to_ovs(task[1], task[2]) else: print self.name, ": unknown task", task @@ -504,8 +501,12 @@ class host_thread(threading.Thread): self.tab()+'' +\ self.tab()+''+ \ self.dec_tab() +'' - if windows_os or topo=="oneSocket": - text += self.tab() + " "% vcpus + if topo == "oneSocket:hyperthreading": + if vcpus % 2 != 0: + return -1, 'Cannot expose hyperthreading with an odd number of vcpus' + text += self.tab() + " " % vcpus/2 + elif windows_os or topo == "oneSocket": + text += self.tab() + " " % vcpus else: text += self.tab() + "" text += self.tab() + "" +\ @@ -1030,7 +1031,7 @@ class host_thread(threading.Thread): else: return False - def launch_dhcp_server(self, vlan, ip_range, netmask, dhcp_path): + def launch_dhcp_server(self, vlan, ip_range, netmask, dhcp_path, gateway): """ Generate a linux bridge and attache the port to a OVS bridge :param self: @@ -1038,6 +1039,7 @@ class host_thread(threading.Thread): :param ip_range: IP dhcp range :param netmask: network netmask :param dhcp_path: dhcp conf file path that live in namespace side + :param gateway: Gateway address for dhcp net :return: True if success """ @@ -1072,7 +1074,8 @@ class host_thread(threading.Thread): if not content: command = 'sudo ip netns exec ' + net_namespace + ' /usr/sbin/dnsmasq --strict-order --except-interface=lo ' \ '--interface=' + interface + ' --bind-interfaces --dhcp-hostsdir=' + dhcp_path + \ - ' --dhcp-range ' + dhcp_range + ' --pid-file=' + pid_file + ' --dhcp-leasefile=' + leases_path + ' --listen-address ' + ip_range[0] + ' --dhcp-range ' + dhcp_range + ' --pid-file=' + pid_file + ' --dhcp-leasefile=' + leases_path + \ + ' --listen-address ' + gateway print self.name, ': command:', command (_, stdout, _) = self.ssh_conn.exec_command(command)