User'S Guide: Openstack Deployment With Sr-Iov Configuration
User'S Guide: Openstack Deployment With Sr-Iov Configuration
83840-546-02 B
User’s Guide—OpenStack Deployment with SR-IOV Configuration
QLogic 3400, 8400, and 45000 Series Ethernet Adapters
This document is provided for informational purposes only and may contain errors. QLogic reserves the right, without
notice, to make changes to this document or in product design or specifications. QLogic disclaims any warranty of any
kind, expressed or implied, and does not guarantee that any results or performance described in the document will be
achieved by you. All statements regarding QLogic’s future direction and intent are subject to change or withdrawal
without notice and represent goals and objectives only.
Added Liberty and Mitaka to the applicable Open- “Intended Audience” on page vii
Stack platforms.
Added a footnote associating 3400/8400/45000
Series Adapters with the 57800 Series Adapters
and QL4521x adapters.
Added new steps 8, 9, and 10. “Enabling SR-IOV on the 3400/8400/45000 Series
Adapters (Compute Node)” on page 6
ii 83840-546-02 B
User’s Guide—OpenStack Deployment with SR-IOV Configuration
QLogic 3400, 8400, and 45000 Series Ethernet Adapters
In Step 3, added a qualifier for Juno and Kilo to the “Configuring SR-IOV on the Compute Node” on
first command and added a new command for Lib- page 9
erty and Mitaka.
In Step 4, added a qualifier for Juno and Kilo to the
ml2_conf.ini file edits and added sriov_a-
gent.ini file edits for Liberty and Mitaka.
In Steps 5 and 6, added a qualifier for Juno and
Kilo only.
In Step 7, added a qualifier for Juno and Kilo to the
first command and added new commands for Lib-
erty and Mitaka.
iii 83840-546-02 B
User’s Guide OpenStack Deployment with SR-IOV Configuration
QLogic 3400, 8400, and 45000 Series Ethernet Adapters
iv 83840-546-02 B
Table of Contents
Preface
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
What Is in This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Related Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Documentation Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
License Agreements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Technical Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Downloading Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
Contact Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Knowledge Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
1 Introduction
Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What is OpenStack?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Example Architecture
OpenStack Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Controller Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Compute Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Network Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3 Prerequisites
4 SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Enabling SR-IOV on the 3400/8400/45000 Series Adapters (Compute Node) 6
Configuring SR-IOV on the Controller Node . . . . . . . . . . . . . . . . . . . . . . . . 7
Configuring SR-IOV on the Compute Node . . . . . . . . . . . . . . . . . . . . . . . . . 9
5 Configuration Deployment with SR-IOV
Creating an SR-IOV Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Creating the Subnet “subnet2” for the SR-IOV Network . . . . . . . . . . . . . . . 12
Creating the SR-IOV Port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Creating a VM with the SR-IOV Network . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
v 83840-546-02 B
User’s Guide—OpenStack Deployment with SR-IOV Configuration
QLogic 3400, 8400, and 45000 Series Ethernet Adapters
6 Testing
7 Known Issues
vi 83840-546-02 B
Preface
Intended Audience
This guide is intended for OpenStack® (Juno, Kilo, Liberty, and Mitaka) users who
want to configure single root input/output virtualization (SR-IOV) with the QLogic®
3400/8400/45000 Series Adapters1.
Related Materials
For information about downloading documentation from the QLogic Web site, see
“Downloading Updates” on page x.
1 Includes 578xx-based Adapters and FastLinQ™ QL4521x 25-gigabit Ethernet (GbE) Adapters
vii 83840-546-02 B
Preface
Documentation Conventions
Documentation Conventions
This guide uses the following documentation conventions:
Text in blue font indicates a hyperlink (jump) to a figure, table, or section in
this guide, and links to Web sites are shown in underlined blue. For
example:
Table 9-2 lists problems related to the user interface and remote agent.
See “Installation Checklist” on page 6.
For more information, visit www.qlogic.com.
Text in bold font indicates user interface elements such as a menu items,
buttons, check boxes, or column headings. For example:
Click the Start button, point to Programs, point to Accessories, and
then click Command Prompt.
Under Notification Options, select the Warning Alarms check box.
Text in Courier font indicates a file name, directory path, or command line
text. For example:
To return to the root directory from anywhere in the file structure:
Type cd /root and press ENTER.
Enter the following command: sh ./install.bin
Topic titles between quotation marks identify related topics within this
manual.
viii 83840-546-02 B
Preface
License Agreements
License Agreements
Refer to the QLogic Software End User License Agreement for a complete listing
of all license agreements affecting the QLogic 3400/8400/45000 Series Adapters.
Technical Support
Customers should contact their authorized maintenance provider for technical
support of their QLogic products. QLogic-direct customers may contact QLogic
Technical Support; others will be redirected to their authorized maintenance
provider. Visit the QLogic support Web site listed in Contact Information for the
latest firmware and software updates.
For details about available service plans, or for information about renewing and
extending your service, visit the Service Program Web page at
www.qlogic.com/Support/Pages/ServicePrograms.aspx.
ix 83840-546-02 B
Preface
Technical Support
Downloading Updates
The QLogic Web site provides periodic updates to product firmware, software,
and documentation.
Training
QLogic Global Training maintains a Web site at www.qlogictraining.com offering
online and instructor-led training for all QLogic products. In addition, sales and
technical professionals may obtain Associate and Specialist-level certifications to
qualify for additional benefits from QLogic.
x 83840-546-02 B
Preface
Technical Support
Contact Information
QLogic Technical Support for products under warranty is available during local
standard working hours excluding QLogic Observed Holidays. For customers with
extended service, consult your plan for available hours. For Support phone
numbers, see the Contact Support link at support.qlogic.com.
Support Headquarters QLogic Corporation
12701 Whitewater Drive
Minnetonka, MN 55343 USA
QLogic Web Site www.qlogic.com
Technical Support Web Site support.qlogic.com
Technical Support E-mail [email protected]
Technical Training E-mail [email protected]
Knowledge Database
The QLogic knowledge database is an extensive collection of QLogic product
information that you can search for specific solutions. QLogic is constantly adding
to the collection of information in the database to provide answers to your most
urgent questions. Access the database from the QLogic Support Center:
support.qlogic.com.
xi 83840-546-02 B
1 Introduction
This chapter describes the audience for this guide and outlines the OpenStack
architecture.
Audience
This guide is intended for OpenStack (Juno, Kilo, Liberty, and Mitaka) users who
want to configure single root input/output virtualization (SR-IOV) with the QLogic
3400/8400/45000 Series Adapters.
NOTE
At the time of publication, support for the 45000 Series Adapters is limited to
the FastLinQ™ QL4521x 25GbE Adapters.
What is OpenStack?
The OpenStack project is an open source cloud computing platform that supports
all types of cloud environments and works as infrastructure as a service (IAAS).
The technology consists of a series of interrelated projects that control pools of
processing, storage, and networking resources throughout a data center, which
users manage through a web-based dashboard, command line tools, or
representational state transfer (REST) APIs.
OpenStack (starting with Juno) adds inbox support to request virtual machine
(VM) access to the virtual network through SR-IOV NIC. With the introduction of
SR-IOV-based NICs, each SR-IOV port is associated with virtual functions (VFs).
SR-IOV ports are provided by hardware-based virtual Ethernet bridging (HW
VEB).
1 83840-546-02 B
2 Example Architecture
OpenStack Nodes
This guide is intended for use with OpenStack 3 node architecture, which consists
of the following nodes:
Controller
Compute
Network
Controller Node
In the example architecture used in this guide, the Controller node runs the
Identity service (Keystone), Image Service (Glance), management portions of the
Compute service (Nova Management) and Networking service (Neutron
Server/modular layer 2 (ML2) plug-in), networking plug-in, and the dashboard
(Horizon). The architecture also includes supporting services such as a database
(mysql), message broker (Rabbitmq), and network time protocol (NTP).
Compute Node
The Compute node runs the hypervisor portion of Compute, which operates
tenant virtual machines.
In this architecture, the Compute node uses a kernel-based virtual machine (KVM)
as the hypervisor (KVM is the default hypervisor). The Compute node runs the
Networking node plug-in (ML2), layer 2 agent open virtual search (OVS), and NIC
switch agent (SR-IOV switch).
Network Node
The Network node runs the Networking plug-in (ML2), layer 3 agent, and DHCP
agent. This node also handles external (Internet) connectivity for tenant VMs or
the Compute node.
2 83840-546-02 B
3 Prerequisites
This chapter describes what you need to use OpenStack with SR-IOV
configuration using the QLogic 3400/8400/45000 Series Adapters.
You need the following knowledge and equipment:
One or more QLogic 3400/8400/45000 Series Adapters
NOTE
At the time of publication, support for the 45000 Series Adapters is
limited to the FastLinQ QL4521x 25GbE Adapters.
1 The OpenStack configuration described in this link uses VXLAN and Linux Bridge agent.
However, the QLogic SR-IOV configuration uses and has been tested only with OpenStack 3 node
configuration with VLAN and open vSwitch (OVS). Furthermore, be sure to configure the
OpenStack 3 node configuration with kernel-based virtual machine (KVM).
3 83840-546-02 B
3–Prerequisites
For the VM instance, QLogic uses a Red Hat 7 KVM Guest image to test
SR-IOV configurations that support the 3400/8400/45000 Series Adapters’
inbox or out-of-box driver, as described here:
http://docs.openstack.org/image-guide/content/ch_obtaining_images.html
OpenStack 3 node configuration without SR-IOV support must work with flat
networking/VLAN. You must be able to assign floating IP access and log in
to the VM.
4 83840-546-02 B
4 SR-IOV Configuration
Using the 3400/8400/45000
Series Adapters
This chapter describes how to configure SR-IOV using the QLogic
3400/8400/45000 Series Adapters, as described in the following sections:
Enabling SR-IOV on the 3400/8400/45000 Series Adapters (Compute Node)
Configuring SR-IOV on the Controller Node
Configuring SR-IOV on the Compute Node
NOTE
The steps in the following sections can easily be accomplished using the
QLogic provided OpenStack Utility, available for download from:
http://www.qlogic.com/solutions/Pages/OpenStack.aspx. Two packages are
provided:
qlgcOpenStack.zip. Standalone package containing source files
qlgcOpenStackEc.zip. Standalone package containing source files and
Eclipse project files to simplify the customization of the QLogic scripts
using Eclipse
5 83840-546-02 B
4–SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Enabling SR-IOV on the 3400/8400/45000 Series Adapters (Compute Node)
modprobe qede (45000 Series Adapters; this command installs both the qede
and qed driver)
6. Verify that the virtual interfaces are visible to host OS by issuing the
following command:
lspci |grep Qlogic
7. Enable SR-IOV on the port where the tenant network has been defined.
8. Modify the /boot/grub2/grub.cfg file to enable intel-iommu on the
compute node.
linux16 /vmlinuz-3.10.0-327.22.2.el7.x86_64
root=/dev/mapper/centos-root ro crashkernel=auto
rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet
intel_iommu=on LANG=en_US.UTF-8
initrd16 /initramfs-3.10.0-327.22.2.el7.x86_64.img
6 83840-546-02 B
4–SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Configuring SR-IOV on the Controller Node
10. Add intel_iommu=on to the command line of the kernel from which you
will boot. Type the following command:
cat /proc/cmdline show intel_iommu=on
BOOT_IMAGE=/vmlinuz-3.10.0-327.22.2.el7.x86_64
root=/dev/mapper/centos-root ro crashkernel=auto
rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet
intel_iommu=on LANG=en_US.UTF-8
[ml2_type_vlan]
network_vlan_ranges = physnet2:1000:2000,physnet3:2001:2100
[securitygroup]
firewall_driver = neutron.agent.firewall.NoopFirewallDriver
7 83840-546-02 B
4–SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Configuring SR-IOV on the Controller Node
scheduler_available_filters =
nova.scheduler.filters.all_filters
8 83840-546-02 B
4–SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Configuring SR-IOV on the Compute Node
3. Install the SR-IOV Neutron agent on the Compute node by issuing the
following command:
For Juno and Kilo:
# yum install neutron-sriov-nic-agent
[securitygroup]
firewall_driver =
neutron.agent.firewall.NoopFirewallDriver
5. For Juno and Kilo only—To run the Neutron SR-IOV NIC agent service,
first navigate to the configuration file location by issuing the following
command:
# cd /usr/lib/systemd/system
9 83840-546-02 B
4–SR-IOV Configuration Using the 3400/8400/45000 Series Adapters
Configuring SR-IOV on the Compute Node
10 83840-546-02 B
5 Configuration Deployment
with SR-IOV
This chapter describes how to deploy OpenStack with SR-IOV, as follows:
“Creating an SR-IOV Network”
“Creating the Subnet “subnet2” for the SR-IOV Network” on page 12
“Creating the SR-IOV Port” on page 13
“Creating a VM with the SR-IOV Network” on page 14
11 83840-546-02 B
5–Configuration Deployment with SR-IOV
Creating the Subnet “subnet2” for the SR-IOV Network
The values in the name column are described in the following paragraphs.
net1 A private network that provides internal network access for
instances of the Compute node.
Public and private networks are configured in the prerequisite
section.
sriov An SR-IOV network for VM access to a virtual network using
SR-IOV NIC.
public An external network that provides Internet access for instances
of the Compute node using a network address translation (NAT)
/floating IP address and a qualified security group.
The values in the name column are described in the following paragraphs.
subnet1 A private subnet that uses DHCP
Private subnets are configured in the prerequisite
section.
subnet2 An SRI-OV subnet
public-subnet A subnet for external connectivity
12 83840-546-02 B
5–Configuration Deployment with SR-IOV
Creating the SR-IOV Port
Make sure the output shows the correct vif_type and vnic_type.
13 83840-546-02 B
5–Configuration Deployment with SR-IOV
Creating a VM with the SR-IOV Network
In this command, a –nic net-id is given for the private network (net1)
and a –nic port-id is given for the SR-IOV network with a Red Hat 7
KVM guest image.
Following is a sample output.
14 83840-546-02 B
5–Configuration Deployment with SR-IOV
Creating a VM with the SR-IOV Network
15 83840-546-02 B
6 Testing
16 83840-546-02 B
6–Testing
17 83840-546-02 B
7 Known Issues
18 83840-546-02 B
7–Known Issues
19 83840-546-02 B
Corporate Headquarters QLogic Corporation 26650 Aliso Viejo Parkway Aliso Viejo, CA 92656 949.389.6000 www.qlogic.com
International Offices UK | Ireland | Germany | France | India | Japan | China | Hong Kong | Singapore | Taiwan | Israel
© 2015, 2016 QLogic Corporation. QLogic Corporation is a wholly owned subsidiary of Cavium, Inc. Specifications are subject to change without notice. All rights reserved worldwide. QLogic,
the QLogic logo, and FastLinQ are trademarks or registered trademarks of QLogic Corporation. OpenStack is a registered trademark of the OpenStack Foundation. Red Hat is a registered
trademark of Red Hat, Inc. in the US and other countries. All other brand and product names are trademarks or registered trademarks of their respective owners.