Bug 1865733

Summary: RFE: Support creating OVS internal interface with the same name of OVS bridge
Product: Red Hat Enterprise Linux 8 Reporter: Gris Ge <fge>
Component: nmstateAssignee: Gris Ge <fge>
Status: CLOSED ERRATA QA Contact: Mingyu Shi <mshi>
Severity: medium Docs Contact:
Priority: medium    
Version: 8.3CC: dholler, ferferna, jiji, jishi, network-qe, till
Target Milestone: rcKeywords: FutureFeature, Triaged
Target Release: 8.4   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: nmstate-1.0.0-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-18 15:17:12 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Gris Ge 2020-08-04 02:14:03 UTC
Description of problem:

Would like to support this desired state:


---
interfaces:
- name: br0
  type: ovs-bridge
  state: up
  bridge:
    port:
    - name: br0
- name: br0
  type: ovs-interface
  state: up


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 5 Mingyu Shi 2020-12-18 07:23:06 UTC
Verified with versions:
nmstate-1.0.0-1.el8.noarch
nispor-1.0.1-2.el8.x86_64
NetworkManager-1.30.0-0.3.el8.x86_64
DISTRO=RHEL-8.4.0-20201203.n.0
Linux hp-dl380pg8-11.rhts.eng.pek2.redhat.com 4.18.0-257.el8.x86_64 #1 SMP Wed Dec 2 02:01:12 EST 2020 x86_64 x86_64 x86_64 GNU/Linux
openvswitch-selinux-extra-policy-1.0-22.el8fdp.noarch
openvswitch2.13-2.13.0-71.el8fdp.x86_64
nmstate-plugin-ovsdb-1.0.0-1.el8.noarch

More tests/bugs around this RFE will be tracked with other tickets.

[15:19:48@hp-dl380pg8-11 ~]0# echo "---
> interfaces:
> - name: br0
>   type: ovs-bridge
>   state: up
>   bridge:
>     port:
>     - name: br0
> - name: br0
>   type: ovs-interface
>   state: up" | nmstatectl set
2020-12-18 15:20:34,791 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 started
2020-12-18 15:20:34,792 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 started
2020-12-18 15:20:34,793 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 started
2020-12-18 15:20:34,796 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 finished
2020-12-18 15:20:34,798 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 finished
2020-12-18 15:20:34,800 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 finished
2020-12-18 15:20:34,916 root         DEBUG    Interface lo is type unknown and will be ignored during the activation
2020-12-18 15:20:34,918 root         DEBUG    Async action: Create checkpoint started
2020-12-18 15:20:34,923 root         DEBUG    Checkpoint /org/freedesktop/NetworkManager/Checkpoint/139 created for all devices
2020-12-18 15:20:34,924 root         DEBUG    Async action: Create checkpoint finished
2020-12-18 15:20:34,928 root         DEBUG    Async action: Add profile: 73685bee-8ff4-42be-9cad-627b40b61fcd, iface:br0, type:ovs-interface started
2020-12-18 15:20:34,931 root         DEBUG    Async action: Update profile uuid:b58884bd-206e-4628-86b8-192690bda995 iface:br0 type:ovs-bridge started
2020-12-18 15:20:34,933 root         DEBUG    Async action: Update profile uuid:697fb2dc-13fb-4cf5-9c50-b6a0a2709a10 iface:ovs-port-br0 type:ovs-port started
2020-12-18 15:20:34,939 root         DEBUG    Async action: Add profile: 73685bee-8ff4-42be-9cad-627b40b61fcd, iface:br0, type:ovs-interface finished
2020-12-18 15:20:34,942 root         DEBUG    Async action: Update profile uuid:b58884bd-206e-4628-86b8-192690bda995 iface:br0 type:ovs-bridge finished
2020-12-18 15:20:34,944 root         DEBUG    Async action: Update profile uuid:697fb2dc-13fb-4cf5-9c50-b6a0a2709a10 iface:ovs-port-br0 type:ovs-port finished
2020-12-18 15:20:34,945 root         DEBUG    Async action: Reapply device config: br0 ovs-bridge b58884bd-206e-4628-86b8-192690bda995 started
2020-12-18 15:20:34,950 root         DEBUG    Async action: Reapply device config: br0 ovs-bridge b58884bd-206e-4628-86b8-192690bda995 finished
2020-12-18 15:20:34,951 root         DEBUG    Async action: Activate profile uuid:73685bee-8ff4-42be-9cad-627b40b61fcd iface:br0 type: ovs-interface started
2020-12-18 15:20:34,958 root         DEBUG    Connection activation initiated: iface=br0 type=ovs-interface con-state=<enum NM_ACTIVE_CONNECTION_STATE_ACTIVATING of type NM.ActiveConnectionState>
2020-12-18 15:20:35,150 root         DEBUG    Connection activation succeeded: iface=br0, type=ovs-interface, con_state=<enum NM_ACTIVE_CONNECTION_STATE_ACTIVATED of type NM.ActiveConnectionState>, dev_state=<enum NM_DEVICE_STATE_ACTIVATED of type NM.DeviceState>, state_flags=<flags NM_ACTIVATION_STATE_FLAG_IS_SLAVE | NM_ACTIVATION_STATE_FLAG_LAYER2_READY | NM_ACTIVATION_STATE_FLAG_IP4_READY | NM_ACTIVATION_STATE_FLAG_IP6_READY of type NM.ActivationStateFlags>
2020-12-18 15:20:35,150 root         DEBUG    Async action: Activate profile uuid:73685bee-8ff4-42be-9cad-627b40b61fcd iface:br0 type: ovs-interface finished
2020-12-18 15:20:35,151 root         DEBUG    Async action: Reapply device config: ovs-port-br0 ovs-port 697fb2dc-13fb-4cf5-9c50-b6a0a2709a10 started
2020-12-18 15:20:35,156 root         DEBUG    Async action: Reapply device config: ovs-port-br0 ovs-port 697fb2dc-13fb-4cf5-9c50-b6a0a2709a10 finished
2020-12-18 15:20:35,157 root         DEBUG    Async action: Delete profile: uuid:2bb9e97e-148d-46ca-8d27-d94c41fa5f46 id:br0 iface:br0 type:ovs-interface started
2020-12-18 15:20:35,161 root         DEBUG    Async action: Delete profile: uuid:2bb9e97e-148d-46ca-8d27-d94c41fa5f46 id:br0 iface:br0 type:ovs-interface finished
2020-12-18 15:20:35,166 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 started
2020-12-18 15:20:35,167 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 started
2020-12-18 15:20:35,167 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 started
2020-12-18 15:20:35,168 root         DEBUG    Async action: Retrieve applied config: ovs-interface br0 started
2020-12-18 15:20:35,169 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 finished
2020-12-18 15:20:35,171 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 finished
2020-12-18 15:20:35,172 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 finished
2020-12-18 15:20:35,172 root         DEBUG    Async action: Retrieve applied config: ovs-interface br0 finished
2020-12-18 15:20:35,215 root         DEBUG    Async action: Destroy checkpoint /org/freedesktop/NetworkManager/Checkpoint/139 started
2020-12-18 15:20:35,218 root         DEBUG    Checkpoint /org/freedesktop/NetworkManager/Checkpoint/139 destroyed
2020-12-18 15:20:35,218 root         DEBUG    Async action: Destroy checkpoint /org/freedesktop/NetworkManager/Checkpoint/139 finished
Desired state applied: 
---
interfaces:
- name: br0
  type: ovs-bridge
  state: up
  bridge:
    port:
    - name: br0
