[OVN] SRIOV with native OVN DHCP server
In order to make SRIOV work for the OVN driver the concept of "external"
ports has been introduced (see depends-on). These ports lives on a
different host (gateway nodes) and are able to reply to arp requests
on behalf of VM port. In the SRIOV case, the SRIOV port is bypassed in
the hypervidor so the OVN driver creates an external port it which will
reply to the DHCP packets.
This patch is creating two new roles to work with the mechanism
described above:
* ControllerSriov: Same as the normal Controller role but with the OVN
Metadata agent deployed.
* NetworkerSriov: Same as the normal Networker role but with the OVN
Metadata agent deployed.
The patch also removes the Neutron DHCP agent from the
neutron-ovn-sriov.yaml environment file since no longer needed.
Depends-On: https://review.opendev.org/703376
Change-Id: I5ef3d6543785b677ea333803aaa23bd34abdd671
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
(cherry picked from commit 0d9cc4ca8f
)
This commit is contained in:
parent
97a5596442
commit
bc63a7b1c7
@ -9,7 +9,6 @@
|
||||
resource_registry:
|
||||
OS::TripleO::Services::NeutronSriovAgent: ../../deployment/neutron/neutron-sriov-agent-container-puppet.yaml
|
||||
OS::TripleO::Services::NeutronSriovHostConfig: ../../deployment/deprecated/neutron/neutron-sriov-host-config.yaml
|
||||
OS::TripleO::Services::NeutronDhcpAgent: ../../deployment/neutron/neutron-dhcp-container-puppet.yaml
|
||||
|
||||
parameter_defaults:
|
||||
NeutronMechanismDrivers: ['sriovnicswitch','ovn']
|
||||
|
185
roles/ControllerSriov.yaml
Normal file
185
roles/ControllerSriov.yaml
Normal file
@ -0,0 +1,185 @@
|
||||
###############################################################################
|
||||
# Role: ControllerSriov #
|
||||
###############################################################################
|
||||
- name: ControllerSriov
|
||||
description: |
|
||||
Controller role that has all the controler services loaded and handles
|
||||
Database, Messaging and Network functions.
|
||||
CountDefault: 1
|
||||
tags:
|
||||
- primary
|
||||
- controller
|
||||
networks:
|
||||
External:
|
||||
subnet: external_subnet
|
||||
InternalApi:
|
||||
subnet: internal_api_subnet
|
||||
Storage:
|
||||
subnet: storage_subnet
|
||||
StorageMgmt:
|
||||
subnet: storage_mgmt_subnet
|
||||
Tenant:
|
||||
subnet: tenant_subnet
|
||||
# For systems with both IPv4 and IPv6, you may specify a gateway network for
|
||||
# each, such as ['ControlPlane', 'External']
|
||||
default_route_networks: ['External']
|
||||
HostnameFormatDefault: '%stackname%-controller-sriov-%index%'
|
||||
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
||||
# Set uses_deprecated_params to True if any deprecated params are used.
|
||||
uses_deprecated_params: True
|
||||
deprecated_param_extraconfig: 'controllerExtraConfig'
|
||||
deprecated_param_flavor: 'OvercloudControlFlavor'
|
||||
deprecated_param_image: 'controllerImage'
|
||||
deprecated_nic_config_name: 'controller.yaml'
|
||||
update_serial: 1
|
||||
ServicesDefault:
|
||||
- OS::TripleO::Services::Aide
|
||||
- OS::TripleO::Services::AodhApi
|
||||
- OS::TripleO::Services::AodhEvaluator
|
||||
- OS::TripleO::Services::AodhListener
|
||||
- OS::TripleO::Services::AodhNotifier
|
||||
- OS::TripleO::Services::AuditD
|
||||
- OS::TripleO::Services::BarbicanApi
|
||||
- OS::TripleO::Services::BarbicanBackendSimpleCrypto
|
||||
- OS::TripleO::Services::BarbicanBackendDogtag
|
||||
- OS::TripleO::Services::BarbicanBackendKmip
|
||||
- OS::TripleO::Services::BarbicanBackendPkcs11Crypto
|
||||
- OS::TripleO::Services::BootParams
|
||||
- OS::TripleO::Services::CACerts
|
||||
- OS::TripleO::Services::CeilometerAgentCentral
|
||||
- OS::TripleO::Services::CeilometerAgentNotification
|
||||
- OS::TripleO::Services::CephExternal
|
||||
- OS::TripleO::Services::CephGrafana
|
||||
- OS::TripleO::Services::CephMds
|
||||
- OS::TripleO::Services::CephMgr
|
||||
- OS::TripleO::Services::CephMon
|
||||
- OS::TripleO::Services::CephRbdMirror
|
||||
- OS::TripleO::Services::CephRgw
|
||||
- OS::TripleO::Services::CertmongerUser
|
||||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
- OS::TripleO::Services::CinderBackendPure
|
||||
- OS::TripleO::Services::CinderBackendScaleIO
|
||||
- OS::TripleO::Services::CinderBackendVRTSHyperScale
|
||||
- OS::TripleO::Services::CinderBackendNVMeOF
|
||||
- OS::TripleO::Services::CinderBackup
|
||||
- OS::TripleO::Services::CinderHPELeftHandISCSI
|
||||
- OS::TripleO::Services::CinderScheduler
|
||||
- OS::TripleO::Services::CinderVolume
|
||||
- OS::TripleO::Services::Clustercheck
|
||||
- OS::TripleO::Services::Collectd
|
||||
- OS::TripleO::Services::ContainerImagePrepare
|
||||
- OS::TripleO::Services::DesignateApi
|
||||
- OS::TripleO::Services::DesignateCentral
|
||||
- OS::TripleO::Services::DesignateProducer
|
||||
- OS::TripleO::Services::DesignateWorker
|
||||
- OS::TripleO::Services::DesignateMDNS
|
||||
- OS::TripleO::Services::DesignateSink
|
||||
- OS::TripleO::Services::Docker
|
||||
- OS::TripleO::Services::Etcd
|
||||
- OS::TripleO::Services::ExternalSwiftProxy
|
||||
- OS::TripleO::Services::GlanceApi
|
||||
- OS::TripleO::Services::GnocchiApi
|
||||
- OS::TripleO::Services::GnocchiMetricd
|
||||
- OS::TripleO::Services::GnocchiStatsd
|
||||
- OS::TripleO::Services::HAproxy
|
||||
- OS::TripleO::Services::HeatApi
|
||||
- OS::TripleO::Services::HeatApiCloudwatch
|
||||
- OS::TripleO::Services::HeatApiCfn
|
||||
- OS::TripleO::Services::HeatEngine
|
||||
- OS::TripleO::Services::Horizon
|
||||
- OS::TripleO::Services::IpaClient
|
||||
- OS::TripleO::Services::Ipsec
|
||||
- OS::TripleO::Services::IronicApi
|
||||
- OS::TripleO::Services::IronicConductor
|
||||
- OS::TripleO::Services::IronicInspector
|
||||
- OS::TripleO::Services::IronicPxe
|
||||
- OS::TripleO::Services::IronicNeutronAgent
|
||||
- OS::TripleO::Services::Iscsid
|
||||
- OS::TripleO::Services::Keepalived
|
||||
- OS::TripleO::Services::Kernel
|
||||
- OS::TripleO::Services::Keystone
|
||||
- OS::TripleO::Services::LoginDefs
|
||||
- OS::TripleO::Services::ManilaApi
|
||||
- OS::TripleO::Services::ManilaBackendCephFs
|
||||
- OS::TripleO::Services::ManilaBackendIsilon
|
||||
- OS::TripleO::Services::ManilaBackendNetapp
|
||||
- OS::TripleO::Services::ManilaBackendUnity
|
||||
- OS::TripleO::Services::ManilaBackendVNX
|
||||
- OS::TripleO::Services::ManilaBackendVMAX
|
||||
- OS::TripleO::Services::ManilaScheduler
|
||||
- OS::TripleO::Services::ManilaShare
|
||||
- OS::TripleO::Services::Memcached
|
||||
- OS::TripleO::Services::MetricsQdr
|
||||
- OS::TripleO::Services::MistralApi
|
||||
- OS::TripleO::Services::MistralEngine
|
||||
- OS::TripleO::Services::MistralExecutor
|
||||
- OS::TripleO::Services::MistralEventEngine
|
||||
- OS::TripleO::Services::Multipathd
|
||||
- OS::TripleO::Services::MySQL
|
||||
- OS::TripleO::Services::MySQLClient
|
||||
- OS::TripleO::Services::NeutronApi
|
||||
- OS::TripleO::Services::NeutronBgpVpnApi
|
||||
- OS::TripleO::Services::NeutronSfcApi
|
||||
- OS::TripleO::Services::NeutronCorePlugin
|
||||
- OS::TripleO::Services::NeutronDhcpAgent
|
||||
- OS::TripleO::Services::NeutronL2gwAgent
|
||||
- OS::TripleO::Services::NeutronL2gwApi
|
||||
- OS::TripleO::Services::NeutronL3Agent
|
||||
- OS::TripleO::Services::NeutronLinuxbridgeAgent
|
||||
- OS::TripleO::Services::NeutronMetadataAgent
|
||||
- OS::TripleO::Services::NeutronML2FujitsuCfab
|
||||
- OS::TripleO::Services::NeutronML2FujitsuFossw
|
||||
- OS::TripleO::Services::NeutronOvsAgent
|
||||
- OS::TripleO::Services::NeutronVppAgent
|
||||
- OS::TripleO::Services::NeutronAgentsIBConfig
|
||||
- OS::TripleO::Services::NovaApi
|
||||
- OS::TripleO::Services::NovaConductor
|
||||
- OS::TripleO::Services::NovaIronic
|
||||
- OS::TripleO::Services::NovaMetadata
|
||||
- OS::TripleO::Services::NovaScheduler
|
||||
- OS::TripleO::Services::NovaVncProxy
|
||||
- OS::TripleO::Services::ContainersLogrotateCrond
|
||||
- OS::TripleO::Services::OctaviaApi
|
||||
- OS::TripleO::Services::OctaviaDeploymentConfig
|
||||
- OS::TripleO::Services::OctaviaHealthManager
|
||||
- OS::TripleO::Services::OctaviaHousekeeping
|
||||
- OS::TripleO::Services::OctaviaWorker
|
||||
- OS::TripleO::Services::OpenStackClients
|
||||
- OS::TripleO::Services::OVNDBs
|
||||
- OS::TripleO::Services::OVNController
|
||||
- OS::TripleO::Services::OVNMetadataAgent
|
||||
- OS::TripleO::Services::Pacemaker
|
||||
- OS::TripleO::Services::PlacementApi
|
||||
- OS::TripleO::Services::OsloMessagingRpc
|
||||
- OS::TripleO::Services::OsloMessagingNotify
|
||||
- OS::TripleO::Services::Podman
|
||||
- OS::TripleO::Services::Rear
|
||||
- OS::TripleO::Services::Redis
|
||||
- OS::TripleO::Services::Rhsm
|
||||
- OS::TripleO::Services::Rsyslog
|
||||
- OS::TripleO::Services::RsyslogSidecar
|
||||
- OS::TripleO::Services::SaharaApi
|
||||
- OS::TripleO::Services::SaharaEngine
|
||||
- OS::TripleO::Services::Securetty
|
||||
- OS::TripleO::Services::SkydiveAgent
|
||||
- OS::TripleO::Services::SkydiveAnalyzer
|
||||
- OS::TripleO::Services::Snmp
|
||||
- OS::TripleO::Services::Sshd
|
||||
- OS::TripleO::Services::SwiftProxy
|
||||
- OS::TripleO::Services::SwiftDispersion
|
||||
- OS::TripleO::Services::SwiftRingBuilder
|
||||
- OS::TripleO::Services::SwiftStorage
|
||||
- OS::TripleO::Services::Timesync
|
||||
- OS::TripleO::Services::Timezone
|
||||
- OS::TripleO::Services::TripleoFirewall
|
||||
- OS::TripleO::Services::TripleoPackages
|
||||
- OS::TripleO::Services::Tuned
|
||||
- OS::TripleO::Services::Vpp
|
||||
- OS::TripleO::Services::Zaqar
|
56
roles/NetworkerSriov.yaml
Normal file
56
roles/NetworkerSriov.yaml
Normal file
@ -0,0 +1,56 @@
|
||||
###############################################################################
|
||||
# Role: NetworkerSriov #
|
||||
###############################################################################
|
||||
- name: NetworkerSriov
|
||||
description: |
|
||||
Standalone networking role to run Neutron agents on their own.
|
||||
networks:
|
||||
InternalApi:
|
||||
subnet: internal_api_subnet
|
||||
Tenant:
|
||||
subnet: tenant_subnet
|
||||
tags:
|
||||
- external_bridge
|
||||
HostnameFormatDefault: '%stackname%-networker-sriov-%index%'
|
||||
update_serial: 1
|
||||
ServicesDefault:
|
||||
- OS::TripleO::Services::Aide
|
||||
- OS::TripleO::Services::AuditD
|
||||
- OS::TripleO::Services::BootParams
|
||||
- OS::TripleO::Services::CACerts
|
||||
- OS::TripleO::Services::CertmongerUser
|
||||
- OS::TripleO::Services::Collectd
|
||||
- OS::TripleO::Services::Docker
|
||||
- OS::TripleO::Services::IpaClient
|
||||
- OS::TripleO::Services::Ipsec
|
||||
- OS::TripleO::Services::IronicNeutronAgent
|
||||
- OS::TripleO::Services::Kernel
|
||||
- OS::TripleO::Services::LoginDefs
|
||||
- OS::TripleO::Services::MetricsQdr
|
||||
- OS::TripleO::Services::MySQLClient
|
||||
- OS::TripleO::Services::NeutronDhcpAgent
|
||||
- OS::TripleO::Services::NeutronL2gwAgent
|
||||
- OS::TripleO::Services::NeutronL3Agent
|
||||
- OS::TripleO::Services::NeutronMetadataAgent
|
||||
- OS::TripleO::Services::NeutronML2FujitsuCfab
|
||||
- OS::TripleO::Services::NeutronML2FujitsuFossw
|
||||
- OS::TripleO::Services::NeutronOvsAgent
|
||||
- OS::TripleO::Services::NeutronVppAgent
|
||||
- OS::TripleO::Services::ContainersLogrotateCrond
|
||||
- OS::TripleO::Services::OctaviaDeploymentConfig
|
||||
- OS::TripleO::Services::OctaviaHealthManager
|
||||
- OS::TripleO::Services::OctaviaHousekeeping
|
||||
- OS::TripleO::Services::OctaviaWorker
|
||||
- OS::TripleO::Services::OVNController
|
||||
- OS::TripleO::Services::OVNMetadataAgent
|
||||
- OS::TripleO::Services::Podman
|
||||
- OS::TripleO::Services::Rhsm
|
||||
- OS::TripleO::Services::Rsyslog
|
||||
- OS::TripleO::Services::SkydiveAgent
|
||||
- OS::TripleO::Services::Snmp
|
||||
- OS::TripleO::Services::Sshd
|
||||
- OS::TripleO::Services::Timesync
|
||||
- OS::TripleO::Services::Timezone
|
||||
- OS::TripleO::Services::TripleoFirewall
|
||||
- OS::TripleO::Services::TripleoPackages
|
||||
- OS::TripleO::Services::Tuned
|
Loading…
Reference in New Issue
Block a user