diff --git a/environments/nova-nuage-config.yaml b/environments/nova-nuage-config.yaml index 5e75ed9ee4..e8e3aaa471 100644 --- a/environments/nova-nuage-config.yaml +++ b/environments/nova-nuage-config.yaml @@ -1,8 +1,7 @@ # A Heat environment file which can be used to enable # Nuage backend on the compute, configured via puppet resource_registry: - OS::TripleO::ComputeExtraConfigPre: ../puppet/extraconfig/pre_deploy/compute/nova-nuage.yaml - OS::TripleO::Services::ComputeNeutronCorePlugin: ../puppet/services/neutron-compute-plugin-nuage.yaml + OS::TripleO::Services::ComputeNeutronCorePlugin: OS::TripleO::Services::ComputeNeutronCorePluginNuage parameter_defaults: NuageActiveController: '0.0.0.0' diff --git a/overcloud-resource-registry-puppet.j2.yaml b/overcloud-resource-registry-puppet.j2.yaml index 2004efffc9..8999b1e0aa 100644 --- a/overcloud-resource-registry-puppet.j2.yaml +++ b/overcloud-resource-registry-puppet.j2.yaml @@ -150,6 +150,7 @@ resource_registry: # can be the same as NeutronCorePlugin but some vendors install different # things where VMs run OS::TripleO::Services::ComputeNeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml + OS::TripleO::Services::ComputeNeutronCorePluginNuage: puppet/services/neutron-compute-plugin-nuage.yaml # Neutron Core Plugin Vendors (these typically override NeutronCorePlugin) OS::TripleO::Services::NeutronCorePluginML2OVN: puppet/services/neutron-plugin-ml2-ovn.yaml OS::TripleO::Services::NeutronCorePluginPlumgrid: puppet/services/neutron-plugin-plumgrid.yaml diff --git a/puppet/extraconfig/pre_deploy/compute/nova-nuage.yaml b/puppet/extraconfig/pre_deploy/compute/nova-nuage.yaml deleted file mode 100644 index 1d16e90943..0000000000 --- a/puppet/extraconfig/pre_deploy/compute/nova-nuage.yaml +++ /dev/null @@ -1,92 +0,0 @@ -heat_template_version: ocata - -description: Configure hieradata for Nuage configuration on the Compute - -parameters: - server: - description: ID of the compute node to apply this config to - type: string - - NuageActiveController: - description: IP address of the Active Virtualized Services Controller (VSC) - type: string - NuageStandbyController: - description: IP address of the Standby Virtualized Services Controller (VSC) - type: string - NuageMetadataPort: - description: TCP Port to listen for metadata server requests - type: string - default: '9697' - NuageNovaMetadataPort: - description: TCP Port used by Nova metadata server - type: string - default: '8775' - NuageMetadataProxySharedSecret: - description: Shared secret to sign the instance-id request - type: string - NuageNovaClientVersion: - description: Client Version Nova - type: string - default: '2' - NuageNovaOsUsername: - description: Nova username in keystone_authtoken - type: string - default: 'nova' - NuageMetadataAgentStartWithOvs: - description: Set to True if nuage-metadata-agent needs to be started with nuage-openvswitch-switch - type: string - default: 'True' - NuageNovaApiEndpoint: - description: One of publicURL, internalURL, adminURL in "keystone endpoint-list" - type: string - default: 'publicURL' - NuageNovaRegionName: - description: Region name in "keystone endpoint-list" - type: string - default: 'regionOne' - -# Declaration of resources for the template. -resources: - NovaNuageConfig: - type: OS::Heat::StructuredConfig - properties: - group: hiera - config: - datafiles: - nova_nuage_data: - mapped_data: - nuage::vrs::active_controller: {get_input: ActiveController} - nuage::vrs::standby_controller: {get_input: StandbyController} - nuage::metadataagent::metadata_port: {get_input: MetadataPort} - nuage::metadataagent::nova_metadata_port: {get_input: NovaMetadataPort} - nuage::metadataagent::metadata_secret: {get_input: SharedSecret} - nuage::metadataagent::nova_client_version: {get_input: NovaClientVersion} - nuage::metadataagent::nova_os_username: {get_input: NovaOsUsername} - nuage::metadataagent::metadata_agent_start_with_ovs: {get_input: MetadataAgentStartWithOvs} - nuage::metadataagent::nova_api_endpoint_type: {get_input: NovaApiEndpointType} - nuage::metadataagent::nova_region_name: {get_input: NovaRegionName} - - NovaNuageDeployment: - type: OS::Heat::StructuredDeployment - properties: - name: NovaNuageDeployment - config: {get_resource: NovaNuageConfig} - server: {get_param: server} - input_values: - ActiveController: {get_param: NuageActiveController} - StandbyController: {get_param: NuageStandbyController} - MetadataPort: {get_param: NuageMetadataPort} - NovaMetadataPort: {get_param: NuageNovaMetadataPort} - SharedSecret: {get_param: NuageMetadataProxySharedSecret} - NovaClientVersion: {get_param: NuageNovaClientVersion} - NovaOsUsername: {get_param: NuageNovaOsUsername} - MetadataAgentStartWithOvs: {get_param: NuageMetadataAgentStartWithOvs} - NovaApiEndpointType: {get_param: NuageNovaApiEndpoint} - NovaRegionName: {get_param: NuageNovaRegionName} - -# Specify output parameters that will be available -# after the template is instantiated. -outputs: - deploy_stdout: - description: Deployment reference, used to trigger puppet apply on changes - value: {get_attr: [NovaNuageDeployment, deploy_stdout]} diff --git a/puppet/services/neutron-compute-plugin-nuage.yaml b/puppet/services/neutron-compute-plugin-nuage.yaml index ea71769016..bf35eb267f 100644 --- a/puppet/services/neutron-compute-plugin-nuage.yaml +++ b/puppet/services/neutron-compute-plugin-nuage.yaml @@ -26,6 +26,39 @@ parameters: description: TCP Port to listen for metadata server requests type: string default: '9697' + NuageActiveController: + description: IP address of the Active Virtualized Services Controller (VSC) + type: string + NuageStandbyController: + description: IP address of the Standby Virtualized Services Controller (VSC) + type: string + NuageNovaMetadataPort: + description: TCP Port used by Nova metadata server + type: string + default: '8775' + NuageMetadataProxySharedSecret: + description: Shared secret to sign the instance-id request + type: string + NuageNovaClientVersion: + description: Client Version Nova + type: string + default: '2' + NuageNovaOsUsername: + description: Nova username in keystone_authtoken + type: string + default: 'nova' + NuageMetadataAgentStartWithOvs: + description: Set to True if nuage-metadata-agent needs to be started with nuage-openvswitch-switch + type: string + default: 'True' + NuageNovaApiEndpoint: + description: One of publicURL, internalURL, adminURL in "keystone endpoint-list" + type: string + default: 'publicURL' + NuageNovaRegionName: + description: Region name in "keystone endpoint-list" + type: string + default: 'regionOne' outputs: role_data: @@ -33,6 +66,16 @@ outputs: value: service_name: neutron_compute_plugin_nuage config_settings: + nuage::vrs::active_controller: {get_param: NuageActiveController} + nuage::vrs::standby_controller: {get_param: NuageStandbyController} + nuage::metadataagent::metadata_port: {get_param: NuageMetadataPort} + nuage::metadataagent::nova_metadata_port: {get_param: NuageNovaMetadataPort} + nuage::metadataagent::metadata_secret: {get_param: NuageMetadataProxySharedSecret} + nuage::metadataagent::nova_client_version: {get_param: NuageNovaClientVersion} + nuage::metadataagent::nova_os_username: {get_param: NuageNovaOsUsername} + nuage::metadataagent::metadata_agent_start_with_ovs: {get_param: NuageMetadataAgentStartWithOvs} + nuage::metadataagent::nova_api_endpoint_type: {get_param: NuageNovaApiEndpoint} + nuage::metadataagent::nova_region_name: {get_param: NuageNovaRegionName} tripleo::profile::base::neutron::agents::nuage::nova_os_tenant_name: 'service' tripleo::profile::base::neutron::agents::nuage::nova_os_password: {get_param: NovaPassword} tripleo::profile::base::neutron::agents::nuage::nova_auth_ip: {get_param: [EndpointMap, KeystoneInternal, host]}