Configuration procedure
Configuring the DHCP server
Perform the following tasks on the DHCP server:
Configure a DHCP address pool to dynamically assign IP addresses on subnet 10.11.113.0/24 to the devices.
Assign IP address 10.11.113.19/24 to the TFTP server.
Specify a template file as the boot file name. A template file is named as networktype.template, for example, "vxlan.template".
Creating template files
Create template files and upload them to the TFTP server.
Typically, a template file includes the following contents:
System-predefined variables—Internally used by the system. User-defined variables cannot be the same as system-predefined variables.
User-defined variables—Defined by the user. User-defined variables include the following:
Basic settings: Local username and password, user role, and so on.
Neutron server settings: IP address of the Neutron server, the username and password for establishing a connection with the Neutron server, and so on.
Software images for upgrade and the URL to download the software images
Configuration commands—Includes commands independent from the topology (such as LLDP, NTP, and SNMP) and commands dependent on the topology (such as interfaces, and Neutron settings).
Configuring the TFTP server
Upload the template files to the TFTP server. In this example, both spine node and leaf node exist on the VXLAN network, so two template files (vxlan_spine.template and vxlan_leaf.template) are required.
Powering up Device A, Device B, and Device C
After starting up with factory configuration, Device A, Device B, and Device C each automatically downloads a template file to finish automated underlay network provisioning.
Configuring the controller node
Install OpenStack Neutron related components:
Install Neutron, Image, Dashboard, Networking, and RabbitMQ.
Install VCF Fabric ML2 Driver. For more information see VCF Fabric Neutron ML2 Driver Installation Guide.
Configure LLDP.
Configure the network as a VXLAN network:
Edit the /etc/neutron/plugin/ml2/ml2_conf.ini file as follows:
Add the h3c_vxlan type driver to the type driver list.
type_drivers = h3c_vxlan
Add h3c to the mechanism driver list.
mechanism_driver = openvswitch, h3c
Specify h3c_vxlan as the default tenant network type.
tenant_network_types=h3c_vxlan
Add the [ml2_type_h3c_vxlan] section, and specify a VXLAN ID range in the format of vxlan-id1:vxlan-id2. The value range for VXLAN IDs is 0 to16777215.
[ml2_type_h3c_vxlan] vni_ranges = 10000:60000
Configure the database:
Before you configure the database, make sure you have configured the Neutron server.
[openstack@localhost ~]$ sudo h3c_config db_sync
Restart the Neutron server:
[root@localhost ~]# service neutron-server restart
Create a network named Network.
Create subnets:
# Create a subnet named subnet-1 and assign network address range 10.10.1.0/24 to the subnet. (Details not shown.)
# Create a subnet named subnet-2, and assign network address range 10.1.1.0/24 to the subnet. (Details not shown.)
In this example, VM 1 and VM 2 obtain IP addresses from the DHCP server. You must enable DHCP for the subnets.
Create a router named router. Bind a port on the router with subnet subnet-1 and then bind another port with subnet subnet-2. (Details not shown.)
Create VMs:
# Create VM 1 on the controller node. (Details not shown.)
# Create VM 2 on the compute node. (Details not shown.)
In this example, VM 1 and VM 2 obtain IP addresses 10.10.1.3/24 and 10.1.1.3/24 from the DHCP server, respectively.