Bug 1803475 - ovn_dbs_virtual_ip created even though ovn is disabled in the environment which takes up an ip address unnecessarily
Summary: ovn_dbs_virtual_ip created even though ovn is disabled in the environment whi...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 16.0 (Train)
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: z2
: 16.0 (Train on RHEL 8.1)
Assignee: ffernand
QA Contact: Sasha Smolyak
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-02-16 10:25 UTC by Punit Kundal
Modified: 2020-05-14 12:16 UTC (History)
6 users (show)

Fixed In Version: openstack-tripleo-heat-templates-11.3.2-0.20200403125910.18d0766.el8ost.noarch.rpm
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-14 12:15:31 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1869900 0 None None None 2020-03-31 15:10:14 UTC
OpenStack gerrit 716729 0 None MERGED ovn_dbs_virtual_ip created even though ovn is disabled 2020-08-24 10:56:55 UTC
Red Hat Product Errata RHBA-2020:2114 0 None None None 2020-05-14 12:16:01 UTC

Description Punit Kundal 2020-02-16 10:25:54 UTC
Description of problem:

Use case: Deploying SRIOV with RHOSP 16

While deploying SRIOV it is has been specifically mentioned that ovn should be disabled and the ML2 plugin in use should be ovs. Details at [1];

Here's the containers-prepare-parameter.yaml from my lab: 

(overcloud) [stack@undercloud16 ~]$ cat containers-prepare-parameter.yaml 
# Generated with the following on 2020-02-14T09:04:33.965506
#
#   openstack tripleo container image prepare default --local-push-destination --output-env-file containers-prepare-parameter.yaml
#

parameter_defaults:
  ContainerImagePrepare:
  - push_destination: true
    set:
      ceph_alertmanager_image: ose-prometheus-alertmanager
      ceph_alertmanager_namespace: registry.redhat.io/openshift4
      ceph_alertmanager_tag: 4.1
      ceph_grafana_image: ose-grafana
      ceph_grafana_namespace: registry.redhat.io/openshift4
      ceph_grafana_tag: 4.1
      ceph_image: rhceph-4-rhel8
      ceph_namespace: registry.redhat.io/rhceph
      ceph_node_exporter_image: ose-prometheus-node-exporter
      ceph_node_exporter_namespace: registry.redhat.io/openshift4
      ceph_node_exporter_tag: v4.1
      ceph_prometheus_image: ose-prometheus
      ceph_prometheus_namespace: registry.redhat.io/openshift4
      ceph_prometheus_tag: 4.1
      ceph_tag: latest
      name_prefix: openstack-
      name_suffix: ''
      namespace: registry.redhat.io/rhosp-rhel8
      neutron_driver: null  << neutron driver set to null
      rhel_containers: false
      tag: '16.0'
    tag_from_label: '{version}-{release}'
    includes:
    - openstack-neutron-sriov-agent
    set:
      namespace: registry.redhat.io/rhosp-rhel8
      tag: 16.0-78

Secondly in my deployment command, I've included: services/neutron-ovs.yaml 

which ends up disabling all the ovn services:

(overcloud) [stack@undercloud16 ~]$ cat ~/templates/openstack-tripleo-heat-templates/environments/services/neutron-ovs.yaml 
# A Heat environment file that enables DVR in the overcloud. Used with Compute
# DVR role. Note that the network configuration is consistent with the default
# tripleo network templates so some customization is likely required for
# production deployments.
resource_registry:
  # Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
  # FIXME(bogdando): can not be switched yet due to puppet-base issues
  # see https://review.opendev.org/#/c/563443
  OS::TripleO::Docker::NeutronMl2PluginBase: ../../deployment/neutron/neutron-plugin-ml2.yaml

  OS::TripleO::Services::NeutronServer: ../../deployment/neutron/neutron-api-container-puppet.yaml
  OS::TripleO::Services::NeutronApi: ../../deployment/neutron/neutron-api-container-puppet.yaml
  OS::TripleO::Services::NeutronCorePlugin: ../../deployment/neutron/neutron-plugin-ml2-container-puppet.yaml
  OS::TripleO::Services::NeutronMetadataAgent: ../../deployment/neutron/neutron-metadata-container-puppet.yaml
  OS::TripleO::Services::NeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
  OS::TripleO::Services::NeutronDhcpAgent: ../../deployment/neutron/neutron-dhcp-container-puppet.yaml
  OS::TripleO::Services::ComputeNeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
  OS::TripleO::Services::NeutronL3Agent: ../../deployment/neutron/neutron-l3-container-puppet.yaml

  # Disable OVN services
  OS::TripleO::Services::OVNController: OS::Heat::None
  OS::TripleO::Services::OVNDBs: OS::Heat::None
  OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None

parameter_defaults:

  NeutronMechanismDrivers: ['openvswitch']
  NeutronPluginExtensions: "qos,port_security"

  NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
  NeutronNetworkType: 'vxlan'
  NeutronServicePlugins: 'router,qos,segments,trunk,port_forwarding'
  NeutronVniRanges: ['1:65536', ]
  KernelIpNonLocalBind: 0

  NeutronEnableDVR: false

  NeutronL3AgentExtensions: "port_forwarding"


yet when running; neutron port-list on the undercloud; we will see that the virtual ip for ovn dbs has been created:

