[Bug 1915829] Re: FQDN / hostname recorded in OVSDB is unreliable

Frode Nordahl 1915829 at bugs.launchpad.net
Tue May 25 07:44:02 UTC 2021


$ juju run --unit ovn-chassis/0 'ovs-vsctl remove open-vswitch . external-ids hostname'
$ juju run --unit ovn-chassis/0 'sudo shutdown -r now'
$ juju run --unit ovn-chassis/0 'ovs-vsctl remove open-vswitch . external-ids hostname'
$ juju run --unit ovn-chassis/0 'sudo shutdown -r now'
$ juju run --unit ovn-chassis/0 'ovs-vsctl get open-vswitch . external-ids:hostname'
juju-a0db23-0-lxd-0.maas
$ juju run --unit ovn-chassis/0 'apt-cache policy openvswitch-switch'
openvswitch-switch:
  Installed: 2.13.3-0ubuntu0.20.04.1~cloud0
  Candidate: 2.13.3-0ubuntu0.20.04.1~cloud0
  Version table:
 *** 2.13.3-0ubuntu0.20.04.1~cloud0 500
        500 http://ubuntu-cloud.archive.canonical.com/ubuntu bionic-proposed/ussuri/main amd64 Packages
        100 /var/lib/dpkg/status
     2.9.8-0ubuntu0.18.04.2 500
        500 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
     2.9.0-0ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages


** Tags removed: verification-needed verification-ussuri-needed
** Tags added: verification-done verification-ussuri-done

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to openvswitch in Ubuntu.
https://bugs.launchpad.net/bugs/1915829

Title:
  FQDN / hostname recorded in OVSDB is unreliable

Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive ussuri series:
  Fix Committed
Status in Ubuntu Cloud Archive victoria series:
  Invalid
Status in Ubuntu Cloud Archive wallaby series:
  Fix Released
Status in openvswitch package in Ubuntu:
  Fix Released
Status in openvswitch source package in Focal:
  Fix Released
Status in openvswitch source package in Groovy:
  Fix Released
Status in openvswitch source package in Hirsute:
  Fix Released

Bug description:
  [ Impact ]

  The Open vSwitch init script `ovs-ctl` determines the system hostname
  and records it in the `external-ids:hostname` field of the `Open-
  vSwitch` table in the local OVSDB.

  This value may be consumed by downstream software and having it unset
  or set to a incorrect value could lead to erratic behavior of a
  system.

  In recent Ubuntu development we have also made it possible to
  configure Open vSwitch with netplan.io, which allows for a Open
  vSwitch controlled data path to be the only external network
  connection on a system.

  As such the current startup sequence of Open vSwitch is insufficient
  to allow for reliable recording of FQDN / hostname at system boot-up
  time.

  Examples of downstream issues can be viewed in bug 1896630 and bug
  1912844 comment #26.

  [ Test Case ]

  1) Deploy bundle on metal:

  series: focal
  machines:
    '0':
      constraints: cores=48
  relations:
   - - octavia:ovsdb-subordinate
     - ovn-chassis:ovsdb-subordinate
  applications:
    ovn-chassis:
      charm: cs:ovn-chassis
      bindings:
        "": public-space
    octavia:
      charm: cs:octavia
      options:
        openstack-origin: distro
      num_units: 1
      to:
      - 'lxd:0'
      bindings:
        "": public-space

  2) juju run --unit ovn-chassis/0 'ovs-vsctl remove open-vswitch . external-ids hostname'
  3) juju run --unit ovn-chassis/0 'sudo shutdown -r now'
  4) Observe external-ids:hostname being recorded as a shortname
  5) Add proposed and install openvswitch packages, repeat step 2-3
  6) Observe external-ids:hostname  being recorded as a FQDN

  [ Regression potential ]

  Minimal, the update uses the exact same methods to accomplish the end
  result of recording the hostname as before, we have only re-ordered
  when the events occur to ensure successful operation.

  [racb] A new service is added in packaging. Users who have overridden
  existing services to change behaviour (eg. "disable all OVS-related
  services") may have that configuration not have the same effect after
  this update (eg. "I thought I disabled all OVS-related services but
  what's this ovs-record-hostname thing now?")

  [ Other Info ]

  A possible solution to this would be to extend the upstream `ovs-ctl`
  script to allow controlling when the hostname is recorded and adding a
  new Systemd service file to the package that calls the `record-
  hostname` function at a more appropriate time, i.e. after or as part
  of the `network-online.target`.

  An example of downstream issues can be viewed in bug 1896630.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1915829/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list