- name: br0
  type: ovs-interface
  state: up
[15:20:35@hp-dl380pg8-11 ~]0# nmstatectl show br0
2020-12-18 15:20:39,291 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 started
2020-12-18 15:20:39,292 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 started
2020-12-18 15:20:39,293 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 started
2020-12-18 15:20:39,293 root         DEBUG    Async action: Retrieve applied config: ovs-interface br0 started
2020-12-18 15:20:39,296 root         DEBUG    Async action: Retrieve applied config: ethernet eno1 finished
2020-12-18 15:20:39,298 root         DEBUG    Async action: Retrieve applied config: ovs-bridge br0 finished
2020-12-18 15:20:39,299 root         DEBUG    Async action: Retrieve applied config: ovs-port ovs-port-br0 finished
2020-12-18 15:20:39,300 root         DEBUG    Async action: Retrieve applied config: ovs-interface br0 finished
---
dns-resolver:
  config: {}
  running:
    search:
    - rhts.eng.pek2.redhat.com
    server:
    - 10.73.2.107
    - 10.73.2.108
    - 10.66.127.10
route-rules:
  config: []
routes:
  config: []
  running: []
interfaces:
- name: br0
  type: ovs-interface
  state: up
  ipv4:
    enabled: false
    address: []
    dhcp: false
  ipv6:
    enabled: false
    address: []
    autoconf: false
    dhcp: false
  lldp:
    enabled: false
  mac-address: AE:0C:AF:24:EB:46
  mtu: 1500
  ovs-db:
    external_ids:
      NM.connection.uuid: 73685bee-8ff4-42be-9cad-627b40b61fcd
- name: br0
  type: ovs-bridge
  state: up
  bridge:
    options:
      fail-mode: ''
      mcast-snooping-enable: false
      rstp: false
      stp: false
    port:
    - name: br0
  lldp:
    enabled: false
  ovs-db:
    external_ids:
      NM.connection.uuid: b58884bd-206e-4628-86b8-192690bda995
[15:20:46@hp-dl380pg8-11 ~]1# ovs-vsctl show 
455c1872-ac93-496d-9510-359fa0661edd
    Bridge br0
        Port ovs-port-br0
            Interface br0
                type: internal
    ovs_version: "2.13.2"

Comment 7 errata-xmlrpc 2021-05-18 15:17:12 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (nmstate bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:1748