Browse Source

Remove OpenDaylight templates and environments

OpenDaylight deployment has been deprecated in Stein. In Train,
the tempaltes are removed.

Change-Id: I9711ef977d045f1dbcdc631fe2655294109031b8
(cherry picked from commit 9c3638b8a1)
changes/23/693123/1
Saravanan KR 2 years ago
parent
commit
6d1ddeafb9
  1. 5
      capabilities-map.yaml
  2. 58
      ci/environments/scenario008-multinode-containers.yaml
  3. 3
      deployed-server/deployed-server-roles-data.yaml
  4. 390
      deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml
  5. 267
      deployment/deprecated/opendaylight/opendaylight-ovs-baremetal-puppet.yaml
  6. 33
      deployment/logging/files/opendaylight-api.yaml
  7. 75
      deployment/neutron/neutron-plugin-ml2-odl.yaml
  8. 1
      environments/hyperconverged-ceph.yaml
  9. 2
      environments/network-isolation-v6-all.j2.yaml
  10. 2
      environments/network-isolation-v6.j2.yaml
  11. 4
      environments/odl-dscp-marking-inheritance.yaml
  12. 12
      environments/services-baremetal/neutron-bgpvpn-opendaylight.yaml
  13. 18
      environments/services-baremetal/neutron-l2gw-opendaylight.yaml
  14. 22
      environments/services-baremetal/neutron-opendaylight-sriov.yaml
  15. 17
      environments/services-baremetal/neutron-opendaylight.yaml
  16. 12
      environments/services/neutron-bgpvpn-opendaylight.yaml
  17. 18
      environments/services/neutron-l2gw-opendaylight.yaml
  18. 37
      environments/services/neutron-opendaylight-dpdk.yaml
  19. 23
      environments/services/neutron-opendaylight-sriov.yaml
  20. 20
      environments/services/neutron-opendaylight.yaml
  21. 9
      environments/services/neutron-sfc-opendaylight.yaml
  22. 2
      environments/ssl/no-tls-endpoints-public-ip.yaml
  23. 2
      environments/ssl/tls-endpoints-public-dns.yaml
  24. 2
      environments/ssl/tls-endpoints-public-ip.yaml
  25. 2
      environments/ssl/tls-everywhere-endpoints-dns.yaml
  26. 3
      environments/undercloud/undercloud-minion.yaml
  27. 7
      network/endpoints/endpoint_data.yaml
  28. 262
      network/endpoints/endpoint_map.yaml
  29. 3
      overcloud-resource-registry-puppet.j2.yaml
  30. 5
      releasenotes/notes/remove-odl-735ca4129c2a450e.yaml
  31. 1
      roles/Compute.yaml
  32. 1
      roles/ComputeAlt.yaml
  33. 1
      roles/ComputeDVR.yaml
  34. 1
      roles/ComputeHCI.yaml
  35. 1
      roles/ComputeHCIOvsDpdk.yaml
  36. 1
      roles/ComputeInstanceHA.yaml
  37. 1
      roles/ComputeLocalEphemeral.yaml
  38. 1
      roles/ComputeOvsDpdk.yaml
  39. 1
      roles/ComputeOvsDpdkRT.yaml
  40. 1
      roles/ComputeOvsDpdkSriov.yaml
  41. 1
      roles/ComputeOvsDpdkSriovRT.yaml
  42. 1
      roles/ComputePPC64LE.yaml
  43. 1
      roles/ComputeRBDEphemeral.yaml
  44. 1
      roles/ComputeRealTime.yaml
  45. 1
      roles/ComputeSriov.yaml
  46. 1
      roles/ComputeSriovRT.yaml
  47. 2
      roles/Controller.yaml
  48. 2
      roles/ControllerAllNovaStandalone.yaml
  49. 2
      roles/ControllerNoCeph.yaml
  50. 2
      roles/ControllerNovaStandalone.yaml
  51. 2
      roles/ControllerOpenstack.yaml
  52. 2
      roles/ControllerStorageDashboard.yaml
  53. 2
      roles/ControllerStorageNfs.yaml
  54. 1
      roles/DistributedCompute.yaml
  55. 1
      roles/DistributedComputeHCI.yaml
  56. 1
      roles/HciCephAll.yaml
  57. 1
      roles/HciCephFile.yaml
  58. 1
      roles/HciCephMon.yaml
  59. 1
      roles/HciCephObject.yaml
  60. 1
      roles/Networker.yaml
  61. 1
      roles/Novacontrol.yaml
  62. 1
      roles/README.rst
  63. 2
      roles/Standalone.yaml
  64. 3
      roles_data.yaml
  65. 8
      sample-env-generator/ssl.yaml
  66. 3
      sample-env-generator/undercloud-minion.yaml

5
capabilities-map.yaml

@ -233,11 +233,6 @@ topics:
description: Enables Neutron Nuage backend on the controller
requires:
- overcloud-resource-registry-puppet.yaml
- file: environments/neutron-opendaylight.yaml
title: OpenDaylight
description: Enables OpenDaylight
requires:
- overcloud-resource-registry-puppet.yaml
- file: environments/neutron-ovs-dpdk.yaml
title: DPDK with OVS
description: Deploy DPDK with OVS

58
ci/environments/scenario008-multinode-containers.yaml

@ -1,58 +0,0 @@
resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode.yaml
OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode.yaml
OS::TripleO::Services::OpenDaylightApi: ../../deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml
OS::TripleO::Services::OpenDaylightOvs: ../../puppet/services/opendaylight-ovs.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: ../../deployment/neutron/neutron-plugin-ml2-odl.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:
ControllerServices:
- OS::TripleO::Services::ContainerImagePrepare
- OS::TripleO::Services::Docker
- OS::TripleO::Services::GlanceApi
- OS::TripleO::Services::HAproxy
- OS::TripleO::Services::HeatApi
- OS::TripleO::Services::HeatApiCfn
- OS::TripleO::Services::HeatApiCloudwatch
- OS::TripleO::Services::HeatEngine
- OS::TripleO::Services::Keepalived
- OS::TripleO::Services::Kernel
- OS::TripleO::Services::Keystone
- OS::TripleO::Services::Memcached
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NovaApi
- OS::TripleO::Services::NovaCompute
- OS::TripleO::Services::NovaConductor
- OS::TripleO::Services::NovaLibvirt
- OS::TripleO::Services::NovaMetadata
- OS::TripleO::Services::PlacementApi
- OS::TripleO::Services::NovaScheduler
- OS::TripleO::Services::OpenDaylightApi
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::Snmp
- OS::TripleO::Services::Sshd
- OS::TripleO::Services::Timesync
- OS::TripleO::Services::Timezone
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::TripleoFirewall
NeutronTypeDrivers: 'vlan,flat,vxlan'
Debug: true
DockerPuppetDebug: true
# we don't deploy Swift so we switch to file backend.
GlanceBackend: 'file'
KeystoneTokenProvider: 'fernet'
SwiftCeilometerPipelineEnabled: false
NeutronEnableForceMetadata: true
NeutronMechanismDrivers: 'opendaylight_v2'
NeutronServicePlugins: 'odl-router_v2,trunk'