(undercloud) [stack@undercloud16 ~]$ neutron port-list
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
+--------------------------------------+---------------------+----------------------------------+-------------------+-------------------------------------------------------------------------------------+
| id                                   | name                | tenant_id                        | mac_address       | fixed_ips                                                                           |
+--------------------------------------+---------------------+----------------------------------+-------------------+-------------------------------------------------------------------------------------+
| 2ce67251-f7c7-4719-80ea-092f07506afb |                     | 85385455d83a4f808f3e937625876fc7 | fa:16:3e:db:b1:7b | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.70"} |
| 2fdb766a-7a29-44ee-98c2-d22d2ba07c03 | ComputeSriov-port-0 | 85385455d83a4f808f3e937625876fc7 | 24:6e:96:d0:3b:71 | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.71"} |
| 7452e6d5-ec04-4435-94b5-a011c062c240 | redis_virtual_ip    | 85385455d83a4f808f3e937625876fc7 | fa:16:3e:e2:f9:50 | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.72"} |
| b8103cf2-f399-452a-a709-ca44d9e3a3ce | ovn_dbs_virtual_ip  | 85385455d83a4f808f3e937625876fc7 | fa:16:3e:51:01:1a | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.74"} |
| dfa341e6-805f-4f00-ad3a-1cc3387b2c99 | control_virtual_ip  | 85385455d83a4f808f3e937625876fc7 | fa:16:3e:e7:68:c9 | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.75"} |
| e1c819f3-7b96-48b2-95b7-efeda70bdc8b | Controller-port-0   | 85385455d83a4f808f3e937625876fc7 | 52:54:00:8f:cb:a0 | {"subnet_id": "ce9f81e0-8288-4003-8bcf-5d333c4c8142", "ip_address": "10.74.167.73"} |
+--------------------------------------+---------------------+----------------------------------+-------------------+-------------------------------------------------------------------------------------+

There are no ovn resources noticed on the controller or the compute node and from neutron agent-list we can see that the environment is using ML2 ovs only:

(overcloud) [stack@undercloud16 ~]$ neutron agent-list
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
+--------------------------------------+--------------------+--------------------------------------+-------------------+-------+----------------+---------------------------+
| id                                   | agent_type         | host                                 | availability_zone | alive | admin_state_up | binary                    |
+--------------------------------------+--------------------+--------------------------------------+-------------------+-------+----------------+---------------------------+
| 2dcda45c-f4dd-47f7-a505-c997b4e16b84 | L3 agent           | overcloud-controller-0.localdomain   | nova              | :-)   | True           | neutron-l3-agent          |
| 30da619a-b4e9-4885-961a-724d42b4d641 | Open vSwitch agent | overcloud-computesriov-0.localdomain |                   | :-)   | True           | neutron-openvswitch-agent |
| 36612095-b753-4cf3-ab99-3efbcc994551 | NIC Switch agent   | overcloud-computesriov-0.localdomain |                   | :-)   | True           | neutron-sriov-nic-agent   |
| b40e81bf-9a8f-4af3-9dad-846c0b1e8ba6 | Metadata agent     | overcloud-controller-0.localdomain   |                   | :-)   | True           | neutron-metadata-agent    |
| c0da935b-e40f-4778-802a-c4bca505c10b | DHCP agent         | overcloud-controller-0.localdomain   | nova              | :-)   | True           | neutron-dhcp-agent        |
| c5c5c5b4-8de5-4eb5-874e-6aa406c0e9d7 | Open vSwitch agent | overcloud-controller-0.localdomain   |                   | :-)   | True           | neutron-openvswitch-agent |
+--------------------------------------+--------------------+--------------------------------------+-------------------+-------+----------------+---------------------------+

[root@overcloud-controller-0 ~]# pcs status
Cluster name: tripleo_cluster
Stack: corosync
Current DC: overcloud-controller-0 (version 2.0.2-3.el8_1.2-744a30d655) - partition with quorum
Last updated: Sun Feb 16 15:42:51 2020
Last change: Sun Feb 16 14:51:50 2020 by root via cibadmin on overcloud-controller-0

4 nodes configured
13 resources configured

Online: [ overcloud-controller-0 ]
GuestOnline: [ galera-bundle-0@overcloud-controller-0 rabbitmq-bundle-0@overcloud-controller-0 redis-bundle-0@overcloud-controller-0 ]

Full list of resources:

 Container bundle: galera-bundle [cluster.common.tag/openstack-mariadb:pcmklatest]
   galera-bundle-0	(ocf::heartbeat:galera):	Master overcloud-controller-0
 Container bundle: rabbitmq-bundle [cluster.common.tag/openstack-rabbitmq:pcmklatest]
   rabbitmq-bundle-0	(ocf::heartbeat:rabbitmq-cluster):	Started overcloud-controller-0
 Container bundle: redis-bundle [cluster.common.tag/openstack-redis:pcmklatest]
   redis-bundle-0	(ocf::heartbeat:redis):	Master overcloud-controller-0
 ip-10.74.167.75	(ocf::heartbeat:IPaddr2):	Started overcloud-controller-0
 ip-10.74.167.72	(ocf::heartbeat:IPaddr2):	Started overcloud-controller-0
 Container bundle: haproxy-bundle [cluster.common.tag/openstack-haproxy:pcmklatest]
   haproxy-bundle-podman-0	(ocf::heartbeat:podman):	Started overcloud-controller-0
 Container bundle: openstack-cinder-volume [cluster.common.tag/openstack-cinder-volume:pcmklatest]
   openstack-cinder-volume-podman-0	(ocf::heartbeat:podman):	Started overcloud-controller-0

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled




[1] https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.0/html-single/network_functions_virtualization_planning_and_configuration_guide/index#sect-supported-conf

Version-Release number of selected component (if applicable):
(undercloud) [stack@undercloud16 ~]$ rpm -qa | grep -i tripleo-heat-templates
openstack-tripleo-heat-templates-11.3.2-0.20200131125640.cc909b6.el8ost.noarch
(undercloud) [stack@undercloud16 ~]$ 


How reproducible:
Always

Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 12 errata-xmlrpc 2020-05-14 12:15:31 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, 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-2020:2114


Note You need to log in before you can comment on or make changes to this bug.