Remove OpenDaylight role
Opendaylight support has been deprecated in Train - time to remove it. Change-Id: I3a61bfbcbf366c327ea3e25d2424bc3fedca29f0
This commit is contained in:
parent
a52808c5bd
commit
eec6831fff
@ -212,7 +212,7 @@ migration_interface_address: "{{ 'migration' | kolla_address }}"
|
||||
tunnel_interface_address: "{{ 'tunnel' | kolla_address }}"
|
||||
octavia_network_interface_address: "{{ 'octavia_network' | kolla_address }}"
|
||||
|
||||
# Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_nsxv3, vmware_dvs, opendaylight ]
|
||||
# Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_nsxv3, vmware_dvs ]
|
||||
neutron_plugin_agent: "openvswitch"
|
||||
|
||||
# Valid options are [ internal, infoblox ]
|
||||
@ -470,20 +470,6 @@ zookeeper_quorum_port: "3888"
|
||||
zun_api_port: "9517"
|
||||
zun_wsproxy_port: "6784"
|
||||
|
||||
opendaylight_clustering_port: "2550"
|
||||
opendaylight_restconf_port: "8087"
|
||||
opendaylight_restconf_port_backup: "8182"
|
||||
opendaylight_haproxy_restconf_port: "8088"
|
||||
opendaylight_haproxy_restconf_port_backup: "8183"
|
||||
opendaylight_jetty_conf_port: "8543"
|
||||
opendaylight_jetty_conf2_port: "8443"
|
||||
opendaylight_tomcat_port: "8282"
|
||||
opendaylight_tomcat_redirect_port: "8663"
|
||||
opendaylight_karaf_ssh_port: "8101"
|
||||
opendaylight_openflow_port: "6653"
|
||||
opendaylight_ovsdb_port: "6641"
|
||||
opendaylight_websocket_port: "8185"
|
||||
|
||||
vitrage_api_port: "8999"
|
||||
|
||||
public_protocol: "{{ 'https' if kolla_enable_tls_external | bool else 'http' }}"
|
||||
@ -649,7 +635,6 @@ enable_nova_serialconsole_proxy: "no"
|
||||
enable_nova_ssh: "yes"
|
||||
enable_octavia: "no"
|
||||
enable_onos: "no"
|
||||
enable_opendaylight: "no"
|
||||
enable_openvswitch: "{{ enable_neutron | bool and neutron_plugin_agent != 'linuxbridge' }}"
|
||||
enable_ovs_dpdk: "no"
|
||||
enable_osprofiler: "no"
|
||||
@ -906,7 +891,7 @@ neutron_tenant_network_types: "vxlan"
|
||||
|
||||
# valid values: ["dvr", "dvr_no_external"]
|
||||
neutron_compute_dvr_mode: "dvr"
|
||||
computes_need_external_bridge: "{{ enable_neutron_dvr | bool and neutron_compute_dvr_mode == 'dvr' or enable_neutron_provider_networks | bool or enable_opendaylight | bool and neutron_plugin_agent != 'vmware_dvs' and not enable_onos | bool }}"
|
||||
computes_need_external_bridge: "{{ (enable_neutron_dvr | bool and neutron_compute_dvr_mode == 'dvr') or enable_neutron_provider_networks | bool }}"
|
||||
|
||||
# Default DNS resolvers for virtual networks
|
||||
neutron_dnsmasq_dns_servers: "1.1.1.1,8.8.8.8,8.8.4.4"
|
||||
@ -1044,19 +1029,6 @@ vmware_vcenter_host_username: "username"
|
||||
vmware_vcenter_cluster_name: "cluster-1"
|
||||
vmware_vcenter_insecure: "True"
|
||||
|
||||
######################
|
||||
# OpenDaylight
|
||||
######################
|
||||
opendaylight_mechanism_driver: "opendaylight_v2"
|
||||
opendaylight_l3_service_plugin: "odl-router_v2"
|
||||
opendaylight_acl_impl: "learn"
|
||||
enable_opendaylight_qos: "no"
|
||||
enable_opendaylight_l3: "{{ enable_opendaylight }}"
|
||||
enable_opendaylight_legacy_netvirt_conntrack: "no"
|
||||
opendaylight_port_binding_type: "pseudo-agentdb-binding"
|
||||
opendaylight_features: "odl-mdsal-apidocs,odl-netvirt-openstack"
|
||||
opendaylight_allowed_network_types: '"flat", "vlan", "vxlan"'
|
||||
|
||||
#######################################
|
||||
# XenAPI - Support XenAPI for XenServer
|
||||
#######################################
|
||||
|
@ -118,9 +118,6 @@ network
|
||||
compute
|
||||
manila-share
|
||||
|
||||
[opendaylight:children]
|
||||
network
|
||||
|
||||
[cinder:children]
|
||||
control
|
||||
|
||||
|
@ -143,9 +143,6 @@ network
|
||||
compute
|
||||
manila-share
|
||||
|
||||
[opendaylight:children]
|
||||
network
|
||||
|
||||
[cinder:children]
|
||||
control
|
||||
|
||||
|
@ -93,7 +93,6 @@
|
||||
- "05-libvirt"
|
||||
- "06-zookeeper"
|
||||
- "07-kafka"
|
||||
- "08-opendaylight"
|
||||
- "09-monasca"
|
||||
notify:
|
||||
- Restart fluentd container
|
||||
@ -317,7 +316,6 @@
|
||||
- { name: "neutron", enabled: "{{ enable_neutron }}" }
|
||||
- { name: "nova", enabled: "{{ enable_nova }}" }
|
||||
- { name: "octavia", enabled: "{{ enable_octavia }}" }
|
||||
- { name: "opendaylight", enabled: "{{ enable_opendaylight }}" }
|
||||
- { name: "outward-rabbitmq", enabled: "{{ enable_outward_rabbitmq }}" }
|
||||
- { name: "panko", enabled: "{{ enable_panko }}" }
|
||||
- { name: "qinling", enabled: "{{ enable_qinling }}" }
|
||||
|
@ -1,10 +0,0 @@
|
||||
<source>
|
||||
@type tail
|
||||
path /var/log/kolla/opendaylight/karaf.log
|
||||
pos_file /var/run/{{ fluentd_binary }}/opendaylight.pos
|
||||
tag infra.opendaylight
|
||||
format multiline
|
||||
format_firstline /\d{4}-\d{2}-\d{2}/
|
||||
format1 /^(?<time>\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}\,\d{3})\s+\|\s+(?<level>[^|\s]+)\s+\|\s+(?<thread>[^|]+)\s+\|\s+(?<class>[\d -}]+)\s+\|\s+(?<bundle>[^|]+)\s+\|\s+(?<msg>.*)/
|
||||
time_format %Y-%m-%d %H:%M:%S,%L
|
||||
</source>
|
@ -1,3 +0,0 @@
|
||||
"/var/log/kolla/opendaylight/*.log"
|
||||
{
|
||||
}
|
@ -43,7 +43,6 @@
|
||||
( 'neutron', enable_neutron ),
|
||||
( 'nova', enable_nova ),
|
||||
( 'octavia', enable_octavia ),
|
||||
( 'opendaylight', enable_opendaylight ),
|
||||
( 'outward-rabbitmq', enable_outward_rabbitmq ),
|
||||
( 'panko', enable_panko ),
|
||||
( 'qinling', enable_qinling ),
|
||||
|
@ -93,7 +93,7 @@ neutron_services:
|
||||
container_name: "neutron_l3_agent"
|
||||
image: "{{ neutron_l3_agent_image_full }}"
|
||||
privileged: True
|
||||
enabled: "{{ neutron_plugin_agent not in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] and not enable_opendaylight_l3 | bool and not enable_onos | bool }}"
|
||||
enabled: "{{ neutron_plugin_agent not in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] and not enable_onos | bool }}"
|
||||
environment:
|
||||
KOLLA_LEGACY_IPTABLES: "{{ neutron_legacy_iptables | bool | lower }}"
|
||||
host_in_groups: >-
|
||||
@ -198,7 +198,7 @@ neutron_openvswitch_agent_image: "{{ docker_registry ~ '/' if docker_registry el
|
||||
neutron_openvswitch_agent_tag: "{{ neutron_tag }}"
|
||||
neutron_openvswitch_agent_image_full: "{{ neutron_openvswitch_agent_image }}:{{ neutron_openvswitch_agent_tag }}"
|
||||
|
||||
neutron_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-server{{ '-opendaylight' if enable_opendaylight | bool else '' }}"
|
||||
neutron_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ neutron_install_type }}-neutron-server"
|
||||
neutron_server_tag: "{{ neutron_tag }}"
|
||||
neutron_server_image_full: "{{ neutron_server_image }}:{{ neutron_server_tag }}"
|
||||
|
||||
@ -354,7 +354,7 @@ neutron_l3_agent_host_rp_filter_mode: 0
|
||||
####################
|
||||
extension_drivers:
|
||||
- name: "qos"
|
||||
enabled: "{{ enable_neutron_qos | bool or enable_opendaylight_qos | bool }}"
|
||||
enabled: "{{ enable_neutron_qos | bool }}"
|
||||
- name: "port_security"
|
||||
enabled: true
|
||||
- name: "dns"
|
||||
@ -383,17 +383,15 @@ service_plugins:
|
||||
- name: "neutron_dynamic_routing.services.bgp.bgp_plugin.BgpPlugin"
|
||||
enabled: "{{ enable_neutron_bgp_dragent | bool }}"
|
||||
- name: "qos"
|
||||
enabled: "{{ enable_neutron_qos | bool or enable_opendaylight_qos | bool}}"
|
||||
enabled: "{{ enable_neutron_qos | bool }}"
|
||||
- name: "router"
|
||||
enabled: "{{ not enable_opendaylight_l3 | bool }}"
|
||||
enabled: true
|
||||
- name: "segments"
|
||||
enabled: "{{ enable_neutron_segments | bool }}"
|
||||
- name: "sfc"
|
||||
enabled: "{{ enable_neutron_sfc | bool }}"
|
||||
- name: "vpnaas"
|
||||
enabled: "{{ enable_neutron_vpnaas | bool }}"
|
||||
- name: "{{ opendaylight_l3_service_plugin }}"
|
||||
enabled: "{{ enable_opendaylight_l3 | bool and enable_opendaylight | bool }}"
|
||||
- name: "port_forwarding"
|
||||
enabled: "{{ enable_neutron_port_forwarding | bool }}"
|
||||
|
||||
@ -486,9 +484,7 @@ infoblox_wapi_max_results: "-50000"
|
||||
######################
|
||||
# Notification Drivers
|
||||
######################
|
||||
notification_drivers:
|
||||
- name: "odl-qos-v2"
|
||||
enabled: "{{ enable_opendaylight_qos | bool }}"
|
||||
notification_drivers: []
|
||||
|
||||
neutron_notification_drivers: "{{ notification_drivers|selectattr('enabled', 'equalto', true)|list }}"
|
||||
|
||||
|
@ -17,9 +17,5 @@ dhcp_override_mac = {{ vmware_dvs_dhcp_override_mac }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if enable_opendaylight | bool %}
|
||||
interface_driver = openvswitch
|
||||
{% endif %}
|
||||
|
||||
[ovs]
|
||||
ovsdb_connection = tcp:127.0.0.1:{{ ovsdb_port }}
|
||||
|
@ -18,8 +18,6 @@ mechanism_drivers = openvswitch,{% if enable_ironic_neutron_agent | bool %}barem
|
||||
{% endif %}
|
||||
{% elif neutron_plugin_agent == "linuxbridge" %}
|
||||
mechanism_drivers = linuxbridge,l2population
|
||||
{% elif neutron_plugin_agent == "opendaylight" %}
|
||||
mechanism_drivers = {{ opendaylight_mechanism_driver }}
|
||||
{% endif %}
|
||||
|
||||
{% if neutron_extension_drivers %}
|
||||
@ -28,18 +26,6 @@ extension_drivers = {{ neutron_extension_drivers|map(attribute='name')|join(',')
|
||||
extension_drivers = port_security
|
||||
{% endif %}
|
||||
|
||||
{% if enable_opendaylight | bool %}
|
||||
[ml2_odl]
|
||||
{% if enable_haproxy | bool %}
|
||||
url = {{ internal_protocol }}://{{ kolla_internal_vip_address | put_address_in_context('url') }}:{{ opendaylight_haproxy_restconf_port }}/controller/nb/v2/neutron
|
||||
{% else %}
|
||||
url = {{ internal_protocol }}://{{ kolla_internal_vip_address | put_address_in_context('url') }}:{{ opendaylight_restconf_port }}/controller/nb/v2/neutron
|
||||
{% endif %}
|
||||
username = admin
|
||||
password = {{ opendaylight_password }}
|
||||
port_binding_controller = {{ opendaylight_port_binding_type }}
|
||||
{% endif %}
|
||||
|
||||
{% if enable_onos | bool %}
|
||||
[onos]
|
||||
url_path = {{ onos_url }}
|
||||
@ -65,13 +51,13 @@ flat_networks = {% for bridge in neutron_bridge_name.split(',') %}physnet{{ loop
|
||||
vni_ranges = 1:1000
|
||||
|
||||
[securitygroup]
|
||||
{% if neutron_plugin_agent == "openvswitch" or neutron_plugin_agent == "opendaylight" %}
|
||||
{% if neutron_plugin_agent == "openvswitch" %}
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
|
||||
{% elif neutron_plugin_agent == "linuxbridge" %}
|
||||
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
|
||||
{% endif %}
|
||||
|
||||
{% if neutron_plugin_agent == "openvswitch" or neutron_plugin_agent == "opendaylight" %}
|
||||
{% if neutron_plugin_agent == "openvswitch" %}
|
||||
[agent]
|
||||
tunnel_types = vxlan
|
||||
{% if nova_compute_virt_type != 'xenapi' %}
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"command": "neutron-server --config-file /etc/neutron/neutron.conf {% if neutron_plugin_agent in ['openvswitch', 'linuxbridge', 'opendaylight'] %} --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/neutron_vpnaas.conf {% elif neutron_plugin_agent in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] %} --config-file /etc/neutron/plugins/vmware/nsx.ini {% endif %} --config-file /etc/neutron/fwaas_driver.ini",
|
||||
"command": "neutron-server --config-file /etc/neutron/neutron.conf {% if neutron_plugin_agent in ['openvswitch', 'linuxbridge'] %} --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/neutron_vpnaas.conf {% elif neutron_plugin_agent in ['vmware_nsxv', 'vmware_nsxv3', 'vmware_dvs'] %} --config-file /etc/neutron/plugins/vmware/nsx.ini {% endif %} --config-file /etc/neutron/fwaas_driver.ini",
|
||||
"config_files": [
|
||||
{
|
||||
"source": "{{ container_config_directory }}/neutron.conf",
|
||||
|
@ -24,7 +24,7 @@ rpc_state_report_workers = {{ openstack_service_rpc_workers }}
|
||||
# in it is because we are sharing this socket in a volume which is it's own dir
|
||||
metadata_proxy_socket = /var/lib/neutron/kolla/metadata_proxy
|
||||
|
||||
{% if neutron_plugin_agent == "openvswitch" or neutron_plugin_agent == "opendaylight" %}
|
||||
{% if neutron_plugin_agent == "openvswitch" %}
|
||||
interface_driver = openvswitch
|
||||
{% elif neutron_plugin_agent == "linuxbridge" %}
|
||||
interface_driver = linuxbridge
|
||||
@ -160,11 +160,6 @@ hmac_keys = {{ osprofiler_secret }}
|
||||
connection_string = {{ osprofiler_backend_connection_string }}
|
||||
{% endif %}
|
||||
|
||||
{% if enable_opendaylight_qos | bool %}
|
||||
[qos]
|
||||
notification_drivers = {{ neutron_notification_drivers|map(attribute='name')|join(',') }}
|
||||
{% endif %}
|
||||
|
||||
[placement]
|
||||
auth_type = password
|
||||
auth_url = {{ keystone_admin_url }}
|
||||
|
@ -1,68 +0,0 @@
|
||||
---
|
||||
project_name: "opendaylight"
|
||||
|
||||
opendaylight_services:
|
||||
opendaylight:
|
||||
container_name: "opendaylight"
|
||||
image: "{{ opendaylight_image_full }}"
|
||||
enabled: True
|
||||
privileged: True
|
||||
group: "opendaylight"
|
||||
host_in_groups: "{{ inventory_hostname in groups['opendaylight'] }}"
|
||||
volumes: "{{ opendaylight_default_volumes + opendaylight_extra_volumes }}"
|
||||
dimensions: "{{ opendaylight_dimensions }}"
|
||||
tty: True
|
||||
haproxy:
|
||||
opendaylight_api:
|
||||
enabled: "{{ enable_opendaylight }}"
|
||||
mode: "http"
|
||||
port: "{{ opendaylight_haproxy_restconf_port }}"
|
||||
backend_http_extra:
|
||||
- "balance source"
|
||||
custom_member_list: "{{ api_haproxy_members.split(';') }}"
|
||||
opendaylight_api_backup:
|
||||
enabled: "{{ enable_opendaylight }}"
|
||||
mode: "http"
|
||||
port: "{{ opendaylight_haproxy_restconf_port_backup }}"
|
||||
backend_http_extra:
|
||||
- "balance source"
|
||||
custom_member_list: "{{ backup_api_haproxy_members.split(';') }}"
|
||||
opendaylight_websocket:
|
||||
enabled: "{{ enable_opendaylight }}"
|
||||
mode: "http"
|
||||
port: "{{ opendaylight_websocket_port }}"
|
||||
backend_http_extra:
|
||||
- "balance source"
|
||||
|
||||
####################
|
||||
# HAProxy
|
||||
####################
|
||||
api_haproxy_members: "{% for host in groups['opendaylight'] %}server {{ hostvars[host]['ansible_hostname'] }} {{ 'api' | kolla_address(host) }}:{{ opendaylight_restconf_port }} check inter 2000 rise 2 fall 5;{% endfor %}"
|
||||
backup_api_haproxy_members: "{% for host in groups['opendaylight'] %}server {{ hostvars[host]['ansible_hostname'] }} {{ 'api' | kolla_address(host) }}:{{ opendaylight_restconf_port_backup }} check inter 2000 rise 2 fall 5;{% endfor %}"
|
||||
|
||||
####################
|
||||
# Docker
|
||||
####################
|
||||
|
||||
opendaylight_install_type: "{{ kolla_install_type }}"
|
||||
opendaylight_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ opendaylight_install_type }}-opendaylight"
|
||||
opendaylight_tag: "{{ openstack_release }}"
|
||||
opendaylight_image_full: "{{ opendaylight_image }}:{{ opendaylight_tag }}"
|
||||
opendaylight_dimensions: "{{ default_container_dimensions }}"
|
||||
|
||||
opendaylight_default_volumes:
|
||||
- "{{ node_config_directory }}/opendaylight/:{{ container_config_directory }}/:ro"
|
||||
- "/etc/localtime:/etc/localtime:ro"
|
||||
- "kolla_logs:/var/log/kolla/"
|
||||
|
||||
opendaylight_extra_volumes: "{{ default_extra_volumes }}"
|
||||
|
||||
|
||||
###################
|
||||
# Java Opts
|
||||
###################
|
||||
|
||||
# JAVA_MAX_MEM param
|
||||
opendaylight_java_max_mem: "8g"
|
||||
# JAVA_MAX_PERM_MEM param
|
||||
opendaylight_java_max_perm_mem: "512m"
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
- name: Restart opendaylight container
|
||||
vars:
|
||||
service_name: "opendaylight"
|
||||
service: "{{ opendaylight_services[service_name] }}"
|
||||
become: true
|
||||
kolla_docker:
|
||||
action: "recreate_or_restart_container"
|
||||
common_options: "{{ docker_common_options }}"
|
||||
name: "{{ service.container_name }}"
|
||||
image: "{{ service.image }}"
|
||||
volumes: "{{ service.volumes }}"
|
||||
privileged: "{{ service.privileged | default(False) }}"
|
||||
dimensions: "{{ service.dimensions }}"
|
||||
tty: "{{ service.tty }}"
|
||||
when:
|
||||
- kolla_action != "config"
|
@ -1,3 +0,0 @@
|
||||
---
|
||||
dependencies:
|
||||
- { role: common }
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
- name: Check opendaylight containers
|
||||
become: true
|
||||
kolla_docker:
|
||||
action: "compare_container"
|
||||
common_options: "{{ docker_common_options }}"
|
||||
name: "{{ item.value.container_name }}"
|
||||
image: "{{ item.value.image }}"
|
||||
privileged: "{{ item.value.privileged | default(False) }}"
|
||||
volumes: "{{ item.value.volumes }}"
|
||||
dimensions: "{{ item.value.dimensions }}"
|
||||
tty: "{{ item.value.tty }}"
|
||||
when:
|
||||
- item.value.enabled | bool
|
||||
- item.value.host_in_groups | bool
|
||||
with_dict: "{{ opendaylight_services }}"
|
||||
notify:
|
||||
- "Restart {{ item.key }} container"
|
@ -1 +0,0 @@
|
||||
---
|
@ -1,197 +0,0 @@
|
||||
---
|
||||
- name: Setting sysctl values
|
||||
become: true
|
||||
sysctl: name={{ item.name }} value={{ item.value }} sysctl_set=yes
|
||||
with_items:
|
||||
- { name: "net.bridge.bridge-nf-call-iptables", value: 1}
|
||||
- { name: "net.bridge.bridge-nf-call-ip6tables", value: 1}
|
||||
- { name: "net.ipv4.conf.all.rp_filter", value: 0}
|
||||
- { name: "net.ipv4.conf.default.rp_filter", value: 0}
|
||||
when:
|
||||
- set_sysctl | bool
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
|
||||
- name: Ensuring config directories exist
|
||||
file:
|
||||
path: "{{ node_config_directory }}/{{ item }}"
|
||||
state: "directory"
|
||||
owner: "{{ config_owner_user }}"
|
||||
group: "{{ config_owner_group }}"
|
||||
mode: "0770"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
|
||||
- name: Copying over config.json files for services
|
||||
template:
|
||||
src: "{{ item }}.json.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/config.json"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over custom.properties
|
||||
template:
|
||||
src: "{{ role_path }}/templates/custom.properties.j2"
|
||||
dest: "{{ node_config_directory }}/opendaylight/custom.properties"
|
||||
mode: "0660"
|
||||
become: true
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over start-odl
|
||||
template:
|
||||
src: "{{ role_path }}/templates/start-odl.j2"
|
||||
dest: "{{ node_config_directory }}/opendaylight/start-odl"
|
||||
mode: "0660"
|
||||
become: true
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over jetty.xml
|
||||
template:
|
||||
src: "{{ role_path }}/templates/jetty.xml.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/jetty.xml"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over org.apache.karaf.features.cfg
|
||||
template:
|
||||
src: "{{ role_path }}/templates/org.apache.karaf.features.cfg.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/org.apache.karaf.features.cfg"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over org.opendaylight.ovsdb.library.cfg
|
||||
template:
|
||||
src: "{{ role_path }}/templates/org.opendaylight.ovsdb.library.cfg.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/org.opendaylight.ovsdb.library.cfg"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over tomcat-server.xml
|
||||
template:
|
||||
src: "{{ role_path }}/templates/tomcat-server.xml.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/tomcat-server.xml"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over org.ops4j.pax.logging.cfg.j2
|
||||
template:
|
||||
src: "{{ role_path }}/templates/org.ops4j.pax.logging.cfg.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/org.ops4j.pax.logging.cfg"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over netvirt-impl-config_netvirt-impl-config.xml
|
||||
template:
|
||||
src: "{{ role_path }}/templates/netvirt-impl-config_netvirt-impl-config.xml.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/netvirt-impl-config_netvirt-impl-config.xml"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over netvirt-aclservice-config.xml
|
||||
template:
|
||||
src: "{{ role_path }}/templates/netvirt-aclservice-config.xml.j2"
|
||||
dest: "{{ node_config_directory }}/{{ item }}/netvirt-aclservice-config.xml"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_items:
|
||||
- "opendaylight"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over setenv
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/opendaylight/setenv"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_first_found:
|
||||
- "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/setenv"
|
||||
- "{{ node_custom_config }}/opendaylight/setenv"
|
||||
- "{{ role_path }}/templates/setenv.j2"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over akka.conf
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/opendaylight/akka.conf"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_first_found:
|
||||
- "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/akka.conf"
|
||||
- "{{ node_custom_config }}/opendaylight/akka.conf"
|
||||
- "akka.conf.j2"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over modules.conf
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/opendaylight/modules.conf"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_first_found:
|
||||
- "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/modules.conf"
|
||||
- "{{ node_custom_config }}/opendaylight/modules.conf"
|
||||
- "modules.conf.j2"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over module-shards.conf
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/opendaylight/module-shards.conf"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_first_found:
|
||||
- "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/module-shards.conf"
|
||||
- "{{ node_custom_config }}/opendaylight/module-shards.conf"
|
||||
- "module-shards.conf.j2"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- name: Copying over 10-rest-connector.xml
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ node_config_directory }}/opendaylight/10-rest-connector.xml"
|
||||
mode: "0660"
|
||||
become: true
|
||||
with_first_found:
|
||||
- "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/10-rest-connector.xml"
|
||||
- "{{ node_custom_config }}/opendaylight/10-rest-connector.xml"
|
||||
- "10-rest-connector.xml.j2"
|
||||
notify:
|
||||
- Restart opendaylight container
|
||||
|
||||
- include_tasks: check-containers.yml
|
||||
when: kolla_action != "config"
|
@ -1,2 +0,0 @@
|
||||
---
|
||||
- import_tasks: check-containers.yml
|
@ -1,5 +0,0 @@
|
||||
---
|
||||
- include_tasks: config.yml
|
||||
|
||||
- name: Flush Handlers
|
||||
meta: flush_handlers
|
@ -1,7 +0,0 @@
|
||||
---
|
||||
- name: "Configure haproxy for {{ project_name }}"
|
||||
import_role:
|
||||
role: haproxy-config
|
||||
vars:
|
||||
project_services: "{{ opendaylight_services }}"
|
||||
tags: always
|
@ -1,2 +0,0 @@
|
||||
---
|
||||
- include_tasks: "{{ kolla_action }}.yml"
|
@ -1,112 +0,0 @@
|
||||
---
|
||||
- name: Get container facts
|
||||
become: true
|
||||
kolla_container_facts:
|
||||
name:
|
||||
- opendaylight
|
||||
register: container_facts
|
||||
|
||||
- name: Checking free port for opendaylight_clustering
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_clustering_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_restconf
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_restconf_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_restconf_backup
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_restconf_port_backup }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_karaf_ssh
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_karaf_ssh_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_openflow
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_openflow_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_ovsdb
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_ovsdb_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_jetty_conf_port
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_jetty_conf_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_jetty_conf2_port
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_jetty_conf2_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_tomcat_port
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_tomcat_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking free port for opendaylight_tomcat_redirect_port
|
||||
wait_for:
|
||||
host: "{{ 'api' | kolla_address }}"
|
||||
port: "{{ opendaylight_tomcat_redirect_port }}"
|
||||
connect_timeout: 1
|
||||
state: stopped
|
||||
when:
|
||||
- inventory_hostname in groups['opendaylight']
|
||||
- container_facts['opendaylight'] is not defined
|
||||
|
||||
- name: Checking available opendaylight nodes in inventory
|
||||
fail:
|
||||
msg: "Either 1 or 3 nodes required in inventory for OpenDaylight clustering"
|
||||
when: groups['opendaylight'] | length == 2
|
@ -1,11 +0,0 @@
|
||||
---
|
||||
- name: Pulling opendaylight image
|
||||
become: true
|
||||
kolla_docker:
|
||||
action: "pull_image"
|
||||
common_options: "{{ docker_common_options }}"
|
||||
image: "{{ item.value.image }}"
|
||||
when:
|
||||
- item.value.enabled | bool
|
||||
- item.value.host_in_groups | bool
|
||||
with_dict: "{{ opendaylight_services }}"
|
@ -1,2 +0,0 @@
|
||||
---
|
||||
- include_tasks: deploy.yml
|
@ -1,6 +0,0 @@
|
||||
---
|
||||
- import_role:
|
||||
role: service-stop
|
||||
vars:
|
||||
project_services: "{{ opendaylight_services }}"
|
||||
service_name: "{{ project_name }}"
|
@ -1,5 +0,0 @@
|
||||
---
|
||||
- include_tasks: config.yml
|
||||
|
||||
- name: Flush Handlers
|
||||
meta: flush_handlers
|
@ -1,42 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
|
||||
|
||||
This program and the accompanying materials are made available under the
|
||||
terms of the Eclipse Public License v1.0 which accompanies this distribution,
|
||||
and is available at http://www.eclipse.org/legal/epl-v10.html
|
||||
-->
|
||||
<snapshot>
|
||||
<configuration>
|
||||
<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
|
||||
<modules xmlns="urn:opendaylight:params:xml:ns:yang:controller:config">
|
||||
<!-- default OF-switch-connection-provider (port 6633) -->
|
||||
<module>
|
||||
<type xmlns:rest="urn:opendaylight:params:xml:ns:yang:controller:md:sal:rest:connector">rest:rest-connector-impl</type>
|
||||
<name>rest-connector-default-impl</name>
|
||||
<websocket-address>{{ 'api' | kolla_address }}</websocket-address>
|
||||
<websocket-port>{{ opendaylight_websocket_port }}</websocket-port>
|
||||
<dom-broker>
|
||||
<type xmlns:dom="urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom">dom:dom-broker-osgi-registry</type>
|
||||
<name>dom-broker</name>
|
||||
</dom-broker>
|
||||
</module>
|
||||
</modules>
|
||||
|
||||
<services xmlns="urn:opendaylight:params:xml:ns:yang:controller:config">
|
||||
<service>
|
||||
<type xmlns:rest="urn:opendaylight:params:xml:ns:yang:controller:md:sal:rest:connector">rest:rest-connector</type>
|
||||
<instance>
|
||||
<name>rest-connector-default</name>
|
||||
<provider>
|
||||
/modules/module[type='rest-connector-impl'][name='rest-connector-default-impl']
|
||||
</provider>
|
||||
</instance>
|
||||
</service>
|
||||
</services>
|
||||
</data>
|
||||
</configuration>
|
||||
<required-capabilities>
|
||||
<capability>urn:opendaylight:params:xml:ns:yang:controller:md:sal:rest:connector?module=opendaylight-rest-connector&revision=2014-07-24</capability>
|
||||
</required-capabilities>
|
||||
</snapshot>
|
@ -1,33 +0,0 @@
|
||||
|
||||
odl-cluster-data {
|
||||
akka {
|
||||
remote {
|
||||
artery {
|
||||
enabled = off
|
||||
canonical.hostname = "{{ 'api' | kolla_address }}"
|
||||
canonical.port = {{ opendaylight_clustering_port }}
|
||||
}
|
||||
netty.tcp {
|
||||
hostname = "{{ 'api' | kolla_address }}"
|
||||
port = {{ opendaylight_clustering_port }}
|
||||
}
|
||||
}
|
||||
|
||||
cluster {
|
||||
seed-nodes = [{% for host in groups['opendaylight'] %}"akka.tcp://opendaylight-cluster-data@{{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ opendaylight_clustering_port }}"{% if not loop.last %},{% endif %}{% endfor %}]
|
||||
|
||||
roles = [
|
||||
"{{ hostvars[inventory_hostname]['ansible_hostname'] }}"
|
||||
]
|
||||
|
||||
}
|
||||
|
||||
persistence {
|
||||
|
||||
journal {
|
||||
leveldb {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
org.osgi.framework.system.packages.extra=org.apache.karaf.branding,sun.reflect,sun.reflect.misc,sun.misc,sun.nio.ch,com.sun.media.sound
|
||||
|
||||
osgi.hook.configurators.include=org.eclipse.virgo.kernel.equinox.extensions.hooks.ExtensionsHookConfigurator
|
||||
|
||||
|
||||
org.eclipse.gemini.web.tomcat.config.path=configuration/tomcat-server.xml
|
||||
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
|
||||
|
||||
karaf.framework=equinox
|
||||
|
||||
karaf.delay.console=true
|
||||
|
||||
org.apache.karaf.security.providers = org.bouncycastle.jce.provider.BouncyCastleProvider
|
||||
|
||||
org.apache.aries.blueprint.preemptiveShutdown=false
|
||||
|
||||
netconf.config.persister.active=1
|
||||
|
||||
netconf.config.persister.1.storageAdapterClass=org.opendaylight.controller.config.persist.storage.file.xml.XmlFileStorageAdapter
|
||||
netconf.config.persister.1.properties.fileStorage=etc/opendaylight/current/controller.currentconfig.xml
|
||||
netconf.config.persister.1.properties.numberOfBackups=1
|
||||
|
||||
logback.configurationFile=configuration/logback.xml
|
||||
|
||||
container.profile = Container
|
||||
|
||||
connection.scheme = ANY_CONTROLLER_ONE_MASTER
|
||||
|
||||
ovsdb.l3.arp.responder.disabled=no
|
||||
|
||||
secureChannelEnabled=false
|
||||
controllerKeyStore=
|
||||
controllerKeyStorePassword=
|
||||
controllerTrustStore=
|
||||
controllerTrustStorePassword=
|
||||
|
||||
enableStrongPasswordCheck = false
|
||||
|
||||
java.util.logging.config.file=configuration/tomcat-logging.properties
|
||||
|
||||
hosttracker.keyscheme=IP
|
||||
|
||||
lisp.mappingMerge = false
|
||||
|
||||
lisp.smr = true
|
||||
|
||||
lisp.elpPolicy = default
|
@ -1,90 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//
|
||||
DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
|
||||
|
||||
<Configure class="org.eclipse.jetty.server.Server">
|
||||
<Call name="addConnector">
|
||||
<Arg>
|
||||
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
|
||||
<Set name="host">
|
||||
<Property name="jetty.host" />
|
||||
</Set>
|
||||
<Set name="port">
|
||||
<Property name="jetty.port" default="{{ opendaylight_restconf_port }}" />
|
||||
</Set>
|
||||
<Set name="maxIdleTime">300000</Set>
|
||||
<Set name="Acceptors">2</Set>
|
||||
<Set name="statsOn">false</Set>
|
||||
<Set name="confidentialPort">{{ opendaylight_jetty_conf_port }}</Set>
|
||||
<Set name="lowResourcesConnections">20000</Set>
|
||||
<Set name="lowResourcesMaxIdleTime">5000</Set>
|
||||
</New>
|
||||
</Arg>
|
||||
</Call>
|
||||
<Call name="addConnector">
|
||||
<Arg>
|
||||
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
|
||||
<Set name="host">
|
||||
<Property name="jetty.host" />
|
||||
</Set>
|
||||
<Set name="port">
|
||||
<Property name="jetty.port" default="{{ opendaylight_restconf_port_backup }}" />
|
||||
</Set>
|
||||
<Set name="maxIdleTime">300000</Set>
|
||||
<Set name="Acceptors">2</Set>
|
||||
<Set name="statsOn">false</Set>
|
||||
<Set name="confidentialPort">{{ opendaylight_jetty_conf2_port }}</Set>
|
||||
<Set name="lowResourcesConnections">20000</Set>
|
||||
<Set name="lowResourcesMaxIdleTime">5000</Set>
|
||||
</New>
|
||||
</Arg>
|
||||
</Call>
|
||||
|
||||
<Call name="addBean">
|
||||
<Arg>
|
||||
<New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
|
||||
<Set name="name">karaf</Set>
|
||||
<Set name="loginModuleName">karaf</Set>
|
||||
<Set name="roleClassNames">
|
||||
<Array type="java.lang.String">
|
||||
<Item>org.apache.karaf.jaas.boot.principal.RolePrincipal
|
||||
</Item>
|
||||
</Array>
|
||||
</Set>
|
||||
</New>
|
||||
</Arg>
|
||||
</Call>
|
||||
<Call name="addBean">
|
||||
<Arg>
|
||||
<New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
|
||||
<Set name="name">default</Set>
|
||||
<Set name="loginModuleName">karaf</Set>
|
||||
<Set name="roleClassNames">
|
||||
<Array type="java.lang.String">
|
||||
<Item>org.apache.karaf.jaas.boot.principal.RolePrincipal
|
||||
</Item>
|
||||
</Array>
|
||||
</Set>
|
||||
</New>
|
||||
</Arg>
|
||||
</Call>
|
||||
|
||||
</Configure>
|
@ -1,59 +0,0 @@
|
||||
module-shards = [
|
||||
{
|
||||
name = "default"
|
||||
shards = [
|
||||
{
|
||||
name="default"
|
||||
replicas = [
|
||||
{% for host in groups['opendaylight'] %}
|
||||
"{{ hostvars[host]['ansible_hostname'] }}"{% if not loop.last %},
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name = "topology"
|
||||
shards = [
|
||||
{
|
||||
name="topology"
|
||||
replicas = [
|
||||
{% for host in groups['opendaylight'] %}
|
||||
"{{ hostvars[host]['ansible_hostname'] }}"{% if not loop.last %},
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name = "inventory"
|
||||
shards = [
|
||||
{
|
||||
name="inventory"
|
||||
replicas = [
|
||||
{% for host in groups['opendaylight'] %}
|
||||
"{{ hostvars[host]['ansible_hostname'] }}"{% if not loop.last %},
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name = "toaster"
|
||||
shards = [
|
||||
{
|
||||
name="toaster"
|
||||
replicas = [
|
||||
{% for host in groups['opendaylight'] %}
|
||||
"{{ hostvars[host]['ansible_hostname'] }}"{% if not loop.last %},
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
]
|
@ -1,20 +0,0 @@
|
||||
modules = [
|
||||
{
|
||||
name = "inventory"
|
||||
namespace = "urn:opendaylight:inventory"
|
||||
shard-strategy = "module"
|
||||
},
|
||||
|
||||
{
|
||||
name = "topology"
|
||||
namespace = "urn:TBD:params:xml:ns:yang:network-topology"
|
||||
shard-strategy = "module"
|
||||
},
|
||||
|
||||
{
|
||||
name = "toaster"
|
||||
namespace = "http://netconfcentral.org/ns/toaster"
|
||||
shard-strategy = "module"
|
||||
}
|
||||
|
||||
]
|
@ -1,4 +0,0 @@
|
||||
<aclservice-config xmlns="urn:opendaylight:netvirt:aclservice-config">
|
||||
<security-group-mode>{{ opendaylight_acl_impl }}</security-group-mode>
|
||||
<default-behavior>deny</default-behavior>
|
||||
</aclservice-config>
|
@ -1,7 +0,0 @@
|
||||
{% if enable_opendaylight_legacy_netvirt_conntrack | bool %}
|
||||
<netvirt-impl-config xmlns="urn:opendaylight:params:xml:ns:yang:netvirt:impl:config">
|
||||
<conntrack-enabled>
|
||||
true
|
||||
</conntrack-enabled>
|
||||
</netvirt-impl-config>
|
||||
{% endif %}
|
@ -1,96 +0,0 @@
|
||||
{
|
||||
"command": "start-odl",
|
||||
"config_files": [
|
||||
{
|
||||
"source": "{{ container_config_directory }}/start-odl",
|
||||
"dest": "/usr/local/bin/start-odl",
|
||||
"owner": "odl",
|
||||
"perm": "0655"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/org.apache.karaf.features.cfg",
|
||||
"dest": "/opt/opendaylight/etc/org.apache.karaf.features.cfg",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/org.opendaylight.ovsdb.library.cfg",
|
||||
"dest": "/opt/opendaylight/etc/org.opendaylight.ovsdb.library.cfg",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/tomcat-server.xml",
|
||||
"dest": "/opt/opendaylight/configuration/tomcat-server.xml",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/jetty.xml",
|
||||
"dest": "/opt/opendaylight/etc/jetty.xml",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/org.ops4j.pax.logging.cfg",
|
||||
"dest": "/opt/opendaylight/etc/org.ops4j.pax.logging.cfg",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "/var/lib/kolla/config_files/custom.properties",
|
||||
"dest": "/opt/opendaylight/etc/custom.properties",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/netvirt-impl-config_netvirt-impl-config.xml",
|
||||
"dest": "/opt/opendaylight/etc/opendaylight/datastore/initial/config/netvirt-impl-config_netvirt-impl-config.xml",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/netvirt-aclservice-config.xml",
|
||||
"dest": "/opt/opendaylight/etc/opendaylight/datastore/initial/config/netvirt-aclservice-config.xml",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/setenv",
|
||||
"dest": "/opt/opendaylight/bin/setenv",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/akka.conf",
|
||||
"dest": "/opt/opendaylight/configuration/initial/akka.conf",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/modules.conf",
|
||||
"dest": "/opt/opendaylight/configuration/initial/modules.conf",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/module-shards.conf",
|
||||
"dest": "/opt/opendaylight/configuration/initial/module-shards.conf",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
},
|
||||
{
|
||||
"source": "{{ container_config_directory }}/10-rest-connector.xml",
|
||||
"dest": "/opt/opendaylight/etc/opendaylight/karaf/10-rest-connector.xml",
|
||||
"owner": "odl",
|
||||
"perm": "0600"
|
||||
}
|
||||
],
|
||||
"permissions": [
|
||||
{
|
||||
"path": "/var/log/kolla/opendaylight",
|
||||
"owner": "odl:odl",
|
||||
"recurse": true
|
||||
}
|
||||
]
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
################################################################################
|
||||
|
||||
featuresRepositories = mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features, \
|
||||
mvn:org.apache.karaf.features/enterprise/${karaf.version}/xml/features, \
|
||||
mvn:org.ops4j.pax.web/pax-web-features/3.2.9/xml/features, \
|
||||
mvn:org.apache.karaf.features/spring/${karaf.version}/xml/features, \
|
||||
mvn:org.opendaylight.integration/features-integration-index/${project.version}/xml/features
|
||||
|
||||
featuresBoot=config,standard,region,package,kar,ssh,management{% if not opendaylight_features == '' %},{% endif %}{{ opendaylight_features }}
|
||||
|
||||
featuresBootAsynchronous=false
|
@ -1,7 +0,0 @@
|
||||
ovsdb-listener-port = {{ opendaylight_ovsdb_port }}
|
||||
|
||||
use-ssl = false
|
||||
|
||||
json-rpc-decoder-max-frame-length = 100000
|
||||
|
||||
ovsdb-rpc-task-timeout = 1000
|
@ -1,52 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
################################################################################
|
||||
|
||||
log4j.rootLogger=INFO, async, osgi:*
|
||||
log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
|
||||
|
||||
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
|
||||
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.stdout.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
|
||||
|
||||
log4j.appender.async=org.apache.log4j.AsyncAppender
|
||||
log4j.appender.async.appenders=out
|
||||
|
||||
log4j.appender.out=org.apache.log4j.RollingFileAppender
|
||||
log4j.appender.out.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.out.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
|
||||
log4j.appender.out.file=/var/log/kolla/opendaylight/karaf.log
|
||||
log4j.appender.out.append=true
|
||||
log4j.appender.out.maxFileSize=1MB
|
||||
log4j.appender.out.maxBackupIndex=10
|
||||
|
||||
log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
|
||||
log4j.appender.sift.key=bundle.name
|
||||
log4j.appender.sift.default=karaf
|
||||
log4j.appender.sift.appender=org.apache.log4j.FileAppender
|
||||
log4j.appender.sift.appender.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.sift.appender.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %m%n
|
||||
log4j.appender.sift.appender.file=/var/log/kolla/opendaylight/$\\{bundle.name\\}.log
|
||||
log4j.appender.sift.appender.append=true
|
||||
|
||||
log4j.appender.syslog=org.apache.log4j.net.SyslogAppender
|
||||
log4j.appender.syslog.layout=org.apache.log4j.PatternLayout
|
||||
log4j.appender.syslog.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
|
||||
log4j.appender.syslog.syslogHost=127.0.0.1
|
||||
log4J.appender.syslog.facility=KARAF
|
||||
log4j.appender.syslog.facilityPrinting=false
|
@ -1,34 +0,0 @@
|
||||
################################################################################
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
################################################################################
|
||||
|
||||
org.ops4j.pax.url.mvn.settings=/var/lib/odl/.m2/settings.xml
|
||||
|
||||
org.ops4j.pax.url.mvn.localRepository=${karaf.home}/${karaf.default.repository}
|
||||
|
||||
org.ops4j.pax.url.mvn.useFallbackRepositories=false
|
||||
|
||||
org.ops4j.pax.url.mvn.defaultLocalRepoAsRemote=false
|
||||
|
||||
org.ops4j.pax.url.mvn.repositories= \
|
||||
file:${karaf.home}/${karaf.default.repository}@id=system.repository, \
|
||||
file:${karaf.data}/kar@id=kar.repository@multi, \
|
||||
http://repo1.maven.org/maven2@id=central, \
|
||||
http://repository.springsource.com/maven/bundles/release@id=spring.ebr.release, \
|
||||
http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external, \
|
||||
http://zodiac.springsource.com/maven/bundles/release@id=gemini
|
@ -1,24 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
# contributor license agreements. See the NOTICE file distributed with
|
||||
# this work for additional information regarding copyright ownership.
|
||||
# The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
# (the "License"); you may not use this file except in compliance with
|
||||
# the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
if [ "x$JAVA_MAX_PERM_MEM" = "x" ]; then
|
||||
export JAVA_MAX_PERM_MEM="{{ opendaylight_java_max_perm_mem }}"
|
||||
fi
|
||||
if [ "x$JAVA_MAX_MEM" = "x" ]; then
|
||||
export JAVA_MAX_MEM="{{ opendaylight_java_max_mem }}"
|
||||
fi
|
@ -1,3 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
java -jar /opt/opendaylight/bin/aaa-cli-jar.jar --dbd /opt/opendaylight/ --nu admin -p {{ opendaylight_password }}
|
||||
/opt/opendaylight/bin/karaf
|
@ -1,46 +0,0 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
contributor license agreements. See the NOTICE file distributed with
|
||||
this work for additional information regarding copyright ownership.
|
||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
(the "License"); you may not use this file except in compliance with
|
||||
the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<Server>
|
||||
<!--APR library loader. Documentation at /docs/apr.html -->
|
||||
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
|
||||
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
|
||||
<Listener className="org.apache.catalina.core.JasperListener" />
|
||||
<!-- Prevent memory leaks due to use of particular java/javax APIs-->
|
||||
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
|
||||
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
|
||||
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
|
||||
|
||||
<Service name="Catalina">
|
||||
<Connector port="{{ opendaylight_tomcat_port }}" protocol="HTTP/1.1"
|
||||
connectionTimeout="20000"
|
||||
redirectPort="{{ opendaylight_tomcat_redirect_port }}" />
|
||||
|
||||
<Engine name="Catalina" defaultHost="localhost">
|
||||
<Host name="localhost" appBase=""
|
||||
unpackWARs="false" autoDeploy="false"
|
||||
deployOnStartup="false" createDirs="false">
|
||||
<Realm className="org.opendaylight.controller.karafsecurity.ControllerCustomRealm" />
|
||||
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
|
||||
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
|
||||
prefix="web_access_log_" suffix=".txt" resolveHosts="false"
|
||||
rotatable="true" fileDateFormat="yyyy-MM"
|
||||
pattern="%{yyyy-MM-dd HH:mm:ss.SSS z}t - [%a] - %r"/>
|
||||
</Host>
|
||||
</Engine>
|
||||
</Service>
|
||||
</Server>
|
@ -1,11 +1,2 @@
|
||||
#!/usr/bin/env bash
|
||||
{% if enable_opendaylight | bool %}
|
||||
/usr/bin/ovs-vsctl --no-wait -- set-manager {% for host in groups['opendaylight'] %}tcp:{{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ opendaylight_ovsdb_port }} {% endfor %}
|
||||
|
||||
/usr/bin/ovs-vsctl --no-wait -- set Open_vSwitch . other_config:local_ip={{ 'tunnel' | kolla_address }}
|
||||
/usr/bin/ovs-vsctl --no-wait -- set Open_vSwitch . other_config:provider_mappings=physnet1:{{ neutron_bridge_name }}
|
||||
/usr/bin/ovs-vsctl --no-wait -- set Open_vSwitch . external_ids:system-id=`cat /proc/sys/kernel/random/uuid`
|
||||
/usr/bin/ovs-vsctl --no-wait -- set Open_vSwitch . external_ids:odl_os_hostconfig_config_odl_l2='{"supported_vnic_types": [{"vnic_type": "normal", "vif_type": "ovs", "vif_details": {} }], "allowed_network_types": [{{ opendaylight_allowed_network_types }}], "datapath_types": ["netdev", "system"], "bridge_mappings": {"physnet1":"{{ neutron_bridge_name }}"} }'
|
||||
/usr/bin/ovs-vsctl --no-wait -- set Open_vSwitch . external_ids:odl_os_hostconfig_hostid="{{ hostvars[inventory_hostname]['ansible_hostname'] }}"
|
||||
{% endif %}
|
||||
/usr/sbin/ovs-vswitchd unix:/run/openvswitch/db.sock -vconsole:emer -vsyslog:err -vfile:info --mlockall --log-file=/var/log/kolla/openvswitch/ovs-vswitchd.log --pidfile
|
||||
|
@ -7,7 +7,7 @@ ovsdpdk_services:
|
||||
ovsdpdk-db:
|
||||
container_name: "ovsdpdk_db"
|
||||
image: "{{ ovsdpdk_db_image_full }}"
|
||||
enabled: "{{ neutron_plugin_agent in ['openvswitch', 'opendaylight'] }}"
|
||||
enabled: "{{ neutron_plugin_agent in ['openvswitch'] }}"
|
||||
host_in_groups: >-
|
||||
{{
|
||||
inventory_hostname in groups['compute']
|
||||
@ -21,7 +21,7 @@ ovsdpdk_services:
|
||||
ovsdpdk-vswitchd:
|
||||
container_name: "ovsdpdk_vswitchd"
|
||||
image: "{{ ovsdpdk_vswitchd_image_full }}"
|
||||
enabled: "{{ neutron_plugin_agent in ['openvswitch', 'opendaylight'] }}"
|
||||
enabled: "{{ neutron_plugin_agent in ['openvswitch'] }}"
|
||||
privileged: True
|
||||
host_in_groups: >-
|
||||
{{
|
||||
|
@ -33,7 +33,7 @@ agent:
|
||||
flow:
|
||||
probes:
|
||||
- gopacket
|
||||
{% if neutron_plugin_agent in ['openvswitch', 'opendaylight'] %}
|
||||
{% if neutron_plugin_agent in ['openvswitch'] %}
|
||||
- ovssflow
|
||||
{% endif %}
|
||||
topology:
|
||||
@ -41,7 +41,7 @@ agent:
|
||||
- netlink
|
||||
- netns
|
||||
- neutron
|
||||
{% if neutron_plugin_agent in ['openvswitch', 'opendaylight'] %}
|
||||
{% if neutron_plugin_agent in ['openvswitch'] %}
|
||||
- ovsdb
|
||||
{% endif %}
|
||||
|
||||
@ -61,7 +61,7 @@ flow:
|
||||
expire: 600
|
||||
update: 60
|
||||
|
||||
{% if neutron_plugin_agent in ['openvswitch', 'opendaylight'] %}
|
||||
{% if neutron_plugin_agent in ['openvswitch'] %}
|
||||
ovs:
|
||||
ovsdb: tcp://127.0.0.1:{{ ovsdb_port }}
|
||||
oflow:
|
||||
|
@ -63,7 +63,6 @@
|
||||
- enable_neutron_{{ enable_neutron | bool }}
|
||||
- enable_nova_{{ enable_nova | bool }}
|
||||
- enable_octavia_{{ enable_octavia | bool }}
|
||||
- enable_opendaylight_{{ enable_opendaylight | bool }}
|
||||
- enable_openvswitch_{{ enable_openvswitch | bool }}_enable_ovs_dpdk_{{ enable_ovs_dpdk | bool }}
|
||||
- enable_outward_rabbitmq_{{ enable_outward_rabbitmq | bool }}
|
||||
- enable_panko_{{ enable_panko | bool }}
|
||||
@ -299,11 +298,6 @@
|
||||
tasks_from: loadbalancer
|
||||
tags: octavia
|
||||
when: enable_octavia | bool
|
||||
- include_role:
|
||||
role: opendaylight
|
||||
tasks_from: loadbalancer
|
||||
tags: opendaylight
|
||||
when: enable_opendaylight | bool
|
||||
- include_role:
|
||||
role: panko
|
||||
tasks_from: loadbalancer
|
||||
@ -717,17 +711,6 @@
|
||||
# own playbook.
|
||||
- import_playbook: nova.yml
|
||||
|
||||
- name: Apply role opendaylight
|
||||
gather_facts: false
|
||||
hosts:
|
||||
- opendaylight
|
||||
- '&enable_opendaylight_True'
|
||||
serial: '{{ kolla_serial|default("0") }}'
|
||||
roles:
|
||||
- { role: opendaylight,
|
||||
tags: opendaylight,
|
||||
when: enable_opendaylight | bool }
|
||||
|
||||
- name: Apply role openvswitch
|
||||
gather_facts: false
|
||||
hosts:
|
||||
|
@ -14,6 +14,5 @@ Networking-SFC, QoS, and so on.
|
||||
dpdk
|
||||
neutron
|
||||
neutron-extensions
|
||||
opendaylight
|
||||
provider-networks
|
||||
sriov
|
||||
|
@ -1,57 +0,0 @@
|
||||
.. _opendaylight:
|
||||
|
||||
=============================
|
||||
Opendaylight - SDN controller
|
||||
=============================
|
||||
|
||||
Preparation and deployment
|
||||
--------------------------
|
||||
|
||||
Modify the ``/etc/kolla/globals.yml`` file as the following example shows:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
enable_opendaylight: "yes"
|
||||
neutron_plugin_agent: "opendaylight"
|
||||
|
||||
Networking-ODL is an additional Neutron plugin that allows the OpenDaylight
|
||||
SDN Controller to utilize its networking virtualization features.
|
||||
For OpenDaylight to work, the Networking-ODL plugin has to be installed in
|
||||
the ``neutron-server`` container. In this case, one could use the
|
||||
neutron-server-opendaylight container and the opendaylight container by
|
||||
pulling from Kolla dockerhub or by building them locally.
|
||||
|
||||
OpenDaylight ``globals.yml`` configurable options with their defaults include:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
opendaylight_mechanism_driver: "opendaylight_v2"
|
||||
opendaylight_l3_service_plugin: "odl-router_v2"
|
||||
opendaylight_acl_impl: "learn"
|
||||
enable_opendaylight_qos: "no"
|
||||
enable_opendaylight_l3: "yes"
|
||||
enable_opendaylight_legacy_netvirt_conntrack: "no"
|
||||
opendaylight_port_binding_type: "pseudo-agentdb-binding"
|
||||
opendaylight_features: "odl-mdsal-apidocs,odl-netvirt-openstack"
|
||||
opendaylight_allowed_network_types: '"flat", "vlan", "vxlan"'
|
||||
|
||||
Clustered OpenDaylight Deploy
|
||||
-----------------------------
|
||||
|
||||
High availability clustered OpenDaylight requires modifying the inventory file
|
||||
and placing three or more hosts in the OpenDaylight or Networking groups.
|
||||
|
||||
.. note::
|
||||
|
||||
The OpenDaylight role will allow deploy of one or three plus hosts for
|
||||
OpenDaylight/Networking role.
|
||||
|
||||
Verification
|
||||
------------
|
||||
|
||||
Verify the build and deploy operation of Networking-ODL containers. Successful
|
||||
deployment will bring up an Opendaylight container in the list of running
|
||||
containers on network/opendaylight node.
|
||||
|
||||
For the source code, please refer to the following link:
|
||||
https://github.com/openstack/networking-odl
|
@ -119,7 +119,7 @@
|
||||
# addresses for that reason.
|
||||
#neutron_external_interface: "eth1"
|
||||
|
||||
# Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_nsxv3, vmware_dvs, opendaylight ]
|
||||
# Valid options are [ openvswitch, linuxbridge, vmware_nsxv, vmware_nsxv3, vmware_dvs ]
|
||||
# if vmware_nsxv3 is selected, enable_openvswitch MUST be set to "no" (default is yes)
|
||||
#neutron_plugin_agent: "openvswitch"
|
||||
|
||||
@ -185,12 +185,6 @@
|
||||
# in a multi-region deployment, and then only in the *first* region.
|
||||
#multiple_regions_names: ["{{ openstack_region_name }}"]
|
||||
|
||||
##############
|
||||
# OpenDaylight
|
||||
##############
|
||||
#enable_opendaylight_qos: "no"
|
||||
#enable_opendaylight_l3: "yes"
|
||||
|
||||
###################
|
||||
# OpenStack options
|
||||
###################
|
||||
@ -320,7 +314,6 @@
|
||||
#enable_nova_ssh: "yes"
|
||||
#enable_octavia: "no"
|
||||
#enable_onos: "no"
|
||||
#enable_opendaylight: "no"
|
||||
#enable_openvswitch: "{{ enable_neutron | bool and neutron_plugin_agent != 'linuxbridge' }}"
|
||||
#enable_ovs_dpdk: "no"
|
||||
#enable_osprofiler: "no"
|
||||
|
@ -24,11 +24,6 @@ mariadb_backup_database_password:
|
||||
# This should only be set if you require a password for your Docker registry
|
||||
docker_registry_password:
|
||||
|
||||
######################
|
||||
# OpenDaylight options
|
||||
######################
|
||||
opendaylight_password:
|
||||
|
||||
####################
|
||||
# VMware support
|
||||
####################
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
Support for deployment of OpenDaylight controller and configuration of Neutron related to
|
||||
integration with OpenDaylight have been removed.
|
@ -129,9 +129,6 @@ network
|
||||
compute
|
||||
manila-share
|
||||
|
||||
[opendaylight:children]
|
||||
network
|
||||
|
||||
[cinder:children]
|
||||
control
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user