3
deployed-server/deployed-server-roles-data.yaml

@ -155,8 +155,6 @@
- OS::TripleO::Services::OctaviaHealthManager
- OS::TripleO::Services::OctaviaHousekeeping
- OS::TripleO::Services::OctaviaWorker
- OS::TripleO::Services::OpenDaylightApi
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::OpenStackClients
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
@ -252,7 +250,6 @@
- OS::TripleO::Services::NovaLibvirtGuests
- OS::TripleO::Services::NovaMigrationTarget
- OS::TripleO::Services::ContainersLogrotateCrond
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Rhsm
- OS::TripleO::Services::Rsyslog

390
deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml

@ -1,390 +0,0 @@
heat_template_version: rocky
description: >
OpenStack containerized OpenDaylight API service
Note, This service is deprecated in Stein release and will
be disabled in future releases.
parameters:
ContainerOpendaylightApiImage:
description: image
type: string
ContainerOpendaylightConfigImage:
description: image
type: string
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. This
mapping overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EnableInternalTLS:
type: boolean
default: false
InternalTLSCAFile:
default: '/etc/ipa/ca.crt'
type: string
description: Specifies the default CA cert to use if TLS is used for
services in the internal network.
ODLUpdateLevel:
default: 1
description: Specify the level of update
type: number
constraints:
- allowed_values:
- 1
- 2
OpenDaylightUsername:
default: 'admin'
description: The username for the opendaylight server.
type: string
OpenDaylightPassword:
type: string
description: The password for the opendaylight server.
hidden: true
OpenDaylightFeatures:
description: List of features to install with ODL
type: comma_delimited_list
default: ["odl-netvirt-openstack","odl-jolokia"]
OpenDaylightManageRepositories:
description: Whether to manage the OpenDaylight repository
type: boolean
default: false
OpenDaylightSNATMechanism:
description: SNAT mechanism to be used
default: 'conntrack'
type: string
constraints:
- allowed_values:
- conntrack
- controller
OpenDaylightLogMechanism:
description: Logging mechanism to be used
default: 'file'
type: string
constraints:
- allowed_values:
- file
- console
OpenDaylightTLSKeystorePassword:
default: 'opendaylight'
type: string
description: The password for the opendaylight TLS keystore.
Must be at least 6 characters.
hidden: true
OpenDaylightInheritDSCPMarking:
description: Enable DSCP marking for VXLAN/GRE tunnels
type: boolean
default: false
OpenDaylightJavaOpts:
default: ''
type: string
description: Specifies the Java options to run ODL with as a string.
Note, these options are in addition to the default Java
options set by the karaf/ODL boot scripts and IP version
based flag set by 'opendaylight' class.
OpenDaylightInactivityProbe:
description: Time in millseconds before an inactivity probe is sent via
OVSDB to OVS
type: number
default: 180000
conditions:
internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
resources:
ContainersCommon:
type: ../../containers-common.yaml
OpenDaylightApiLogging:
type: OS::TripleO::Services::Logging::OpenDaylightApi
outputs:
role_data:
description: Role data for the OpenDaylight API role.
value:
service_name: opendaylight_api
config_settings:
map_merge:
-
opendaylight::odl_rest_port: {get_param: [EndpointMap, OpenDaylightInternal, port]}
opendaylight::username: {get_param: OpenDaylightUsername}
opendaylight::password: {get_param: OpenDaylightPassword}
opendaylight::extra_features: {get_param: OpenDaylightFeatures}
opendaylight::odl_bind_ip:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
opendaylight::manage_repositories: {get_param: OpenDaylightManageRepositories}
tripleo::opendaylight_api::firewall_rules:
'137 opendaylight api':
dport:
- {get_param: [EndpointMap, OpenDaylightInternal, port]}
- 6640
- 6653
- 2550
- 8185
opendaylight::snat_mechanism: {get_param: OpenDaylightSNATMechanism}
opendaylight::log_mechanism: {get_param: OpenDaylightLogMechanism}
opendaylight::inherit_dscp_marking: {get_param: OpenDaylightInheritDSCPMarking}
opendaylight::java_opts: {get_param: OpenDaylightJavaOpts}
opendaylight::inactivity_probe: {get_param: OpenDaylightInactivityProbe}
-
if:
- internal_tls_enabled
- generate_service_certificates: true
tripleo::profile::base::neutron::opendaylight::certificate_specs:
service_certificate: '/etc/pki/tls/certs/odl.crt'
service_key: '/etc/pki/tls/private/odl.key'
hostname:
str_replace:
template: "%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
principal:
str_replace:
template: "odl/%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
opendaylight::tls_ca_cert_file: {get_param: InternalTLSCAFile}
opendaylight::tls_keystore_password: {get_param: OpenDaylightTLSKeystorePassword}
tripleo::certmonger::opendaylight::postsave_cmd: "true" # TODO: restart the odl container here
- {}
# BEGIN DOCKER SETTINGS
puppet_config:
config_volume: opendaylight
volumes:
list_concat:
- if:
- internal_tls_enabled
- - /etc/pki/tls/certs/odl.crt:/etc/pki/tls/certs/odl.crt:ro
- /etc/pki/tls/private/odl.key:/etc/pki/tls/private/odl.key:ro
- list_join:
- ':'
- - {get_param: InternalTLSCAFile}
- {get_param: InternalTLSCAFile}
- 'ro'
- null
# 'file,concat,file_line,augeas' are included by default
puppet_tags: odl_user,odl_keystore
step_config: |
include tripleo::profile::base::neutron::opendaylight
config_image: {get_param: ContainerOpendaylightConfigImage}
kolla_config:
/var/lib/kolla/config_files/opendaylight_api.json:
command: /opt/opendaylight/bin/karaf server
config_files:
- source: "/var/lib/kolla/config_files/src/*"
dest: "/"
merge: true
preserve_properties: true
permissions:
- path: /opt/opendaylight
owner: odl:odl
recurse: true
docker_config:
step_1:
opendaylight_api:
start_order: 0
image: &odl_api_image {get_param: ContainerOpendaylightApiImage}
privileged: false
net: host
detach: true
user: odl
restart: unless-stopped
healthcheck:
test: /openstack/healthcheck
volumes:
list_concat:
- {get_attr: [ContainersCommon, volumes]}
- {get_attr: [OpenDaylightApiLogging, volumes]}
-
- /var/lib/kolla/config_files/opendaylight_api.json:/var/lib/kolla/config_files/config.json:ro
- /var/lib/config-data/puppet-generated/opendaylight/:/var/lib/kolla/config_files/src:ro
- /var/lib/opendaylight/journal:/opt/opendaylight/journal
- /var/lib/opendaylight/snapshots:/opt/opendaylight/snapshots
environment:
KOLLA_CONFIG_STRATEGY: COPY_ALWAYS
metadata_settings:
if:
- internal_tls_enabled
-
- service: odl
network: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
type: node
- null
host_prep_tasks:
list_concat:
- {get_attr: [OpenDaylightApiLogging, host_prep_tasks]}
-
- name: Delete data and karaf folder
file:
path: "{{ item }}"
state: absent
with_items:
- /var/lib/opendaylight/data # Delete folder if present from previous deployment
- /var/lib/config-data/puppet-generated/opendaylight/opt/opendaylight/etc/opendaylight/karaf
- name: create persistent directories
file:
path: "{{ item }}"
state: directory
with_items:
- /var/lib/opendaylight/snapshots
- /var/lib/opendaylight/journal
upgrade_tasks:
# Containerized deployment upgrade steps
- name: ODL container L2 update and upgrade tasks
block: &odl_container_upgrade_tasks
- name: Set fact for container CLI
set_fact:
container_cli: {get_param: ContainerCli}
- name: Check if ODL container is present
shell: "{{ container_cli }} ps -a --format '{{ '{{' }}.Names{{ '}}' }}' | grep '^opendaylight_api$'"
register: opendaylight_api_container_present
failed_when: false
# NOTE: using shell module because of
# https://github.com/ansible/ansible/issues/27960
##TODO: (janki) make update policy compatible with podman
- name: Update ODL container restart policy to unless-stopped
shell: "docker update --restart=unless-stopped opendaylight_api"
when:
- opendaylight_api_container_present.rc == 0
- container_cli == docker
- name: stop previous ODL container
docker_container:
name: opendaylight_api
state: stopped
when:
- step|int == 0
- container_cli == docker
##TODO: (janki) Switch to podman ansible module once its available
- name: stop previous ODL container using podman
shell: "systemctl stop opendaylight_api"
when:
- step|int == 0
- container_cli == podman
- name: remove journal and snapshots
file:
path: /var/lib/opendaylight/{{item}}
state: absent
with_items:
- snapshots
- journal
when: step|int == 0
- name: Set ODL upgrade flag to True
copy:
dest: /var/lib/config-data/puppet-generated/opendaylight/opt/opendaylight/etc/opendaylight/datastore/initial/config/genius-mdsalutil-config.xml
content: |
<config xmlns="urn:opendaylight:params:xml:ns:yang:mdsalutil">
<upgradeInProgress>true</upgradeInProgress>
</config>
owner: 42462
group: 42462
mode: 0644
when: step|int == 1
post_upgrade_tasks: &odl_container_post_upgrade_tasks
- name: Disable Upgrade in Config File
copy:
dest: /var/lib/config-data/puppet-generated/opendaylight/opt/opendaylight/etc/opendaylight/datastore/initial/config/genius-mdsalutil-config.xml
content: |
<config xmlns="urn:opendaylight:params:xml:ns:yang:mdsalutil">
<upgradeInProgress>false</upgradeInProgress>
</config>
owner: 42462
group: 42462
mode: 0644
when: step|int == 0
# 2 commands in 1 task because the sequence of commands needs to be ensured
# and that no other task is executed in between.
- name: Delete Upgrade Flag and Unset it via Rest
shell:
str_replace:
template: >
curl -k -v --silent --fail --show-error -u $ODL_USERNAME:$ODL_PASSWORD
-H "Content-Type: application/json" -X DELETE
$ODL_URI/restconf/config/genius-mdsalutil:config;
curl -k -v --silent --fail --show-error -u $ODL_USERNAME:$ODL_PASSWORD
-H "Content-Type: application/json" -X POST
$ODL_URI/restconf/config/genius-mdsalutil:config
-d "{ "upgradeInProgress": false }"
params:
$ODL_USERNAME: {get_param: OpenDaylightUsername}
$ODL_PASSWORD: {get_param: OpenDaylightPassword}
$ODL_URI: {get_param: [EndpointMap, OpenDaylightInternal, uri]}
when: step|int == 0
run_once: true
- when: step|int == 1
import_role:
name: tripleo-docker-rm
vars:
containers_to_rm:
- opendaylight_api
tripleo_container_cli: "docker"
update_tasks:
- name: Get ODL update level
block: &get_odl_update_level
- name: store update level to update_level variable
set_fact:
odl_update_level: {get_param: ODLUpdateLevel}
- name: Stop ODL container and remove cache
block:
- name: Set fact for container CLI
set_fact:
container_cli: {get_param: ContainerCli}
- name: Check if ODL container is present
shell: "{{ contianer_cli }} ps -a --format '{{ '{{' }}.Names{{ '}}' }}' | grep '^opendaylight_api$'"
register: opendaylight_api_container_present
failed_when: false
# NOTE: using shell module because of
# https://github.com/ansible/ansible/issues/27960
##TODO: (janki) make update policy compatible with podman
- name: Update ODL container restart policy to unless-stopped
shell: "docker update --restart=unless-stopped opendaylight_api"
when: opendaylight_api_container_present.rc == 0
- name: Stop previous ODL container
docker_container:
name: opendaylight_api
state: stopped
when: container_cli == docker
##TODO: (janki) Switch to podman ansible module once its available
- name: stop previous ODL container using podman
shell: "systemctl stop opendaylight_api"
when: container_cli == podman
- name: Delete data folder
file:
path: /var/lib/opendaylight/data
state: absent
when:
- step|int == 0
- odl_update_level == 1
- name: Run L2 update tasks that are similar to upgrade_tasks when update level is 2
block: *odl_container_upgrade_tasks
when: odl_update_level == 2
post_update_tasks:
- block: *get_odl_update_level
- block: *odl_container_post_upgrade_tasks
when: odl_update_level == 2

