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];
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 |
+--------------------------------------+--------------------+--------------------------------------+-------------------+-------+----------------+------------------------
[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
Fix proposed to branch: master /review. opendev. org/716352
Review: https:/