Exemple #1
0
    def plug(self, instance, vif):
        """Plug into Contrail's network port

        Bind the vif to a Contrail virtual port.
        """
        dev = vif.devname
        ip_addr = '0.0.0.0'
        ip6_addr = None
        subnets = vif.network.subnets
        for subnet in subnets:
            if not subnet.ips:
                continue
            ips = subnet.ips[0]
            if not ips.address:
                continue
            if ips.version == 4:
                if ips.address is not None:
                    ip_addr = ips.address
            if ips.version == 6:
                if ips.address is not None:
                    ip6_addr = ips.address

        ptype = 'NovaVMPort'
        if self.config.get('libvirt_virt_type') == 'lxc':
            ptype = 'NameSpacePort'

        cmd_args = ("--oper=add --uuid=%s --instance_uuid=%s --vn_uuid=%s "
                    "--vm_project_uuid=%s --ip_address=%s --ipv6_address=%s"
                    " --vm_name=%s --mac=%s --tap_name=%s --port_type=%s "
                    "--tx_vlan_id=%d --rx_vlan_id=%d" %
                    (vif.id, instance.uuid, vif.network.id,
                     instance.project_id, ip_addr, ip6_addr,
                     instance.display_name, vif.address, dev, ptype, -1, -1))
        linux_net.create_tap_dev(dev)
        processutils.execute('sudo', 'vrouter-port-control', cmd_args)
Exemple #2
0
    def plug(self, instance, vif):
        """Plug into MidoNet's network port

        Bind the vif to a MidoNet virtual port.
        """
        dev = vif.devname
        port_id = vif.id
        linux_net.create_tap_dev(dev)
        processutils.execute("sudo", "mm-ctl", "--bind-port", port_id, dev)
Exemple #3
0
    def plug(self, instance, vif):
        """Plug into MidoNet's network port

        Bind the vif to a MidoNet virtual port.
        """
        dev = vif.devname
        port_id = vif.id
        linux_net.create_tap_dev(dev)
        processutils.execute('sudo', 'mm-ctl', '--bind-port', port_id, dev)
Exemple #4
0
    def plug(self, instance, vif):
        """Plug using PLUMgrid IO Visor Driver

        Connect a network device to their respective
        Virtual Domain in PLUMgrid Platform.
        """
        dev = vif.devname
        iface_id = vif.id
        linux_net.create_tap_dev(dev)
        net_id = vif.network.id
        tenant_id = instance.project_id
        processutils.execute('sudo', 'ifc_ctl', 'gateway', 'add_port', dev)
        processutils.execute('sudo', 'ifc_ctl', 'gateway', 'ifup', dev,
                             'access_vm', vif.network.label + "_" + iface_id,
                             vif.address, 'pgtag2=%s' % net_id,
                             'pgtag1=%s' % tenant_id)
Exemple #5
0
    def plug(self, instance, vif):
        """Plug using PLUMgrid IO Visor Driver

        Connect a network device to their respective
        Virtual Domain in PLUMgrid Platform.
        """
        dev = vif.devname
        iface_id = vif.id
        linux_net.create_tap_dev(dev)
        net_id = vif.network.id
        tenant_id = instance.project_id
        processutils.execute('sudo', 'ifc_ctl', 'gateway', 'add_port', dev)
        processutils.execute('sudo', 'ifc_ctl', 'gateway', 'ifup', dev,
                             'access_vm',
                             vif.network.label + "_" + iface_id,
                             vif.address, 'pgtag2=%s' % net_id,
                             'pgtag1=%s' % tenant_id)
Exemple #6
0
    def plug(self, instance, vif):
        """Plug into Contrail's network port

        Bind the vif to a Contrail virtual port.
        """
        dev = vif.devname
        ip_addr = '0.0.0.0'
        ip6_addr = None
        subnets = vif.network.subnets
        for subnet in subnets:
            if not subnet.ips:
                continue
            ips = subnet.ips[0]
            if not ips.address:
                continue
            if ips.version == 4:
                if ips.address is not None:
                    ip_addr = ips.address
            if ips.version == 6:
                if ips.address is not None:
                    ip6_addr = ips.address

        ptype = 'NovaVMPort'
        if self.config.get('libvirt_virt_type') == 'lxc':
            ptype = 'NameSpacePort'

        cmd_args = ("--oper=add --uuid=%s --instance_uuid=%s --vn_uuid=%s "
                    "--vm_project_uuid=%s --ip_address=%s --ipv6_address=%s"
                    " --vm_name=%s --mac=%s --tap_name=%s --port_type=%s "
                    "--tx_vlan_id=%d --rx_vlan_id=%d" % (vif.id,
                    instance.uuid, vif.network.id,
                    instance.project_id, ip_addr, ip6_addr,
                    instance.display_name, vif.address,
                    dev, ptype, -1, -1))
        linux_net.create_tap_dev(dev)
        processutils.execute('sudo', 'vrouter-port-control', cmd_args)
Exemple #7
0
 def plug(self, instance, vif):
     iface_id = vif.ovs_interfaceid
     dev = vif.devname
     linux_net.create_tap_dev(dev)
     linux_net.create_ivs_vif_port(dev, iface_id, vif.address,
                                   instance.uuid)
Exemple #8
0
 def plug(self, instance, vif):
     iface_id = vif.ovs_interfaceid
     dev = vif.devname
     linux_net.create_tap_dev(dev)
     linux_net.create_ivs_vif_port(dev, iface_id, vif.address,
                                   instance.uuid)