267
deployment/deprecated/opendaylight/opendaylight-ovs-baremetal-puppet.yaml

@ -1,267 +0,0 @@
heat_template_version: rocky
description: >
OpenDaylight OVS Configuration.
Note, This service is deprecated in Stein release and will
be disabled in future releases.
parameters:
OpenDaylightUsername:
default: 'admin'
description: The username for the opendaylight server.
type: string
OpenDaylightPassword:
type: string
description: The password for the opendaylight server.
hidden: true
OpenDaylightCheckURL:
description: URL postfix to verify ODL has finished starting up
type: string
default: 'diagstatus'
OpenDaylightProviderMappings:
description: Mappings between logical networks and physical interfaces.
Required for VLAN deployments. For example physnet1 -> eth1.
type: comma_delimited_list
default: "datacentre:br-ex"
tags:
- role_specific
HostAllowedNetworkTypes:
description: Allowed tenant network types for this OVS host. Note this can
vary per host or role to constrain which hosts nova instances
and networks are scheduled to.
type: comma_delimited_list
default: ['local', 'flat', 'vlan', 'vxlan', 'gre']
tags:
- role_specific
OvsEnableDpdk:
description: Whether or not to configure enable DPDK in OVS
default: false
type: boolean
tags:
- role_specific
OvsVhostuserMode:
description: Specify the mode for QEMU with vhostuser port creation. In
client mode, openvswitch will be responsible for creating
vhostuser sockets. In server mode, the hypervisor will create
them. Note, 'client' mode is deprecated.
type: string
default: "server"
constraints:
- allowed_values: [ 'client', 'server' ]
tags:
- role_specific
VhostuserSocketDir:
description: Specify the directory to use for vhostuser sockets
type: string
default: "/var/lib/vhost_sockets"
tags:
- role_specific
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. This
mapping overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
OvsHwOffload:
default: false
description: |
Enable OVS Hardware Offload. This feature supported from OVS 2.8.0
type: boolean
tags:
- role_specific
EnableInternalTLS:
type: boolean
default: false
InternalTLSCAFile:
default: '/etc/ipa/ca.crt'
type: string
description: Specifies the default CA cert to use if TLS is used for
services in the internal network.
ODLUpdateLevel:
default: 1
description: Specify the level of update
type: number
constraints:
- allowed_values:
- 1
- 2
VhostuserSocketGroup:
default: "qemu"
description: >
The vhost-user socket directory group name.
Defaults to 'qemu'. When vhostuser mode is 'dpdkvhostuserclient'
(which is the default mode), the vhost socket is created by qemu.
type: string
tags:
- role_specific
VhostuserSocketUser:
default: "qemu"
description: >
The vhost-user socket directory user name.
Defaults to 'qemu'. When vhostuser mode is 'dpdkvhostuserclient'
(which is the default mode), the vhost socket is created by qemu.
type: string
tags:
- role_specific
OpenDaylightEnableIPv6Deployment:
description: Enable deployment of ODL over IPv6 underlay network
type: boolean
default: false
conditions:
internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
resources:
Ovs:
type: ../../openvswitch/openvswitch-baremetal-puppet.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
# Merging role-specific parameters (RoleParameters) with the default parameters.
# RoleParameters will have the precedence over the default parameters.
RoleParametersValue:
type: OS::Heat::Value
properties:
type: json
value:
map_replace:
- map_replace:
- neutron::plugins::ovs::opendaylight::allowed_network_types: HostAllowedNetworkTypes
neutron::plugins::ovs::opendaylight::enable_dpdk: OvsEnableDpdk
neutron::plugins::ovs::opendaylight::vhostuser_socket_dir: VhostuserSocketDir
neutron::plugins::ovs::opendaylight::vhostuser_mode: OvsVhostuserMode
neutron::plugins::ovs::opendaylight::provider_mappings: OpenDaylightProviderMappings
neutron::plugins::ovs::opendaylight::enable_hw_offload: OvsHwOffload
vswitch::ovs::enable_hw_offload: OvsHwOffload
tripleo::profile::base::neutron::plugins::ovs::opendaylight::vhostuser_socket_group: VhostuserSocketGroup
tripleo::profile::base::neutron::plugins::ovs::opendaylight::vhostuser_socket_user: VhostuserSocketUser
- values: {get_param: [RoleParameters]}
- values:
HostAllowedNetworkTypes: {get_param: HostAllowedNetworkTypes}
OvsEnableDpdk: {get_param: OvsEnableDpdk}
VhostuserSocketDir: {get_param: VhostuserSocketDir}
OvsVhostuserMode: {get_param: OvsVhostuserMode}
OpenDaylightProviderMappings: {get_param: OpenDaylightProviderMappings}
OvsHwOffload: {get_param: OvsHwOffload}
VhostuserSocketGroup: {get_param: VhostuserSocketGroup}
VhostuserSocketUser: {get_param: VhostuserSocketUser}
outputs:
role_data:
description: Role data for the OpenDaylight service.
value:
service_name: opendaylight_ovs
config_settings:
map_merge:
- opendaylight::odl_rest_port: {get_param: [EndpointMap, OpenDaylightInternal, port]}
opendaylight::username: {get_param: OpenDaylightUsername}
opendaylight::password: {get_param: OpenDaylightPassword}
neutron::plugins::ovs::opendaylight::odl_username: {get_param: OpenDaylightUsername}
neutron::plugins::ovs::opendaylight::odl_password: {get_param: OpenDaylightPassword}
opendaylight_check_url: {get_param: OpenDaylightCheckURL}
tripleo::profile::base::neutron::plugins::ovs::opendaylight::tunnel_ip:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, NeutronTenantNetwork]}
tripleo::opendaylight_ovs::firewall_rules:
'118 neutron vxlan networks':
proto: 'udp'
dport: 4789
'136 neutron gre networks':
proto: 'gre'
enable_ipv6: {get_param: OpenDaylightEnableIPv6Deployment}
-
if:
- internal_tls_enabled
- generate_service_certificates: true
tripleo::profile::base::neutron::plugins::ovs::opendaylight::certificate_specs:
service_certificate: '/etc/pki/tls/certs/ovs.crt'
service_key: '/etc/pki/tls/private/ovs.key'
hostname:
str_replace:
template: "%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
principal:
str_replace:
template: "ovs/%{hiera('fqdn_NETWORK')}"
params:
NETWORK: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
neutron::plugins::ovs::opendaylight::tls_ca_cert_file: {get_param: InternalTLSCAFile}
tripleo::profile::base::neutron::plugins::ovs::opendaylight::conn_proto: 'https'
- {}
- get_attr: [Ovs, role_data, config_settings]
- get_attr: [RoleParametersValue, value]
service_config_settings:
nova_libvirt:
nova::compute::libvirt::qemu::group: {get_attr: [RoleParametersValue, value, 'tripleo::profile::base::neutron::plugins::ovs::opendaylight::vhostuser_socket_group']}
step_config: |
include tripleo::profile::base::neutron::plugins::ovs::opendaylight
upgrade_tasks:
- name: ODL container L2 update and upgrade tasks
block: &odl_container_upgrade_tasks
- name: Check if openvswitch is deployed
command: systemctl is-enabled openvswitch
tags: common
ignore_errors: True
register: openvswitch_enabled
- name: "PreUpgrade step0,validation: Check service openvswitch is running"
command: systemctl is-active --quiet openvswitch
when:
- step|int == 0
- openvswitch_enabled.rc == 0
tags: validation
# Container upgrade steps.
- name: Delete OVS groups and ports
shell: >
sudo ovs-ofctl -O Openflow13 del-groups br-int;
for tun_port in $(sudo ovs-vsctl list-ports br-int | grep tun);
do sudo ovs-vsctl del-port br-int $tun_port; done
when:
- step|int == 0
- openvswitch_enabled.rc == 0
update_tasks:
- name: Get ODL update level
block: &get_odl_update_level
- name: store update level to update_level variable
set_fact:
odl_update_level: {get_param: ODLUpdateLevel}
- name: Run L2 update tasks that are similar to upgrade_tasks when update level is 2
block: *odl_container_upgrade_tasks
when: odl_update_level == 2
metadata_settings:
if:
- internal_tls_enabled
-
- service: ovs
network: {get_param: [ServiceNetMap, OpendaylightApiNetwork]}
type: node
- null

