reserved VIP is placed in a wrong namespace

Bug #1485647 reported by Piotr Misiak
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Invalid
Wishlist
Sergey Vasilenko

Bug Description

reserved VIP should be placed in the main namespace regarding to configuration but it is placed in the haproxy namespace

network_roles.yaml:

- id: "zabbix"
default_mapping: "management"
properties:
  subnet: true
  gateway: false
  vip:
    - name: "zabbix_vip_management"

after deployment:

from astute.yaml:

vips:
   zabbix_vip_management:
     network_role: zabbix
     node_roles:
     - controller
     - primary-controller
     namespace:
     ipaddr: 10.109.2.3

crm configure show:

primitive vip__zabbix_vip_management ocf:fuel:ns_IPaddr2 \
  op monitor interval=3 timeout=30 \
  op start interval=0 timeout=30 \
  op stop interval=0 timeout=30 \
  params nic=br-mgmt base_veth=zabbix_vip-base ns_veth=zabbix_vip-ns ip=10.109.2.3 iflabel=ka cidr_netmask=24 ns=haproxy gateway=none gateway_metric=0 other_networks=false bridge=br-mgmt iptables_start_rules=false iptables_stop_rules=false iptables_comment=false ns_iptables_start_rules=false ns_iptables_stop_rules=false \
  meta migration-threshold=3 failure-timeout=60 resource-stickiness=1

plugin code:
https://github.com/stackforge/fuel-plugin-external-zabbix

Changed in fuel:
assignee: nobody → Fuel Plugins Bugs (fuel-plugins-bugs)
importance: Undecided → Critical
Changed in fuel:
milestone: none → 7.0
Revision history for this message
Alexander Saprykin (cutwater) wrote :

Please provide contents of the astute.yaml file.

Changed in fuel:
assignee: Fuel Plugins Bugs (fuel-plugins-bugs) → Alexander Saprykin (cutwater)
status: New → Incomplete
Revision history for this message
Alexander Saprykin (cutwater) wrote :

Sorry, found astute yaml example in the description of the bug. Namespace field is empty, since it wasn't set in the network_roles.yaml. This is as designed behaviour.

Data is serialized to the astute.yaml in the correct way. The problem should be in the fuel-library.

Changed in fuel:
status: Incomplete → New
assignee: Alexander Saprykin (cutwater) → nobody
assignee: nobody → Fuel Python Team (fuel-python)
Revision history for this message
Ihor Kalnytskyi (ikalnytskyi) wrote :

Move it to Fuel Library then.

Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Fuel Library Team (fuel-library)
Changed in fuel:
assignee: Fuel Library Team (fuel-library) → Sergey Vasilenko (xenolog)
status: New → Triaged
Revision history for this message
Piotr Misiak (piotr-misiak) wrote :

Guys, it's a blocker for us. Please fix this ASAP.

Revision history for this message
Sergey Vasilenko (xenolog) wrote :

Piotr, please provide debug snapshot from this env

Revision history for this message
Piotr Misiak (piotr-misiak) wrote :
Revision history for this message
Sergey Vasilenko (xenolog) wrote :

This bug looks like feature "VIP without network namespace".
In the Fuel, earlier 7.0, there are no VIPs, processed without network namespaces.

I can propose 3 ways to solve this issue:
* re-design plugin for using standart way for FUEL -- VIP inside network namespace.
* re-design ns_Ipaddr2 OCF script for provide additional functionality -- "VIPs without network namespaces"
* use Ipaddr2 OCF script from pacemaker toolset for handle VIP if no network namespace given in the incoming parameters.

IMHO first way is most correct for Fuel. Bacause linux kernel has some unpleasant features while local traffic processing.

But, take into account existing time limit, I start work on the 3d way.

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/214514

Changed in fuel:
status: Triaged → In Progress
tags: added: feature
Revision history for this message
Sergii Golovatiuk (sgolovatiuk) wrote :

During 5.0 cycle VIP was moved to namespaces to resolve issue when IP is moved without closing connections for processes on the same node. It's very dangerous to implement this feature.

Changed in fuel:
status: In Progress → Invalid
importance: Critical → Wishlist
Revision history for this message
Sergey Vasilenko (xenolog) wrote :

This story was implemented by:

Change-Id: I0d545567de84e13bf88fd95e2fc13a03378693b0
Change-Id: I3df45259b9f74e114eaaeaa28c47c5461a87f4a9

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on fuel-library (master)

Change abandoned by Sergey Vasilenko (<email address hidden>) on branch: master
Review: https://review.openstack.org/214514
Reason: This story was implemented by:

Change-Id: I0d545567de84e13bf88fd95e2fc13a03378693b0
Change-Id: I3df45259b9f74e114eaaeaa28c47c5461a87f4a9

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.