Switching on/off offloading type for logical bonded interface using interfaces.yaml do not configure bond properly

Bug #1516990 reported by Alexander Zatserklyany
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Invalid
Medium
Michael Polenchuk
7.0.x
Won't Fix
Medium
MOS Maintenance

Bug Description

Preconditions:
1. SetupEnvironment prepare_slaves_3 with bonding
2. Configure bond0 with slaves eth2, eth3, eth4, eth5

Steps to reproduce:
1. Download node network configuration:
fuel node --node <node_id> --network -d
2. Set 'offloading_modes' for bond0:
  - name: rx-vlan-offload
    state: 'false'
3. Upload node network configuration:
fuel node --node <node_id> --network -u
4. Check node network configuration:
  4.1. Get token:
  export token_id=$(curl -s 'http://<fuel_ip>:5000/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json" -d '{"auth": {"tenantName": "'admin'", "passwordCredentials": {"username": "'admin'", "password": "'admin'"}}}' | python -c 'import sys, yaml; print yaml.load(sys.stdin)["access"]["token"]["id"]')
  4.2. Get interfaces:
  curl -s -H "X-Auth-Token: $token_id" -X GET http://127.0.0.1:8000/api/v1/nodes/<node_id>/interfaces
  Note: bond0 and all slaves have offloading_mode 'rx-vlan-offload' with 'state': 'false'
4. Deploy cluster
5. Check offloading modes by for bond0's slaves:
for i in {2..5}; do ssh <node_id> ethtool -k eth${i} | grep rx-vlan-offload; done
Note: 'rx-vlan-offload: off' on all interfaces
6. Check offloading modes by 'ethtool':
ssh <node_id> ethtool -k bond0 | grep rx-vlan-offload

Expected results:
rx-vlan-offload: off

Actual results:
rx-vlan-offload: on

Additional information:
There is not line
post-up ethtool -K eth3 rxvlan off | true # rx-vlan-offload
in /etc/network/interfaces.d/ifcfg-bond0

Tags: area-library
Changed in fuel:
milestone: none → 7.0-mu-2
importance: Undecided → Medium
milestone: 7.0-mu-2 → 8.0
assignee: nobody → Fuel Library Team (fuel-library)
Ilya Kutukov (ikutukov)
Changed in fuel:
status: New → Confirmed
Revision history for this message
Alexander Zatserklyany (zatserklyany) wrote :

cat /etc/fuel/version.yaml
VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "7.0"
  openstack_version: "2015.1.0-7.0"
  api: "1.0"
  build_number: "301"
  build_id: "301"
  nailgun_sha: "4162b0c15adb425b37608c787944d1983f543aa8"
  python-fuelclient_sha: "486bde57cda1badb68f915f66c61b544108606f3"
  fuel-agent_sha: "50e90af6e3d560e9085ff71d2950cfbcca91af67"
  fuel-nailgun-agent_sha: "d7027952870a35db8dc52f185bb1158cdd3d1ebd"
  astute_sha: "6c5b73f93e24cc781c809db9159927655ced5012"
  fuel-library_sha: "5d50055aeca1dd0dc53b43825dc4c8f7780be9dd"
  fuel-ostf_sha: "2cd967dccd66cfc3a0abd6af9f31e5b4d150a11c"
  fuelmain_sha: "a65d453215edb0284a2e4761be7a156bb5627677"

Revision history for this message
Ilya Kutukov (ikutukov) wrote :

Setting won't fix for the 7.0 backport because the medium priority.
Feel free to re-open if the priority get higher.

Dmitry Pyzhov (dpyzhov)
tags: added: area-library
Changed in fuel:
assignee: Fuel Library Team (fuel-library) → Michael Polenchuk (mpolenchuk)
Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-library (master)

Fix proposed to branch: master
Review: https://review.openstack.org/249097

Revision history for this message
Michael Polenchuk (mpolenchuk) wrote :

I'm still not really sure that this commit is needed since offloading settings are meaningful only for physical interfaces.
Could someone confirm it?

Revision history for this message
slava valyavskiy (slava-val-al) wrote :

Hi guys,

I'm agreed with Michael. It's not a bug. L23netwotk puppet module was designed to operate with offloading types in this way (that we are not configuring offloading types for bond interface, but, only for its slaves). And, it seems logically cause offloading is hardware feature and it's not exactly clear how it will work with logical interface.
One more thing there that we did not test changing of offloading types configuration for bond interfaces. So, currently, we can not predict how it may affect our network 'behaviour' (Sergey Vasilenko consultation is needed before merge/submit corresponding code).

Revision history for this message
Dmitry Kalashnik (dkalashnik) wrote :

Bonds are purely software entities so no need to enable offloading for them. Close as invalid.

Changed in fuel:
status: In Progress → Invalid
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on fuel-library (master)

Change abandoned by Michael Polenchuk (<email address hidden>) on branch: master
Review: https://review.openstack.org/249097
Reason: Offloading settings are meaningful only for physical interfaces.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.