33
deployment/logging/files/opendaylight-api.yaml

@ -1,33 +0,0 @@
heat_template_version: rocky
description: >
Logging configuration for containerized OpenDaylight API service
outputs:
config_settings:
description: Extra hieradata needed to log to files in the host.
value: null
docker_config:
description: Extra containers needed for logging to files in the host.
value:
step_1: {}
volumes:
description: The volumes needed to log to files in the host.
value:
- /var/log/containers/opendaylight/karaf/logs:/opt/opendaylight/data/log:z
host_prep_tasks:
description: Extra ansible tasks needed for logging to files in the host.
value:
- name: create persistent directories
file:
path: "{{ item.path }}"
state: directory
setype: "{{ item.setype }}"
with_items:
- { 'path': /var/log/containers/opendaylight/karaf/logs, 'setype': svirt_sandbox_file_t }
- { 'path': /var/log/opendaylight, 'setype': var_log_t }
- name: opendaylight logs readme
copy:
dest: /var/log/opendaylight/readme.txt
content: |
Logs from OpenDaylight container can be found at /var/log/containers/opendaylight/karaf/logs/karaf.log
ignore_errors: true

75
deployment/neutron/neutron-plugin-ml2-odl.yaml

@ -1,75 +0,0 @@
heat_template_version: rocky
description: >
OpenStack Neutron ML2/OpenDaylight plugin configured with Puppet
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. This
mapping overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
OpenDaylightPortBindingController:
description: OpenDaylight port binding controller
type: string
default: 'pseudo-agentdb-binding'
EnableInternalTLS:
type: boolean
default: false
conditions:
internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
resources:
NeutronMl2Base:
type: ./neutron-plugin-ml2.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the Neutron ML2/ODL plugin.
value:
service_name: neutron_plugin_ml2_odl
config_settings:
map_merge:
- get_attr: [NeutronMl2Base, role_data, config_settings]
- neutron::plugins::ml2::opendaylight::port_binding_controller: {get_param: OpenDaylightPortBindingController}
-
if:
- internal_tls_enabled
- neutron::plugins::ml2::opendaylight::ovsdb_connection: 'ssl:127.0.0.1:6639'
tripleo::profile::base::neutron::plugins::ml2::opendaylight::conn_proto: 'https'
- {}
step_config: |
include ::tripleo::profile::base::neutron::plugins::ml2
metadata_settings:
get_attr: [NeutronMl2Base, role_data, metadata_settings]

