def delete_network(self, context, network_id): v = self.get_network(context,network_id) self.networkdb.delete_network(context, network_id) v.update({'operation' : 'delete'}) delta={} delta.update({'network_delta':v}) networkdelta = self.cnsdelta.create_network_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'delete_virtual_network','payload':networkdelta}) delta={} version = networkdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta)
def delete_port(self, context, port_id): v = self.get_port(context, port_id) self.networkdb.delete_port(context, port_id) v.update({'operation' : 'delete'}) delta={} delta.update({'port_delta':v}) portdelta = self.cnsdelta.create_port_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'delete_port','payload':portdelta}) delta={} version = portdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta)
def delete_instance(self, context, instance_id): v = self.get_instance(context, instance_id) self.novadb.delete_instance(context, instance_id) v.update({'operation' : 'delete'}) delta={} delta.update({'instance_delta':v}) instancedelta = self.cnsdelta.create_instance_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'delete_instance','payload':instancedelta}) delta={} version = instancedelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta)
def update_subnet(self, context, subnet_id, subnet): v = self.networkdb.update_subnet(context, subnet_id, subnet) data = v v.update({'operation' : 'update'}) delta={} delta.update({'subnet_delta':v}) subnetdelta = self.cnsdelta.create_subnet_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'update_subnet','payload':subnetdelta}) delta={} version = subnetdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta) return data
def create_compute(self, context, compute): v = self.novadb.create_compute(context, compute) data = v v.update({'operation' : 'create'}) delta={} delta.update({'compute_delta':v}) datapathdelta = self.cnsdelta.create_compute_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'create_datapath','payload':datapathdelta}) delta={} version = datapathdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta) return data
def create_port(self, context, port): time.sleep(2) v = self.networkdb.create_port(context, port) data = v v.update({'operation' : 'create'}) delta={} delta.update({'port_delta':v}) portdelta = self.cnsdelta.create_port_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'create_port','payload':portdelta}) delta={} version = portdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta) return data
def create_nwport(self, context, nwport): utils = CertificateAuthority() network_type = nwport['nwport']['network_type'] name = nwport['nwport']['name'] integration_bridge = nwport['nwport']['bridge'] ovs_port = nwport['nwport']['ovs_port'] ip_address = nwport['nwport']['ip_address'] data_ip = nwport['nwport']['data_ip'] vxlan_udp_port = nwport['nwport']['vxlan_udpport'] filters={} filters['ip_address'] = [ip_address] filters['data_ip'] = [data_ip] nwports = self.get_nwports(context,filters=filters) co_nwports = len(nwports) #LOG.debug(_("Count of flows [%s]"), co_nwports) if co_nwports == 0: if data_ip != '0': vsctl_cmd = "ovs-vsctl --db=tcp:"+ip_address+":"+ovs_port+" --may-exist add-port "+integration_bridge+" "+name+" -- set Interface "+name+" type="+network_type+" options:key=flow options:remote_ip="+data_ip+" options:dst_port="+vxlan_udp_port #LOG.debug(_("Executing command [%s]"), vsctl_cmd) utils.execute_command(vsctl_cmd) elif data_ip == '0': vsctl_cmd = "ovs-vsctl --db=tcp:"+ip_address+":"+ovs_port+" --may-exist add-port "+integration_bridge+" "+name+" -- set Interface "+name+" type="+network_type+" options:remote_ip=flow options:key=flow options:dst_port="+vxlan_udp_port #LOG.debug(_("Executing command [%s]"), vsctl_cmd) utils.execute_command(vsctl_cmd) v = self.novadb.create_nwport(context, nwport) data = v v.update({'operation' : 'create'}) delta={} delta.update({'nwport_delta':v}) portdelta = self.cnsdelta.create_nwport_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'create_nwport','payload':portdelta}) delta={} version = portdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta) return data
def create_network(self, context, network): segments = network['network']['segments'] if segments: network_type = segments[0]['network_type'] physical_network = segments[0]['physical_network'] segmentation_id = segments[0]['segmentation_id'] network['network']['network_type'] = network_type network['network']['physical_network'] = physical_network network['network']['segmentation_id'] = segmentation_id network['network']['segments'] = '' v = self.networkdb.create_network(context, network) data = v v.update({'operation' : 'create'}) delta={} delta.update({'network_delta':v}) networkdelta = self.cnsdelta.create_network_delta(context,delta) fanoutmsg = {} fanoutmsg.update({'method':'create_virtual_network','payload':networkdelta}) delta={} version = networkdelta['version_id'] delta[version] = fanoutmsg self.send_fanout(context,'call_consumer',delta) return data