The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Cisco Nexus Fabric Enabler is a set of software applications that interacts with OpenStack through its open APIs to allow users to connect Cisco Nexus 5600, 6000, 7000 and 9000 Series platform switches as the network to the OpenStack compute nodes to form a cloud.
The uplink port of the server is directly connected to the fabric leaf switch and it requires that there is no middle device that has a bridging functionality, as LLDP needs to run between the server port and leaf switch port to signal the VM presence to the fabric for reachability. However, FEX devices can be connected between the server and the leaf switch as NX-OS 7.3 and above supports LLDP proxy running in the FEX.
There are three ways to install OpenStack. They are given below:
Use DevStack for installation. This is primarily for development and testing purposes and not for production level installation.
Use a third-party supported OpenStack installation package. Nexus Fabric Enabler is officially qualified with Red Hat Enterprise Linux (RHEL) OSP 7.
Use the OpenStack general installation guidelines.
In addition to OpenStack installation, the other required installation is LLDP Agent Daemon (lldpad), an open source free software, similar to OpenStack. The lldpad software is an agent daemon that supports VDP. For Linux distributions that packages lldpad using the source code after May 2015, follow the official installation procedure of the distribution to install lldpad. For example, in RHEL 7.2, install lldpad using yum install lldpad. Otherwise, follow the respective README notes to build and install the latest versions of lldpad on all servers used as compute nodes.
Note that, since OpenStack and its associated pieces of software for this purpose is open source software, it generally requires you to install the various software applications on your target servers as the applications are from different sources.
Cisco Nexus Fabric Enabler can be downloaded from the website https://github.com/CiscoSystems/fabric_enabler.
Enabler Version |
DCNM Version |
Supported Platform |
Cisco Nexus Switch Version |
Fabric Type |
OpenStack Release and Distribution |
---|---|---|---|---|---|
2.0 |
Cisco DCNM 10.1(1) |
Nexus 9300 |
Cisco NX-OS 7.0(3)I5(2) |
Cisco Programmable Fabric (PF) with VXLAN BGP EVPN |
|
2.0 |
Cisco DCNM 10.1(1) |
Nexus 5600 |
Cisco NX-OS 7.3(0)N1(1) |
Cisco Programmable Fabric (PF) with VXLAN BGP EVPN Dynamic Fabric Automation (DFA) |
|
1.1 |
Cisco DCNM 7.2(3) |
Nexus 5600 Nexus 6000 |
Cisco NX-OS 7.1(0)N1(1) |
DFA |
Verified with RHEL OSP 6 (Juno based). |
Note | Cisco Nexus Fabric Enabler only supports the native DHCP server of OpenStack. For supporting any other external DHCP server, the DHCP server should have an IP Address Management (IPAM) plugin integrated with OpenStack. This is needed because, the IP address allocation module in OpenStack is a separate entity from the DHCP server and so it should be synchronized with the DHCP server. Usually, the IPAM plugins ensure that the DHCP server is synchronized with the IP address allocation logic in OpenStack. |
Following are the prerequisites for installing Nexus fabric OpenStack Enabler:
Ensure that the fabric is up and running with the Power On Auto Provisioning (POAP) procedure being completed. This does not have any dependency with enabler installation or working, but this is a needed step for the overall functionality. POAP can be done even after the enabler installation is complete.
Ensure you know enough about OpenStack in general and have it installed and running in your setup (without the L3 service, or the Neutron router configured). OpenStack should be installed on the controllers and compute nodes.
Ensure that the keystone and neutron services are running on the same server (the controller).
Ensure each OpenStack compute node is connected to the leaf switch and the OpenStack control node is connected to Cisco DCNM through an IP network. Both the compute node and control node should be connected to the switches.
Ensure that DCNM is installed and reachable from the controller node (OpenStack Controller) and from the Nexus Fabric cluster. Without this step, the enabler server process will gracefully exit.
Ensure that all nodes have the same user account with the same credentials, and also that password-less sudo is enabled on all nodes.
%sudo ALL=(ALL:ALL) NOPASSWD: ALL
The RabbitMQ server must run on all the nodes. RabbitMQ is a general messaging scheme used by OpenStack for passing information.
Ensure that lldpad is installed on all the controller and compute nodes. Refer the Install lldpad section for more details.
On RHEL 7, lldpad can be installed by using the command sudo yum install lldpad.
Clone the repository used for installation—Open-LLDP.org.
Follow the instructions in the README file to build and install lldpad. You do not need the Linux kernel installation, but only the application.
Use the lldpad open source community mailing list http://open-lldp.org/ for any general queries.
Note | All servers that will act as controller and compute nodes will need lldpad installation. The lldpad installation is also needed on the controllers because the solution uses the native DHCP server provided by OpenStack, and the DHCP virtual interface also needs to be auto-configured in the attached leaf switch. |
Note | The OpenStack DHCP service is supported while the Cisco DCNM DHCP service is not supported. |