1
environments/hyperconverged-ceph.yaml

@ -41,7 +41,6 @@ parameter_defaults:
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::TripleoFirewall
- OS::TripleO::Services::Tuned
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::SkydiveAgent
- OS::TripleO::Services::IpaClient
- OS::TripleO::Services::Ipsec

2
environments/network-isolation-v6-all.j2.yaml

@ -66,7 +66,5 @@ parameter_defaults:
ManilaIPv6: True
# Enable IPv6 environment for Redis.
RedisIPv6: True
# Enable IPv6 environment for OpenDaylight
OpenDaylightEnableIPv6Deployment: True
# Specify Tunnel endpoints to be IPv6
NeutronOverlayIPVersion: 6

2
environments/network-isolation-v6.j2.yaml

@ -71,5 +71,3 @@ parameter_defaults:
ManilaIPv6: True
# Enable IPv6 environment for Redis.
RedisIPv6: True
# Enable IPv6 environment for OpenDaylight
OpenDaylightEnableIPv6Deployment: True

4
environments/odl-dscp-marking-inheritance.yaml

@ -1,4 +0,0 @@
# This flag enables copying of DSCP markings to VXLAN tunnel header when
# OpenDaylight is enabled.
parameter_defaults:
OpenDaylightInheritDSCPMarking: true

12
environments/services-baremetal/neutron-bgpvpn-opendaylight.yaml

@ -1,12 +0,0 @@
# A Heat environment file that can be used to deploy Neutron BGPVPN service
#
# This environment file deploys Neutron BGPVPN service and configures
# Opendaylight as its service provider.
#
# - OpenDaylight: BGPVPN:OpenDaylight:networking_odl.bgpvpn.odl_v2.OpenDaylightBgpvpnDriver:default
resource_registry:
OS::TripleO::Services::NeutronBgpVpnApi: ../../deployment/neutron/neutron-bgpvpn-api-container-puppet.yaml
parameter_defaults:
NeutronServicePlugins: 'odl-router_v2,trunk,bgpvpn'
BgpvpnServiceProvider: 'BGPVPN:OpenDaylight:networking_odl.bgpvpn.odl_v2.OpenDaylightBgpvpnDriver:default'

18
environments/services-baremetal/neutron-l2gw-opendaylight.yaml

