OAM IP change needs double lock/unlock controllers for IPV6 system

Bug #1895555 reported by Andy on 2020-09-14
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
Medium
Unassigned

Bug Description

Brief Description
-----------------
IPv6 two nodes system OAM IP change need double lock/unlock of the controllers for the new IP to take effect on the OAM network IF. (while IPv4 system only need single lock/unlock of the controllers)

Severity
--------
Major

Steps to Reproduce
------------------
On a multiple nodes system with two controllers:
1. record OAM IP addresses before making the change:
[root@controller-0 sysadmin(keystone_admin)]# system oam-show
+-----------------+--------------------------------------+
| Property | Value |
+-----------------+--------------------------------------+
| created_at | 2020-09-14T03:18:54.352301+00:00 |
| isystem_uuid | 4a6501e4-d564-4426-b4f6-102bd247e899 |
| oam_c0_ip | 2620:10a:a001:a103::164 |
| oam_c1_ip | 2620:10a:a001:a103::236 |
| oam_floating_ip | 2620:10a:a001:a103::165 |
| oam_gateway_ip | 2620:10a:a001:a103::6:0 |
| oam_subnet | 2620:10a:a001:a103::/64 |
| updated_at | None |
| uuid | 6b51882b-6b2b-4677-abfa-da7c08c503d4 |
+-----------------+--------------------------------------+

On active controller (controller-0 in this test):

[root@controller-0 sysadmin(keystone_admin)]# ip addr
11: enp135s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 3c:fd:fe:b1:29:f5 brd ff:ff:ff:ff:ff:ff
    inet6 2620:10a:a001:a103::165/64 scope global
       valid_lft forever preferred_lft forever1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
    inet6 2620:10a:a001:a103::164/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::3efd:feff:feb1:29f5/64 scope link
       valid_lft forever preferred_lft forever

On standby controller:

[sysadmin@controller-1 ~(keystone_admin)]$ ip addr
2: enp134s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:15:17:c7:bf:1c brd ff:ff:ff:ff:ff:ff
    inet6 2620:10a:a001:a103::236/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::215:17ff:fec7:bf1c/64 scope link
       valid_lft forever preferred_lft forever

2. Change OAM IP address:
[root@controller-0 sysadmin(keystone_admin)]# system oam-modify oam_c0_ip=2620:10a:a001:a103::166 oam_c1_ip=2620:10a:a001:a103::234 oam_floating_ip=2620:10a:a001:a103::167
+-----------------+--------------------------------------+
| Property | Value |
+-----------------+--------------------------------------+
| created_at | 2020-09-14T03:18:54.352301+00:00 |
| isystem_uuid | 4a6501e4-d564-4426-b4f6-102bd247e899 |
| oam_c0_ip | 2620:10a:a001:a103::166 |
| oam_c1_ip | 2620:10a:a001:a103::234 |
| oam_floating_ip | 2620:10a:a001:a103::167 |
| oam_gateway_ip | 2620:10a:a001:a103::6:0 |
| oam_subnet | 2620:10a:a001:a103::/64 |
| updated_at | None |
| uuid | 6b51882b-6b2b-4677-abfa-da7c08c503d4 |
+-----------------+--------------------------------------+

3. lock/unlock standby controller (controller-1 in this case)

4. On the standby controller (controller-1 in this case), check its OAM network IF again:

controller-1:/home/sysadmin# ip addr
2: enp134s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:15:17:c7:bf:1c brd ff:ff:ff:ff:ff:ff
    inet6 2620:10a:a001:a103::236/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::215:17ff:fec7:bf1c/64 scope link

Notice that the IP address is still the old one (2620:10a:a001:a103::236/64), instead of the new one (2620:10a:a001:a103::234) we changed to.

5. lock/unlock the standby controller again

6. check standby controller's OAM IF

controller-1:/home/sysadmin# ip addr
2: enp134s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:15:17:c7:bf:1c brd ff:ff:ff:ff:ff:ff
    inet6 2620:10a:a001:a103::234/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::215:17ff:fec7:bf1c/64 scope link
       valid_lft forever preferred_lft forever

Notice that the IP address now changes to the new one (2620:10a:a001:a103::234/64)

Expected Behavior
------------------
standby controller's OAM network IF IP address should change to reflect the new IP after first lock/unlock.

Actual Behavior
----------------
The standby controller's OAM IF IP remains unchanged until a second lock/unlock.

Reproducibility
---------------
100 % reproducible

System Configuration
--------------------
System with two controllers and IPv6 on OAM.

Branch/Pull Time/Commit
-----------------------
latest on master.

Last Pass
---------
Unknown

Timestamp/Logs
--------------
See steps to reproduce.

Test Activity
-------------
Developer Testing

Workaround
----------
double lock/unlock the controllers for the new IP to take effect.

Andy (andy.wrs) wrote :

Also want to point out that, after swact to make controller-1 as active controller, controller-0 would need double lock/unlock for the new OAM IP to take effect on its OAM IF as well.

Andy (andy.wrs) wrote :

The same is observed on a single node IPv6 system as well, ie, after running OAM IP change command, the controller need double lock/unlock for the OAM IF to have the new IP.

Ghada Khalil (gkhalil) on 2020-11-06
Changed in starlingx:
importance: Undecided → Medium
status: New → Triaged
tags: added: stx.5.0 stx.config
Ghada Khalil (gkhalil) wrote :

stx.5.0 / medium - would be nice to fix to avoid requiring two lock/unlock cycles for the change to take effect

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

Other bug subscribers