User Tools

Site Tools


ipv6_opnfv_project:metadata_structure

This is an old revision of the document!


Metadata Structure

Muliple VM Interfaces

               External Subnet(ipv6_gateway=<LLA-of-upstream-router> in the Neutron agent configuration file

Interface 3 (External Network) |


Interface 2 (Tenant Network: Net1) —————————————–(Router1)—-(subNet1)

Interface 1 (Management Network: Net0) | —————————————–(Roter0)—–(subnet0)

                                                 | |
                                                ----------
                                                | IPv6VM  |
                                                -----------

So what is the extra Data describing IPv6VM three interface VM above, we need for our ISO creation? We will need 3 Interface names, two Routers, external LLA and other attibutes.

Notes for Neutron IPv6: Following would be the list of commands to be executed in order to create three networks and boot VM instances using Nova with two virtual NICs. The idea can be extended to more NICs if required.

1. Create an external network. neutron net-create –tenant-id <tenant-id> –provider:network_type <flat/vlan> –provider:physical_network <physical-network> –provider:segmentation_id <segmentation-id-if-vlan> –router:external <external-network-name>

2. Create a tenant network. neutron net-create –tenant-id <tenant-id> –provider:network_type <tenant-network-type> –provider:physical_network <physical-network> –provider:segmentation_id <vlan-id/tunnel-id> <tenant-network-name>

3. Create an external subnet. Now that we have IPv6-Router BP support, creating an external subnet is not mandatory. We can simply define ipv6_gateway=<LLA-of-upstream-router> in the Neutron agent configuration file. Neutron L3 Agent would add a default route in the router namespace which points to ipv6_gateway.

4. Create an internal subnet. neutron subnet-create –tenant-id <tenant-id> –ip-version 6 –ipv6-ra-mode <slaac/dhcpv6-stateful,dhcpv6-stateless> –ipv6-address-mode <slaac/dhcpv6-stateful,dhcpv6-stateless> <network-name> <subnet-cidr>

5. Create a neutron router. neutron router-create –tenant-id <tenant-name> <router-name>

6. Associate the internal subnet to a neutron router. neutron router-interface-add <router-id> <internal-subnet-id>

7. If we want to create multiple subnets/networks, we can repeat the steps 2 & 4 based on the type of network.

8. Assuming that we now have two internal networks and we want to spawn a VM with two NICs, the steps would be.. nova boot –image <image-id> –flavor <flavor-id> –nic <net-id=net-uuid-for-nic1> –nic <net-id=net-uuid-for-nic2> <name-of-the-vm>

9. The VM booted in above step would have two interfaces (say eth0 and eth1) and would have IP addresses assigned from the respective subnets.

Greenfield approach with Cloudinit

Sridhar- lets us add detail using cloudinit here

ipv6_opnfv_project/metadata_structure.1437107626.txt.gz · Last modified: 2015/07/17 04:33 by Bin Hu