@ -1,18 +0,0 @@
# A Heat environment file that can be used to deploy Neutron L2 Gateway service
#
# Currently there are only two service provider for Neutron L2 Gateway
# This file enables L2GW service with OpenDaylight as driver.
#
# - OpenDaylight: L2GW:OpenDaylight:networking_odl.l2gateway.driver.OpenDaylightL2gwDriver:default
resource_registry:
OS::TripleO::Services::NeutronL2gwApi: ../../deployment/neutron/neutron-l2gw-api-container-puppet.yaml
parameter_defaults:
NeutronServicePlugins: "odl-router_v2,trunk,l2gw"
L2gwServiceProvider: ['L2GW:OpenDaylight:networking_odl.l2gateway.driver.OpenDaylightL2gwDriver:default']
# Optional
# L2gwServiceDefaultInterfaceName: "FortyGigE1/0/1"
# L2gwServiceDefaultDeviceName: "Switch1"
# L2gwServiceQuotaL2Gateway: 10
# L2gwServicePeriodicMonitoringInterval: 5

22
environments/services-baremetal/neutron-opendaylight-sriov.yaml

@ -1,22 +0,0 @@
# A Heat environment that can be used to deploy OpenDaylight with SRIOV
# This file is to be used with neutron-opendaylight.yaml
resource_registry:
OS::TripleO::Services::ComputeNeutronCorePlugin: ../../deployment/neutron/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronSriovAgent: ../../deployment/neutron/neutron-sriov-agent-container-puppet.yaml
parameter_defaults:
NeutronMechanismDrivers: ['sriovnicswitch','opendaylight_v2']
# Add PciPassthroughFilter to the scheduler default filters
#NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter']
#NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"]
#NeutronPhysicalDevMappings: "datacentre:ens20f2"
# Number of VFs that needs to be configured for a physical interface
#NeutronSriovNumVFs: "ens20f2:5"
#NovaPCIPassthrough:
# - devname: "ens20f2"
# physical_network: "datacentre"

17
environments/services-baremetal/neutron-opendaylight.yaml

@ -1,17 +0,0 @@
# A Heat environment that can be used to deploy OpenDaylight with L3 DVR using Docker containers
resource_registry:
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OpenDaylightApi: ../../deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml
OS::TripleO::Services::OpenDaylightOvs: ../../puppet/services/opendaylight-ovs.yaml
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
OS::TripleO::Docker::NeutronMl2PluginBase: ../../deployment/neutron/neutron-plugin-ml2-odl.yaml
parameter_defaults:
NeutronEnableForceMetadata: true
NeutronPluginExtensions: 'port_security'
NeutronMechanismDrivers: 'opendaylight_v2'
NeutronServicePlugins: 'odl-router_v2,trunk'

12
environments/services/neutron-bgpvpn-opendaylight.yaml

@ -1,12 +0,0 @@
# A Heat environment file that can be used to deploy Neutron BGPVPN service
#
# This environment file deploys Neutron BGPVPN service and configures
# Opendaylight as its service provider.
#
# - OpenDaylight: BGPVPN:OpenDaylight:networking_odl.bgpvpn.odl_v2.OpenDaylightBgpvpnDriver:default
resource_registry:
OS::TripleO::Services::NeutronBgpVpnApi: ../../deployment/neutron/neutron-bgpvpn-api-container-puppet.yaml
parameter_defaults:
NeutronServicePlugins: 'odl-router_v2,trunk,bgpvpn'
BgpvpnServiceProvider: 'BGPVPN:OpenDaylight:networking_odl.bgpvpn.odl_v2.OpenDaylightBgpvpnDriver:default'

18
environments/services/neutron-l2gw-opendaylight.yaml

@ -1,18 +0,0 @@
# A Heat environment file that can be used to deploy Neutron L2 Gateway service
#
# Currently there are only two service provider for Neutron L2 Gateway
# This file enables L2GW service with OpenDaylight as driver.
#
# - OpenDaylight: L2GW:OpenDaylight:networking_odl.l2gateway.driver_v2.OpenDaylightL2gwDriver:default
resource_registry:
OS::TripleO::Services::NeutronL2gwApi: ../../deployment/neutron/neutron-l2gw-api-container-puppet.yaml
parameter_defaults:
NeutronServicePlugins: "odl-router_v2,trunk,l2gw"
L2gwServiceProvider: ['L2GW:OpenDaylight:networking_odl.l2gateway.driver_v2.OpenDaylightL2gwDriver:default']
# Optional
# L2gwServiceDefaultInterfaceName: "FortyGigE1/0/1"
# L2gwServiceDefaultDeviceName: "Switch1"
# L2gwServiceQuotaL2Gateway: 10
# L2gwServicePeriodicMonitoringInterval: 5

37
environments/services/neutron-opendaylight-dpdk.yaml

@ -1,37 +0,0 @@
# A Heat environment that can be used to deploy OpenDaylight with L3 DVR and DPDK.
# This file is to be used with neutron-opendaylight.yaml
parameter_defaults:
NovaSchedulerDefaultFilters: "ComputeFilter,AvailabilityZoneFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,NUMATopologyFilter"
OpenDaylightSNATMechanism: 'controller'
ComputeOvsDpdkParameters:
OvsEnableDpdk: True
## Host configuration Parameters
#TunedProfileName: "cpu-partitioning"
#IsolCpusList: "" # Logical CPUs list to be isolated from the host process (applied via cpu-partitioning tuned).
# It is mandatory to provide isolated cpus for tuned to achive optimal performance.
# Example: "3-8,12-15,18"
#KernelArgs: "" # Space separated kernel args to configure hugepage and IOMMU.
# Deploying DPDK requires enabling hugepages for the overcloud compute nodes.
# It also requires enabling IOMMU when using the VFIO (vfio-pci) OvsDpdkDriverType.
# This should be done by configuring parameters via host-config-and-reboot.yaml environment file.
## Attempting to deploy DPDK without appropriate values for the below parameters may lead to unstable deployments
## due to CPU contention of DPDK PMD threads.
## It is highly recommended to to enable isolcpus (via KernelArgs) on compute overcloud nodes and set the following parameters:
#OvsDpdkSocketMemory: "" # Sets the amount of hugepage memory to assign per NUMA node.
# It is recommended to use the socket closest to the PCIe slot used for the
# desired DPDK NIC. Format should be comma separated per socket string such as:
# "<socket 0 mem MB>,<socket 1 mem MB>", for example: "1024,0".
#OvsDpdkDriverType: "vfio-pci" # Ensure the Overcloud NIC to be used for DPDK supports this UIO/PMD driver.
#OvsPmdCoreList: "" # List or range of CPU cores for PMD threads to be pinned to. Note, NIC
# location to cores on socket, number of hyper-threaded logical cores, and
# desired number of PMD threads can all play a role in configuring this setting.
# These cores should be on the same socket where OvsDpdkSocketMemory is assigned.
# If using hyperthreading then specify both logical cores that would equal the
# physical core. Also, specifying more than one core will trigger multiple PMD
# threads to be spawned, which may improve dataplane performance.
#NovaVcpuPinSet: "" # Cores to pin Nova instances to. For maximum performance, select cores
# on the same NUMA node(s) selected for previous settings.

