This post explains the configuration flow required for OpenStack based on Mirantis Fuel 7.0.
The reader should be familiar with Mirantis Fuel installation procedures, as well as with Mellanox adapters and drivers.
Using Mellanox OpenStack plugin together with ConnectX-3 Pro adapters helps to accelerate the cloud performance using SR-IOV-based network connectivity for the VMs and ISER-based block storage.
Mellanox OpenStack Plugin for Mirantis Fuel 7.0 supports Ethernet networks and Ubuntu 14.04 OS.
Note: InfiniBand networks are not supported in this plugin.
- HowTo Install Mirantis Fuel 6.1 OpenStack with Mellanox Adapters Support (Ethernet Network)
- HowTo Install Mirantis Fuel 6.1 OpenStack with Mellanox Adapters Support (InfiniBand Network)
- HowTo Install Mirantis Fuel 5.1/5.1.1 OpenStack with Mellanox Adapters Support (Ethernet Network)
- HowTo Install Mirantis Fuel 5.1/5.1.1 OpenStack with Mellanox Adapters Support (InfiniBand Network)
- HowTo Configure iSER Block Storage for OpenStack Cloud with Mellanox ConnectX-3 Adapters
- Designing CloudX Solution using Mirantis Fuel OpenStack Software
- Mellanox OFED Driver Installation and Configuration for SR-IOV
- HowTo Configure 56GbE Link on Mellanox Adapters and Switches
- Mirantis Fuel OpenStack Plugins
- Running Mirantis Fuel OpenStack v6.0 | Documentation
The setup is based on the following post:
1. When using an Ethernet network, be sure to configure all required VLANs and enable flow control on the switch ports.
2. As a prerequisite, Fuel 7.0 should be installed in your network.
3. OVS bonding and Mellanox SR-IOV based networking over the Mellanox ConnectX-3 adapter family are not supported.
4. You cannot install a plugin on an existing environment. Behavior: The plugin appears in a certain environment only if it is installed before you create the environment.
5. In an Ethernet cloud, when using SR-IOV & iSER, one of the virtual NICs for SR-IOV will be reserved to the storage network.
6. When using SR-IOV, you can set the number of virtual NICs (virtual functions) to up to 64, if your hardware and system capabilities (memory, BIOS etc) support it. When there is a SRIOV hardware limitation, the installation will try to fall back to the Virtual Function (VF) number to the default of 16 VFs.
7. This Fuel Mellanox plugin uses MLNX_OFED version 2.3-2.0.8.
Mellanox OpenStack Plugin installation
1. Download the plugin from Fuel Plugins Catalog.
2. Copy the plugin on the previously-installed Fuel Master node.
If you do not have the Fuel Master node yet, refer to the Quick Start Guide.
# scp mellanox-plugin-2.0-2.0.0-1.noarch.rpm root@<Fuel_Master_ip>:/tmp
3. Install the plugin:
# cd /tmp
# fuel plugins --install mellanox-plugin-2.0-2.0.0-1.noarch.rpm
Note: Mellanox plugin installation replaces your bootstrap image only in Fuel 6.1 at this stage.
The original image is backed up in /opt/old_bootstrap_image/.
4. Verify that the plugin was successfully installed by having it listed in the fuel plugins command:
[root@fuel ~]# fuel plugins
id | name | version | package_version
1 | mellanox-plugin | 2.0.0 | 2.0.0
Note: You must boot your target nodes with the new bootstrap image (installed by the plugin) after the plugin is installed. (In Fuel 7.0, the plugin does not replace bootstrap images and uses Mirantis bootstrap images).
5. Check your target nodes status by running the fuel nodes command.
[root@fuel ~]# fuel nodes
id | status | name | cluster | ip | mac | roles | pending_roles | online | group_id
59 | ready | Untitled (3c:9a) | 15 | 10.20.0.6 | c8:1f:66:ef:3c:9a | compute | | True | 15
54 | ready | Untitled (4f:aa) | 14 | 10.20.0.10 | c8:1f:66:ef:4f:aa | compute | | True | 14
57 | ready | Untitled (78:09) | 15 | 10.20.0.3 | c8:1f:66:ee:78:09 | controller | | True | 15
53 | ready | Untitled (31:f4) | 14 | 10.20.0.9 | c8:1f:66:ef:31:f4 | compute | | True | 14
58 | ready | Untitled (d9:5d) | 15 | 10.20.0.4 | c8:1f:66:f0:d9:5d | cinder | | True | 15
60 | ready | Untitled (8e:ac) | 15 | 10.20.0.5 | c8:1f:66:ee:8e:ac | compute | | True | 15
56 | ready | Untitled (4e:2d) | 14 | 10.20.0.8 | c8:1f:66:ed:4e:2d | cinder | | True | 14
52 | ready | Untitled (d8:7d) | 14 | 10.20.0.7 | c8:1f:66:f0:d8:7d | controller | | True | 14
If the fuel nodes command does not display any nodes, you can then boot your nodes only once the plugin is installed.
Environment Creation and Configuration
Create an environment. (For more information please see how to create an environment.)
a. Open the Settings tab of the Fuel web UI and scroll down the page. In Mellanox OpenStack features section, select the required features.
b. Select the KVM hypervisor. Note that the SR-IOV feature supports only the KVM hypervisor.
c. Select Neutron with VLAN segmentation to allow supporting SR-IOV and iSER.
d. In the “Storage” section, use the the iSER feature, Cinder LVM over iSCSI for volumes, to set up at least one Storage node.
1. Fuel requires that you assign a public network interface to all nodes. If it is not assigned, you may get the following error:
Error: Deployment has failed. Method granular_deploy. Failed to execute hook 'mellanox-plugin-2.0.0' Failed to run command cd /etc/fuel/plugins/mellanox-plugin-2.0/ && ./mellanox_settings.py
Inspect Astute logs for the details
2. To resolve this, ensure that you assign public IP to all nodes: