Adding support for FPB 3.0.0 and Fuel 8.0
Change-Id: Ibc36e9371d6eba33b1ababbebe859414d5c7ed84
This commit is contained in:
parent
c86e56b70a
commit
c43afd462b
8
build.sh
8
build.sh
|
@ -21,12 +21,13 @@ function fail_on_error() {
|
|||
}
|
||||
|
||||
# Verify distrobution
|
||||
( [ -f /etc/redhat-release ] && grep -q "release 6" /etc/redhat-release ) ||
|
||||
fail_on_error "Mellanox plugin build script supports only Redhat/CentOS 6"
|
||||
( [ -f /etc/redhat-release ] ) ||
|
||||
fail_on_error "Mellanox plugin build script supports only Redhat/CentOS"
|
||||
|
||||
readonly TOP_DIR=`dirname $0`
|
||||
readonly TMP_DIR='/tmp'
|
||||
readonly PLUGIN_BUILDER_DIR="$TMP_DIR/fuel-plugins/"
|
||||
readonly FUEL_PLUGIN_VERSION=`cat metadata.yaml | grep package_version | awk '{print $2}' | head -c 2 | tail -c 1`
|
||||
readonly PLUGIN_BUILDER_PACKAGE_DIR="$PLUGIN_BUILDER_DIR/dist"
|
||||
pushd $TOP_DIR > /dev/null
|
||||
|
||||
|
@ -51,7 +52,8 @@ git clone https://github.com/stackforge/fuel-plugins.git $TMP_DIR/fuel-plugins |
|
|||
fail_on_error "Failed cloning fuel-plugin-builder git repository"
|
||||
|
||||
# Append bootstrap post install to the spec
|
||||
cat specs/post.spec >> $PLUGIN_BUILDER_DIR/fuel_plugin_builder/templates/v2/build/plugin_rpm.spec.mako
|
||||
plugin_template=$PLUGIN_BUILDER_DIR/fuel_plugin_builder/templates/v$FUEL_PLUGIN_VERSION
|
||||
sed -i '/%post/r specs/post.spec' $plugin_template/build/plugin_rpm.spec.mako
|
||||
|
||||
# Install plugin builder
|
||||
pushd $PLUGIN_BUILDER_DIR > /dev/null
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# Log a notice about pre_deployment start
|
||||
- role: '*'
|
||||
- id: init_mlnx_logs
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
|
@ -9,7 +10,8 @@
|
|||
# there is no symbolic link from astute.yaml to <role>.yaml.
|
||||
# Since the data that the plugin uses is common to all <role>.yaml files,
|
||||
# this script links astute.yaml to any <role>.yaml on each node.
|
||||
- role: '*'
|
||||
- id: link_astute_file
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
|
@ -17,14 +19,16 @@
|
|||
timeout: 5
|
||||
# Add relevant settings for Mellanox manifests to mellanox plugin section in
|
||||
# Hiera, to make the data easily accessible and independent of astute.yaml
|
||||
- role: '*'
|
||||
- id: customize_mellanox_hiera
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./mellanox_settings.py
|
||||
timeout: 10
|
||||
# Verify kernel-devel packages are installed (if CentOS)
|
||||
- role: '*'
|
||||
- id: validate_kernel_devel
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
|
@ -32,14 +36,16 @@
|
|||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 200
|
||||
# Install OFED + FW upgrade
|
||||
- role: '*'
|
||||
- id: install_mlnx_ofed
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./install_ofed.sh
|
||||
timeout: 3600
|
||||
# add VXLAN offloading parameters
|
||||
- role: '*'
|
||||
- id: configure_vxlan_offload
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
|
@ -47,14 +53,16 @@
|
|||
timeout: 60
|
||||
# Configure number of VFs according to the user decision:
|
||||
# change modprobe file + IOMMU in grub file + change VFs num in FW
|
||||
- role: '*'
|
||||
- id: configure_sriov
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./sriov.sh configure
|
||||
timeout: 60
|
||||
# if VXLAN is not required. Rename iSER interface for Eth mode
|
||||
- role: '*'
|
||||
- id: rename_iser_probe_vf
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
|
@ -62,48 +70,55 @@
|
|||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 60
|
||||
# Reboot due to OFED installation / IOMMU configuration
|
||||
- role: '*'
|
||||
- id: reboot_after_ofed
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: reboot
|
||||
parameters:
|
||||
timeout: 420
|
||||
# change modprobe file + IOMMU in grub file + change VFs num in FW
|
||||
- role: '*'
|
||||
- id: validate_sriov
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./sriov.sh validate
|
||||
timeout: 60
|
||||
# This is a workaround: disable wrong rules in CentOS IBP #1458832.
|
||||
- role: '*'
|
||||
- id: remove_blocking_iptable_roles
|
||||
role: '*'
|
||||
stage: pre_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./blocking_iptables_rules.sh
|
||||
timeout: 20
|
||||
# Log a notice about post_deployment start
|
||||
- role: '*'
|
||||
- id: print_stage_post_deployment
|
||||
role: '*'
|
||||
stage: post_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./log_stage.sh post_deployment
|
||||
timeout: 5
|
||||
# Execute post_deployment manifest for each role
|
||||
- role: ['controller', 'primary-controller']
|
||||
- id: configure_mellanox_controller
|
||||
role: ['controller', 'primary-controller']
|
||||
stage: post_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/controller.pp
|
||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 360
|
||||
- role: ['compute']
|
||||
- id: configure_mellanox_compute
|
||||
role: ['compute']
|
||||
stage: post_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
puppet_manifest: puppet/manifests/compute.pp
|
||||
puppet_modules: puppet/modules:/etc/puppet/modules
|
||||
timeout: 360
|
||||
- role: ['cinder']
|
||||
- id: configure_mellanox_cinder
|
||||
role: ['cinder']
|
||||
stage: post_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
|
@ -112,7 +127,8 @@
|
|||
timeout: 360
|
||||
# Set storage network configurations on the IB child
|
||||
# if exists
|
||||
- role: '*'
|
||||
- id: configure_mlnx_iser_ib
|
||||
role: '*'
|
||||
stage: post_deployment
|
||||
type: puppet
|
||||
parameters:
|
||||
|
@ -121,16 +137,19 @@
|
|||
timeout: 120
|
||||
# Move Ubuntu iSER conigurations to /etc/network/interfaces
|
||||
# For MLNX_OFED drivers
|
||||
- role: '*'
|
||||
- id: move_ib_interfaces_to_persistent
|
||||
role: '*'
|
||||
stage: post_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./move_ubuntu_ib_interfaces_conf.sh
|
||||
timeout: 60
|
||||
# Override the testvm with Mellanox Cirros TestVM
|
||||
- role: ['primary-controller']
|
||||
- id: replace_cirros_sriov
|
||||
role: ['primary-controller']
|
||||
stage: post_deployment
|
||||
type: shell
|
||||
parameters:
|
||||
cmd: ./replace_cirros.sh
|
||||
cmd: source /root/openrc; ./replace_cirros.sh
|
||||
timeout: 180
|
||||
retries: 10
|
|
@ -1,22 +1,29 @@
|
|||
attributes:
|
||||
prerequisites:
|
||||
weight: 5
|
||||
type: "hidden"
|
||||
value: true
|
||||
metadata:
|
||||
group: 'other'
|
||||
notes:
|
||||
type: "textarea"
|
||||
label: "Important notes:"
|
||||
description: |
|
||||
To use Mellanox High Performance features, you have to complete the following prerequisites prior to the deployment:
|
||||
- For Ethernet deployment:
|
||||
* Configure the Switch ports to Ethernet mode.
|
||||
* Configure the desired VLANs for each port.
|
||||
- For InfiniBand deployment:
|
||||
* Configure the Switch ports to InfiniBand mode.
|
||||
* Configure a Subnet Manager (SM) on the switch or on a node in the cluster, as described in the User manual.
|
||||
* Reboot bootstrap nodes using the "reboot_bootstrap_nodes" script, from the Fuel master, in order to load eIPoIB hardware discovery support.
|
||||
- After the interfaces discovery, perform the following:
|
||||
* Set the relevant networks to work over Mellanox interfaces, in the interfaces configuration in the Nodes tab.
|
||||
* Run network verification, after configuring the desired network subnets and VLAN segmentations.
|
||||
- For more information: https://community.mellanox.com/docs/DOC-2374
|
||||
weight: 5
|
||||
extra_priority: null
|
||||
value: |
|
||||
To use Mellanox High Performance features,
|
||||
you have to complete the following prerequisites prior to the deployment:
|
||||
- For Ethernet deployment:
|
||||
* Configure the Switch ports to Ethernet mode.
|
||||
* Configure the desired VLANs for each port.
|
||||
- For InfiniBand deployment:
|
||||
* Configure the Switch ports to InfiniBand mode.
|
||||
* Configure a Subnet Manager (SM) on the switch or on a node in the cluster,
|
||||
as described in the User manual.
|
||||
* Reboot bootstrap nodes using the 'reboot_bootstrap_nodes' script, from
|
||||
the Fuel master, in order to load eIPoIB hardware discovery support.
|
||||
- After the interfaces discovery, perform the following:
|
||||
* Set the relevant networks to work over Mellanox interfaces, in the
|
||||
interfaces configuration in the Nodes tab.
|
||||
* Run network verification, after configuring the desired network subnets
|
||||
and VLAN segmentations.
|
||||
description: "For more information: https://community.mellanox.com/docs/DOC-2374"
|
||||
iser:
|
||||
value: false
|
||||
label: "iSER protocol for volumes (Cinder)"
|
||||
|
@ -28,10 +35,10 @@ attributes:
|
|||
message: "For iSER support in Cinder, Cinder LVM over iSCSI should be enabled and hypervisor type should be KVM."
|
||||
sriov:
|
||||
value: false
|
||||
label: "Neutron SR-IOV plugin"
|
||||
label: "Neutron SR-IOV Mechanism driver"
|
||||
weight: 60
|
||||
type: "checkbox"
|
||||
description: "If selected, Mellanox network acceleration (Neutron) plugin will be installed, to enable SR-IOV capabilities."
|
||||
description: "If selected, Neutron SRIOV mechanism driver will be configured, to enable SR-IOV capabilities."
|
||||
restrictions:
|
||||
- condition: "settings:common.libvirt_type.value != 'kvm' or not (cluster:net_provider == 'neutron' and networking_parameters:segmentation_type == 'vlan')"
|
||||
message: "For Mellanox SR-IOV support in neutron, hypervisor type should be KVM and the environment networking should be based on Neutron with VLAN segmentation."
|
||||
|
|
|
@ -5,13 +5,13 @@ name: mellanox-plugin
|
|||
title: Mellanox Openstack features
|
||||
|
||||
# Plugin version
|
||||
version: 2.0.14
|
||||
version: 2.0.15
|
||||
|
||||
# Description
|
||||
description: Enable features over Mellanox hardware
|
||||
|
||||
# Required fuel version
|
||||
fuel_version: ['6.1', '7.0', '8.0']
|
||||
fuel_version: ['7.0', '8.0']
|
||||
|
||||
# Specify license of your plugin
|
||||
licenses: ['Apache License Version 2.0']
|
||||
|
@ -27,26 +27,16 @@ groups: ['storage::cinder', 'hypervisor']
|
|||
|
||||
# The plugin is compatible with releases in the list
|
||||
releases:
|
||||
- os: ubuntu
|
||||
version: 2014.2-6.1
|
||||
mode: ['ha']
|
||||
deployment_scripts_path: deployment_scripts/
|
||||
repository_path: repositories/ubuntu
|
||||
- os: centos
|
||||
version: 2014.2-6.1
|
||||
mode: ['ha']
|
||||
deployment_scripts_path: deployment_scripts/
|
||||
repository_path: repositories/centos
|
||||
- os: ubuntu
|
||||
version: 2015.1.0-7.0
|
||||
mode: ['ha']
|
||||
deployment_scripts_path: deployment_scripts/
|
||||
repository_path: repositories/ubuntu
|
||||
- os: ubuntu
|
||||
version: 2015.2.0-8.0
|
||||
version: 2015.1.0-8.0
|
||||
mode: ['ha']
|
||||
deployment_scripts_path: deployment_scripts/
|
||||
repository_path: repositories/ubuntu
|
||||
|
||||
# Version of plugin package
|
||||
package_version: '2.0.0'
|
||||
package_version: '3.0.0'
|
||||
|
|
|
@ -1,6 +1,4 @@
|
|||
|
||||
#%%post
|
||||
|
||||
FUEL_BOOTSTRAP_DIR="/var/www/nailgun/bootstrap/"
|
||||
PLUGINS_DIR="/var/www/nailgun/plugins/"
|
||||
BOOTSTRAP_BACKUP_DIR="/opt/old_bootstrap_initrd/"
|
||||
|
|
Loading…
Reference in New Issue