23
environments/services/neutron-opendaylight-sriov.yaml

@ -1,23 +0,0 @@
# A Heat environment that can be used to deploy OpenDaylight with SRIOV
# This file is to be used with neutron-opendaylight.yaml
resource_registry:
OS::TripleO::Services::ComputeNeutronCorePlugin: ../../deployment/neutron/neutron-plugin-ml2-container-puppet.yaml
OS::TripleO::Services::NeutronSriovAgent: ../../deployment/neutron/neutron-sriov-agent-container-puppet.yaml
OS::TripleO::Services::NeutronSriovHostConfig: ../../deployment/deprecated/neutron/neutron-sriov-host-config.yaml
parameter_defaults:
NeutronMechanismDrivers: ['sriovnicswitch','opendaylight_v2']
# Add PciPassthroughFilter to the scheduler default filters
#NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter']
#NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"]
#NeutronPhysicalDevMappings: "datacentre:ens20f2"
# Number of VFs that needs to be configured for a physical interface
#NeutronSriovNumVFs: "ens20f2:5"
#NovaPCIPassthrough:
# - devname: "ens20f2"
# physical_network: "datacentre"

20
environments/services/neutron-opendaylight.yaml

@ -1,20 +0,0 @@
# A Heat environment that can be used to deploy OpenDaylight with L3 DVR using Docker containers
resource_registry:
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OpenDaylightApi: ../../deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml
# FIXME(bogdando): switch it, once it is containerized
OS::TripleO::Services::OpenDaylightOvs: ../../puppet/services/opendaylight-ovs.yaml
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
OS::TripleO::Docker::NeutronMl2PluginBase: ../../deployment/neutron/neutron-plugin-ml2-odl.yaml
parameter_defaults:
NeutronEnableForceMetadata: true
NeutronPluginExtensions: 'port_security'
NeutronMechanismDrivers: 'opendaylight_v2'
NeutronServicePlugins: 'odl-router_v2,trunk'
NeutronNetworkType: 'vxlan'
NeutronTypeDrivers: 'vlan,flat,vxlan'

9
environments/services/neutron-sfc-opendaylight.yaml

@ -1,9 +0,0 @@
# A Heat environment file that can be used to deploy Neutron SFC service with OpenDaylight
resource_registry:
OS::TripleO::Services::NeutronSfcApi: ../../deployment/neutron/neutron-sfc-api-container-puppet.yaml
parameter_defaults:
NeutronServicePlugins: 'odl-router_v2,trunk,flow_classifier,sfc'
OpenDaylightFeatures: ["odl-netvirt-sfc","odl-jolokia"]
NeutronSfcDriver: 'odl_v2'
NeutronFcDriver: 'odl_v2'

2
environments/ssl/no-tls-endpoints-public-ip.yaml

@ -88,8 +88,6 @@ parameter_defaults:
OctaviaAdmin: {protocol: http, port: '9876', host: IP_ADDRESS}
OctaviaInternal: {protocol: http, port: '9876', host: IP_ADDRESS}
OctaviaPublic: {protocol: http, port: '9876', host: IP_ADDRESS}
OpenDaylightAdmin: {protocol: http, port: '8081', host: IP_ADDRESS}
OpenDaylightInternal: {protocol: http, port: '8081', host: IP_ADDRESS}
SaharaAdmin: {protocol: http, port: '8386', host: IP_ADDRESS}
SaharaInternal: {protocol: http, port: '8386', host: IP_ADDRESS}
SaharaPublic: {protocol: http, port: '8386', host: IP_ADDRESS}

2
environments/ssl/tls-endpoints-public-dns.yaml

@ -84,8 +84,6 @@ parameter_defaults:
OctaviaAdmin: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'}
OctaviaInternal: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'}
OctaviaPublic: {protocol: 'https', port: '13876', host: 'CLOUDNAME'}
OpenDaylightAdmin: {protocol: 'http', port: '8081', host: 'IP_ADDRESS'}
OpenDaylightInternal: {protocol: 'http', port: '8081', host: 'IP_ADDRESS'}
SaharaAdmin: {protocol: 'http', port: '8386', host: 'IP_ADDRESS'}
SaharaInternal: {protocol: 'http', port: '8386', host: 'IP_ADDRESS'}
SaharaPublic: {protocol: 'https', port: '13386', host: 'CLOUDNAME'}

2
environments/ssl/tls-endpoints-public-ip.yaml

@ -84,8 +84,6 @@ parameter_defaults:
OctaviaAdmin: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'}
OctaviaInternal: {protocol: 'http', port: '9876', host: 'IP_ADDRESS'}
OctaviaPublic: {protocol: 'https', port: '13876', host: 'IP_ADDRESS'}
OpenDaylightAdmin: {protocol: 'http', port: '8081', host: 'IP_ADDRESS'}
OpenDaylightInternal: {protocol: 'http', port: '8081', host: 'IP_ADDRESS'}
SaharaAdmin: {protocol: 'http', port: '8386', host: 'IP_ADDRESS'}
SaharaInternal: {protocol: 'http', port: '8386', host: 'IP_ADDRESS'}
SaharaPublic: {protocol: 'https', port: '13386', host: 'IP_ADDRESS'}

2
environments/ssl/tls-everywhere-endpoints-dns.yaml

@ -84,8 +84,6 @@ parameter_defaults:
OctaviaAdmin: {protocol: 'https', port: '9876', host: 'CLOUDNAME'}
OctaviaInternal: {protocol: 'https', port: '9876', host: 'CLOUDNAME'}
OctaviaPublic: {protocol: 'https', port: '13876', host: 'CLOUDNAME'}
OpenDaylightAdmin: {protocol: 'https', port: '8081', host: 'CLOUDNAME'}
OpenDaylightInternal: {protocol: 'https', port: '8081', host: 'CLOUDNAME'}
SaharaAdmin: {protocol: 'https', port: '8386', host: 'CLOUDNAME'}
SaharaInternal: {protocol: 'https', port: '8386', host: 'CLOUDNAME'}
SaharaPublic: {protocol: 'https', port: '13386', host: 'CLOUDNAME'}

3
environments/undercloud/undercloud-minion.yaml

