Hi Dumitru, I've seen your patches have been backported to 20.06 branch and tried it with RBAC-enabled installation. It seems working for ovn-controller, but for ovn-controller-vtep I still see similar errors. Should this be fixed in ovn-controller-vtep as well?
2021-04-19T17:26:22Z|00824|ovsdb_idl|WARN|transaction error: {"details":"RBAC rules for client \"cumulus-01\" role \"ovn-controller\" prohibit row insertion into table \"Encap\".","error":"permission error"} 2021-04-19T17:26:22Z|00825|gateway|WARN|Chassis for VTEP physical switch (cumulus-01) disappears, maybe deleted by ovn-sbctl, adding it back 2021-04-19T17:26:22Z|00826|gateway|INFO|add Chassis row for VTEP physical switch (cumulus-01) 2021-04-19T17:26:27Z|00827|gateway|WARN|Chassis for VTEP physical switch (cumulus-01) disappears, maybe deleted by ovn-sbctl, adding it back 2021-04-19T17:26:27Z|00828|gateway|INFO|add Chassis row for VTEP physical switch (cumulus-01) 2021-04-19T17:26:32Z|00829|gateway|WARN|Chassis for VTEP physical switch (cumulus-01) disappears, maybe deleted by ovn-sbctl, adding it back As workaround, if I switch ovn-controller-vtep to another ovnsbdb port (without rbac engine), ovn-controller-vtep successfully adds chassis record, then I switch it back to rbac socket and continue working well. So, error occurs only on first run of chassis. When chassis exists in DB, things work well. Regards, Vladislav Odintsov On 09.12.2020, 11:30, "Odintsov Vladislav" <vlodint...@croc.ru> wrote: Hi Dumitru, That’s good news, thanks for that! Regards, Vladislav Odintsov On 08.12.2020, 22:33, "Dumitru Ceara" <dce...@redhat.com> wrote: On 12/8/20 8:28 PM, Dumitru Ceara wrote: > On 12/3/20 4:11 PM, Dumitru Ceara wrote: >> On 12/3/20 2:01 PM, Odintsov Vladislav wrote: >>> But neither IP nor system-id was changed. I've double-checked: >>> >>> ovn-controller 20.06.2: >>> >>> Chassis "04540082-b5b5-4ab5-9901-03ed445c772d" >>> hostname: host.local >>> Encap vxlan >>> ip: "172.24.33.105" >>> options: {csum="true"} >>> Encap stt >>> ip: "172.24.33.105" >>> options: {csum="true"} >>> Port_Binding eni-3E9901E0 >>> Port_Binding eni-35AFCD00 >>> >>> # ovs-vsctl get open . external-ids:system-id >>> "04540082-b5b5-4ab5-9901-03ed445c772d" >>> >>> # systemctl stop ovn-controller >>> >>> Chassis was deleted: >>> >>> # ovn-sbctl list chassis 04540082-b5b5-4ab5-9901-03ed445c772d >>> ovn-sbctl: no row "04540082-b5b5-4ab5-9901-03ed445c772d" in table Chassis >>> >>> # yum update ovn-host -y >>> # systemctl restart ovn-controller >>> >>> Chassis with same system-id and encap IPs was re-added: >>> >>> Chassis "04540082-b5b5-4ab5-9901-03ed445c772d" >>> hostname: host.local >>> Encap vxlan >>> ip: "172.24.33.105" >>> options: {csum="true"} >>> Encap stt >>> ip: "172.24.33.105" >>> options: {csum="true"} >>> >>> But, there are no port_bindings, and in ovn-controller logs again transaction error: >>> >>> 2020-12-03T12:53:54.031Z|00035|binding|INFO|Claiming lport eni-3E9901E0 for this chassis. >>> 2020-12-03T12:53:54.031Z|00036|binding|INFO|eni-3E9901E0: Claiming 0a:00:3e:99:01:e0 192.168.0.4 >>> 2020-12-03T12:53:54.031Z|00037|binding|INFO|Claiming lport eni-35AFCD00 for this chassis. >>> 2020-12-03T12:53:54.031Z|00038|binding|INFO|eni-35AFCD00: Claiming 0a:00:35:af:cd:00 192.168.0.5 >>> 2020-12-03T12:53:54.041Z|00039|ovsdb_idl|WARN|transaction error: {"details":"RBAC rules for client \"04540082-b5b5-4ab5-9901-03ed445c772d\" role \"ovn-controller\" prohibit modification of table \"Encap\".","error":"permission error"} >>> 2020-12-03T12:53:54.042Z|00040|main|INFO|OVNSB commit failed, force recompute next time. >>> >>> >>> Moreover, if I forcefully delete chassis, port claim successful, but after restart ovn-controller, promlem appears again: >>> >>> # ovn-sbctl destroy chassis 04540082-b5b5-4ab5-9901-03ed445c772d >>> >>> 2020-12-03T12:56:20.119Z|00045|main|INFO|OVNSB commit failed, force recompute next time. >>> 2020-12-03T12:56:23.803Z|00046|binding|INFO|Claiming lport eni-3E9901E0 for this chassis. >>> 2020-12-03T12:56:23.803Z|00047|binding|INFO|eni-3E9901E0: Claiming 0a:00:3e:99:01:e0 192.168.0.4 >>> 2020-12-03T12:56:23.803Z|00048|binding|INFO|Claiming lport eni-35AFCD00 for this chassis. >>> 2020-12-03T12:56:23.803Z|00049|binding|INFO|eni-35AFCD00: Claiming 0a:00:35:af:cd:00 192.168.0.5 >>> >>> # systemctl restart ovn-controller >>> >>> 2020-12-03T12:56:38.590Z|00001|vlog|INFO|opened log file /var/log/ovn/ovn-controller.log >>> 2020-12-03T12:56:38.592Z|00002|reconnect|INFO|unix:/run/openvswitch/db.sock: connecting... >>> 2020-12-03T12:56:38.592Z|00003|reconnect|INFO|unix:/run/openvswitch/db.sock: connected >>> 2020-12-03T12:56:38.596Z|00004|main|INFO|OVS IDL reconnected, force recompute. >>> 2020-12-03T12:56:38.600Z|00005|reconnect|INFO|ssl:x.x.x.x:6642: connecting... >>> 2020-12-03T12:56:38.600Z|00006|main|INFO|OVNSB IDL reconnected, force recompute. >>> 2020-12-03T12:56:38.645Z|00007|reconnect|INFO|ssl:x.x.x.x:6642: connected >>> 2020-12-03T12:56:38.650Z|00008|ofctrl|INFO|unix:/run/openvswitch/br-int.mgmt: connecting to switch >>> 2020-12-03T12:56:38.650Z|00009|rconn|INFO|unix:/run/openvswitch/br-int.mgmt: connecting... >>> 2020-12-03T12:56:38.651Z|00010|rconn|INFO|unix:/run/openvswitch/br-int.mgmt: connected >>> 2020-12-03T12:56:38.654Z|00001|pinctrl(ovn_pinctrl0)|INFO|unix:/run/openvswitch/br-int.mgmt: connecting to switch >>> 2020-12-03T12:56:38.654Z|00002|rconn(ovn_pinctrl0)|INFO|unix:/run/openvswitch/br-int.mgmt: connecting... >>> 2020-12-03T12:56:38.654Z|00011|binding|INFO|Claiming lport eni-35AFCD00 for this chassis. >>> 2020-12-03T12:56:38.654Z|00012|binding|INFO|eni-35AFCD00: Claiming 0a:00:35:af:cd:00 192.168.0.5 >>> 2020-12-03T12:56:38.654Z|00013|binding|INFO|Claiming lport eni-3E9901E0 for this chassis. >>> 2020-12-03T12:56:38.654Z|00014|binding|INFO|eni-3E9901E0: Claiming 0a:00:3e:99:01:e0 192.168.0.4 >>> 2020-12-03T12:56:38.655Z|00015|ovsdb_idl|WARN|transaction error: {"details":"RBAC rules for client \"04540082-b5b5-4ab5-9901-03ed445c772d\" role \"ovn-controller\" prohibit modification of table \"Encap\".","error":"permission error"} >>> 2020-12-03T12:56:38.655Z|00016|main|INFO|OVNSB commit failed, force recompute next time. >>> >>> >>> Maybe, I just don’t understand your idea... >> >> I see. I'm pretty sure it's related to this commit that tries to reuse >> Encaps (and that's wrong because it doesn't work with RBAC): >> >> https://github.com/ovn-org/ovn/commit/94a32fca2d2b825fece0ef5b1873459bd9857dd3 >> >> I'll try to fix it and update this thread. >> > > Hi Vladislav, > > The problem is that branch-20.06 misses the following commit: > https://github.com/ovn-org/ovn/commit/94a32fca2d2b825fece0ef5b1873459bd9857dd3 Oops, this should've been: https://github.com/ovn-org/ovn/commit/dce1af31b550a9fb57b01cbe0b4139b6768f2521 > > However, at Han's suggestion we decided to remove the code that allowed > ovn-controller to reuse stale chassis records from the SB (because it > wasn't working properly with RBAC). At this point I don't think it > makes sense to backport the missing commit because we'll be just > reverting it as soon as the new patch is accepted: > > http://patchwork.ozlabs.org/project/ovn/patch/1607455279-21771-1-git-send-email-dce...@redhat.com/ > > Once/if the above is accepted, I'll send backport patches for all stable > branches. > > Thanks, > Dumitru > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev