From 1016979d40b7a1eabbe2f6268e502aa005e9b535 Mon Sep 17 00:00:00 2001 From: Feng Pan Date: Mon, 18 Sep 2017 10:58:02 -0400 Subject: Update Opendaylight features for fdio scenarios Use new features string for ODL nitrogen/oxygen versions Change-Id: Ie8b284f64bd6491c389129d8afdaeae8a399b607 Signed-off-by: Feng Pan (cherry picked from commit ccec1c70f61cca2cf3249ec29ad2c6ab576c1d96) --- environments/neutron-opendaylight-fdio-dvr.yaml | 5 +-- environments/neutron-opendaylight-honeycomb.yaml | 2 +- puppet/compute-role.yaml | 1 + puppet/controller-role.yaml | 1 + puppet/extraconfig/all_nodes/vpp-admin-ip.yaml | 40 ++++++++++++++++++++++++ 5 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 puppet/extraconfig/all_nodes/vpp-admin-ip.yaml diff --git a/environments/neutron-opendaylight-fdio-dvr.yaml b/environments/neutron-opendaylight-fdio-dvr.yaml index 36882b73..68b2ba56 100644 --- a/environments/neutron-opendaylight-fdio-dvr.yaml +++ b/environments/neutron-opendaylight-fdio-dvr.yaml @@ -1,12 +1,13 @@ # A Heat environment that can be used to deploy OpenDaylight with Honeycomb Agent resource_registry: + OS::TripleO::NodeExtraConfig: ../puppet/extraconfig/all_nodes/vpp-admin-ip.yaml OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None OS::TripleO::Services::NeutronCorePlugin: ../puppet/services/neutron-plugin-ml2-odl.yaml OS::TripleO::Services::OpenDaylightApi: ../puppet/services/opendaylight-api.yaml OS::TripleO::Services::NeutronHoneycombAgent: ../puppet/services/neutron-odl-honeycomb-agent.yaml - OS::TripleO::Services::Vpp: ../puppet/services/vpp-ctlplane-ip.yaml + OS::TripleO::Services::Vpp: ../puppet/services/vpp.yaml OS::TripleO::Services::NeutronL3Agent: OS::Heat::None OS::TripleO::Services::ComputeNeutronMetadataAgent: ../puppet/services/neutron-metadata.yaml @@ -15,7 +16,7 @@ parameter_defaults: NeutronL3HA: false #NUMATopologyFilter is required for vhostuser interfaces #NovaSchedulerDefaultFilters: "RamFilter,ComputeFilter,AvailabilityZoneFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,NUMATopologyFilter" - OpenDaylightFeatures: "odl-restconf,odl-netconf-all,odl-groupbasedpolicy-neutron-vpp-mapper,odl-lispflowmapping-msmr" + OpenDaylightFeatures: "odl-restconf,odl-netconf,odl-vbd,odl-groupbasedpolicy-neutron-vpp-mapper,odl-groupbasedpolicy-vpp,odl-lispflowmapping-msmr,odl-lispflowmapping-mappingservice-shell" NeutronEnableForceMetadata: true NeutronMechanismDrivers: 'opendaylight_v2' NeutronServicePlugins: 'odl-router_v2' diff --git a/environments/neutron-opendaylight-honeycomb.yaml b/environments/neutron-opendaylight-honeycomb.yaml index 6837fbe1..c36e2b33 100644 --- a/environments/neutron-opendaylight-honeycomb.yaml +++ b/environments/neutron-opendaylight-honeycomb.yaml @@ -14,7 +14,7 @@ parameter_defaults: NeutronL3HA: false #NUMATopologyFilter is required for vhostuser interfaces #NovaSchedulerDefaultFilters: "RamFilter,ComputeFilter,AvailabilityZoneFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,NUMATopologyFilter" - OpenDaylightFeatures: "odl-netconf-all,odl-vbd,odl-groupbasedpolicy-neutron-vpp-mapper,odl-restconf" + OpenDaylightFeatures: "odl-restconf,odl-netconf,odl-vbd,odl-groupbasedpolicy-neutron-vpp-mapper,odl-groupbasedpolicy-vpp" NeutronEnableForceMetadata: true NeutronMechanismDrivers: 'opendaylight_v2' NeutronServicePlugins: 'odl-router_v2' diff --git a/puppet/compute-role.yaml b/puppet/compute-role.yaml index fff5c01c..816601ab 100644 --- a/puppet/compute-role.yaml +++ b/puppet/compute-role.yaml @@ -426,6 +426,7 @@ resources: - midonet_data # Optionally provided by AllNodesExtraConfig - neutron_opencontrail_data # Optionally provided by ComputeExtraConfigPre - cisco_aci_data # Optionally provided by ComputeExtraConfigPre + - vpp_data # Optionally provided by NodeExtraConfig - common # provided by os-net-config merge_behavior: deeper datafiles: diff --git a/puppet/controller-role.yaml b/puppet/controller-role.yaml index badab487..85c59468 100644 --- a/puppet/controller-role.yaml +++ b/puppet/controller-role.yaml @@ -472,6 +472,7 @@ resources: - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre - midonet_data #Optionally provided by AllNodesExtraConfig - cisco_aci_data # Optionally provided by ControllerExtraConfigPre + - vpp_data # Optionally provided by NodeExtraConfig - common # provided by os-net-config merge_behavior: deeper datafiles: diff --git a/puppet/extraconfig/all_nodes/vpp-admin-ip.yaml b/puppet/extraconfig/all_nodes/vpp-admin-ip.yaml new file mode 100644 index 00000000..6627d70c --- /dev/null +++ b/puppet/extraconfig/all_nodes/vpp-admin-ip.yaml @@ -0,0 +1,40 @@ +heat_template_version: ocata + +description: Configure hieradata for Network Cisco configuration + +parameters: + # Parameters passed from the parent template + server: + type: string + +resources: + VppCtlplaneIp: + type: OS::Neutron::Port + properties: + network: ctlplane + name: 'VPP IP' + replacement_policy: AUTO + + VppAdminIpConfig: + type: OS::Heat::StructuredConfig + properties: + group: hiera + config: + datafiles: + vpp_data: + map_merge: + - vpp_ctlplane_cidr: + list_join: + - '' + - - {get_attr: [VppCtlplaneIp, fixed_ips, 0, ip_address]} + - '/' + - {str_split: ['/', {get_attr: [VppCtlplaneIp, subnets, 0, cidr]}, 1]} + + VppAdminIpDeployment: + type: OS::Heat::SoftwareDeployment + depends_on: VppCtlplaneIp + properties: + name: VppAdminIpDeployment + config: {get_resource: VppAdminIpConfig} + server: {get_param: server} + actions: ['CREATE'] # Only do this on CREATE -- cgit 1.2.3-korg