@ -127,7 +127,6 @@ resource_registry:
OS::TripleO::Services::Logging::NovaCommon: OS::Heat::None
OS::TripleO::Services::Logging::NovaLibvirt: OS::Heat::None
OS::TripleO::Services::Logging::NovaMetadata: OS::Heat::None
OS::TripleO::Services::Logging::OpenDaylightApi: OS::Heat::None
OS::TripleO::Services::Logging::PlacementApi: OS::Heat::None
OS::TripleO::Services::ManilaApi: OS::Heat::None
OS::TripleO::Services::ManilaBackendCephFs: OS::Heat::None
@ -199,8 +198,6 @@ resource_registry:
OS::TripleO::Services::OctaviaHealthManager: OS::Heat::None
OS::TripleO::Services::OctaviaHousekeeping: OS::Heat::None
OS::TripleO::Services::OctaviaWorker: OS::Heat::None
OS::TripleO::Services::OpenDaylightApi: OS::Heat::None
OS::TripleO::Services::OpenDaylightOvs: OS::Heat::None
OS::TripleO::Services::OpenShift::GlusterFS: OS::Heat::None
OS::TripleO::Services::OpenShift::Infra: OS::Heat::None
OS::TripleO::Services::OpenShift::Master: OS::Heat::None

7
network/endpoints/endpoint_data.yaml

@ -379,13 +379,6 @@ DockerRegistry:
net_param: DockerRegistry
port: 8787
OpenDaylight:
Internal:
net_param: OpendaylightApi
Admin:
net_param: OpendaylightApi
port: 8081
NovaMetadata:
Internal:
net_param: NovaMetadata

262
network/endpoints/endpoint_map.yaml

@ -295,14 +295,6 @@ parameters:
protocol: http
port: '9876'
host: IP_ADDRESS
OpenDaylightAdmin:
protocol: http
port: '8081'
host: IP_ADDRESS
OpenDaylightInternal:
protocol: http
port: '8081'
host: IP_ADDRESS
PlacementAdmin:
protocol: http
port: '8778'
@ -10783,260 +10775,6 @@ outputs:
- EndpointMap
- OctaviaPublic
- port
OpenDaylightAdmin:
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
host_nobrackets:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
port:
get_param:
- EndpointMap
- OpenDaylightAdmin
- port
protocol:
get_param:
- EndpointMap
- OpenDaylightAdmin
- protocol
uri:
make_url:
scheme:
get_param:
- EndpointMap
- OpenDaylightAdmin
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- OpenDaylightAdmin
- port
uri_no_suffix:
make_url:
scheme:
get_param:
- EndpointMap
- OpenDaylightAdmin
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightAdmin
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- OpenDaylightAdmin
- port
OpenDaylightInternal:
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
host_nobrackets:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
port:
get_param:
- EndpointMap
- OpenDaylightInternal
- port
protocol:
get_param:
- EndpointMap
- OpenDaylightInternal
- protocol
uri:
make_url:
scheme:
get_param:
- EndpointMap
- OpenDaylightInternal
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- OpenDaylightInternal
- port
uri_no_suffix:
make_url:
scheme:
get_param:
- EndpointMap
- OpenDaylightInternal
- protocol
host:
str_replace:
template:
get_param:
- EndpointMap
- OpenDaylightInternal
- host
params:
CLOUDNAME:
get_param:
- CloudEndpoints
- get_param:
- ServiceNetMap
- OpendaylightApiNetwork
IP_ADDRESS:
get_param:
- NetIpMap
- str_replace:
params:
NETWORK:
get_param:
- ServiceNetMap
- OpendaylightApiNetwork
template: NETWORK_uri
port:
get_param:
- EndpointMap
- OpenDaylightInternal
- port
PlacementAdmin:
host:
str_replace:

3
overcloud-resource-registry-puppet.j2.yaml

@ -277,8 +277,6 @@ resource_registry:
OS::TripleO::Services::TripleoFirewall: deployment/tripleo-firewall/tripleo-firewall-baremetal-puppet.yaml
OS::TripleO::Services::TripleoPackages: deployment/tripleo-packages/tripleo-packages-baremetal-puppet.yaml
OS::TripleO::Services::OpenStackClients: OS::Heat::None
OS::TripleO::Services::OpenDaylightApi: OS::Heat::None
OS::TripleO::Services::OpenDaylightOvs: OS::Heat::None
OS::TripleO::Services::TLSProxyBase: OS::Heat::None
OS::TripleO::Services::Zaqar: OS::Heat::None
OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
@ -348,7 +346,6 @@ resource_registry:
OS::TripleO::Services::Logging::NovaMetadata: deployment/logging/files/nova-metadata.yaml
OS::TripleO::Services::Logging::NovaCommon: deployment/logging/files/nova-common.yaml
OS::TripleO::Services::Logging::NovaLibvirt: deployment/logging/files/nova-libvirt.yaml
OS::TripleO::Services::Logging::OpenDaylightApi: deployment/deprecated/opendaylight/opendaylight-api-container-puppet.yaml
OS::TripleO::Services::Logging::PlacementApi: deployment/logging/files/placement-api.yaml
# Tempest

5
releasenotes/notes/remove-odl-735ca4129c2a450e.yaml

@ -0,0 +1,5 @@
---
deprecations:
- |
OpenDaylight service templates and environment files have been removed. It
was deprecated in Stein and removed in Train.

1
roles/Compute.yaml

@ -62,7 +62,6 @@
- OS::TripleO::Services::NovaLibvirtGuests
- OS::TripleO::Services::NovaMigrationTarget
- OS::TripleO::Services::ContainersLogrotateCrond
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Rhsm
- OS::TripleO::Services::Rsyslog

1
roles/ComputeAlt.yaml

@ -39,7 +39,6 @@
- OS::TripleO::Services::NovaComputeAlt
- OS::TripleO::Services::NovaLibvirtAlt
- OS::TripleO::Services::NovaMigrationTargetAlt
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Rhsm
- OS::TripleO::Services::Rsyslog

1
roles/ComputeDVR.yaml

@ -49,7 +49,6 @@
- OS::TripleO::Services::NovaLibvirtGuests
- OS::TripleO::Services::NovaMigrationTarget
- OS::TripleO::Services::ContainersLogrotateCrond
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Rhsm
- OS::TripleO::Services::Rsyslog

1
roles/ComputeHCI.yaml

@ -49,7 +49,6 @@
- OS::TripleO::Services::NovaLibvirtGuests
- OS::TripleO::Services::NovaMigrationTarget
- OS::TripleO::Services::ContainersLogrotateCrond
- OS::TripleO::Services::OpenDaylightOvs
- OS::TripleO::Services::Podman
- OS::TripleO::Services::Rhsm
- OS::TripleO::Services::Rsyslog

1
roles/ComputeHCIOvsDpdk.yaml