From d2d9f0d6b76b91c4f5a9deb2b8ad04a495f06499 Mon Sep 17 00:00:00 2001 From: Doug Szumski Date: Tue, 12 Jun 2018 16:19:08 +0100 Subject: [PATCH] Add support for deploying Apache Storm Change-Id: I49afdddb8ba2f9cb4a08071c6acee3a3efb03305 Story: 2001627 Task: 6707 --- ansible/group_vars/all/kolla | 5 ++++- ansible/roles/kolla-ansible/defaults/main.yml | 1 + .../roles/kolla-ansible/templates/overcloud-components.j2 | 3 +++ .../roles/kolla-ansible/templates/overcloud-services.j2 | 7 +++++++ ansible/roles/kolla-ansible/tests/test-defaults.yml | 1 + ansible/roles/kolla-ansible/tests/test-extras.yml | 2 ++ ansible/roles/kolla-ansible/vars/main.yml | 1 + ansible/roles/kolla-openstack/defaults/main.yml | 6 ++++++ .../kolla-openstack/molecule/default/tests/test_default.py | 1 + .../molecule/enable-everything/molecule.yml | 1 + .../molecule/enable-everything/tests/test_default.py | 1 + ansible/roles/kolla-openstack/vars/main.yml | 5 +++++ etc/kayobe/kolla.yml | 1 + releasenotes/notes/add-storm-5d29163b61ef01ce.yaml | 4 ++++ 14 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/add-storm-5d29163b61ef01ce.yaml diff --git a/ansible/group_vars/all/kolla b/ansible/group_vars/all/kolla index 0362a9afd..091477194 100644 --- a/ansible/group_vars/all/kolla +++ b/ansible/group_vars/all/kolla @@ -191,6 +191,8 @@ overcloud_container_image_regex_map: enabled: "{{ kolla_enable_sahara | bool }}" - regex: skydive enabled: "{{ kolla_enable_skydive | bool }}" + - regex: storm + enabled: "{{ kolla_enable_storm | bool }}" - regex: swift enabled: "{{ kolla_enable_swift | bool }}" - regex: telegraf @@ -349,9 +351,10 @@ kolla_enable_osprofiler: "no" kolla_enable_prometheus: "no" kolla_enable_sahara: "no" kolla_enable_skydive: "no" +kolla_enable_storm: "{{ 'yes' if kolla_enable_monasca | bool else 'no' }}" kolla_enable_swift: "no" kolla_enable_telegraf: "no" -kolla_enable_zookeeper: "{{ 'yes' if kolla_enable_kafka | bool else 'no' }}" +kolla_enable_zookeeper: "{{ 'yes' if kolla_enable_kafka | bool or kolla_enable_storm | bool else 'no' }}" ############################################################################### # Passwords and credentials. diff --git a/ansible/roles/kolla-ansible/defaults/main.yml b/ansible/roles/kolla-ansible/defaults/main.yml index 5b4c521db..bc0b1b0db 100644 --- a/ansible/roles/kolla-ansible/defaults/main.yml +++ b/ansible/roles/kolla-ansible/defaults/main.yml @@ -243,6 +243,7 @@ kolla_openstack_logging_debug: #kolla_enable_rally: #kolla_enable_sahara: #kolla_enable_senlin: +#kolla_enable_storm: #kolla_enable_swift: #kolla_enable_telegraf: #kolla_enable_tempest: diff --git a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 index 76e857210..55d313b0d 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-components.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-components.j2 @@ -131,6 +131,9 @@ control [monasca:children] monitoring +[storm:children] +monitoring + [murano:children] control diff --git a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 index f0278bdde..6ac4eae4b 100644 --- a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 +++ b/ansible/roles/kolla-ansible/templates/overcloud-services.j2 @@ -209,6 +209,13 @@ monasca [monasca-persister:children] monasca +# Storm +[storm-worker:children] +storm + +[storm-nimbus:children] +storm + # Murano [murano-api:children] murano diff --git a/ansible/roles/kolla-ansible/tests/test-defaults.yml b/ansible/roles/kolla-ansible/tests/test-defaults.yml index 31cb585a3..ebd2679a2 100644 --- a/ansible/roles/kolla-ansible/tests/test-defaults.yml +++ b/ansible/roles/kolla-ansible/tests/test-defaults.yml @@ -100,6 +100,7 @@ - enable_monasca - enable_neutron - enable_nova + - enable_storm - enable_zookeeper - grafana_admin_username - network_interface diff --git a/ansible/roles/kolla-ansible/tests/test-extras.yml b/ansible/roles/kolla-ansible/tests/test-extras.yml index 12cb9d652..bd052ae10 100644 --- a/ansible/roles/kolla-ansible/tests/test-extras.yml +++ b/ansible/roles/kolla-ansible/tests/test-extras.yml @@ -153,6 +153,7 @@ kolla_enable_senlin: True kolla_enable_skydive: True kolla_enable_solum: True + kolla_enable_storm: True kolla_enable_swift: True kolla_enable_tacker: True kolla_enable_telegraf: True @@ -282,6 +283,7 @@ #enable_skydive: True #enable_solum: True #enable_senlin: True + #enable_storm: True #enable_swift: True #enable_tacker: True #enable_telegraf: True diff --git a/ansible/roles/kolla-ansible/vars/main.yml b/ansible/roles/kolla-ansible/vars/main.yml index 3d32f86e1..9cb6d9d50 100644 --- a/ansible/roles/kolla-ansible/vars/main.yml +++ b/ansible/roles/kolla-ansible/vars/main.yml @@ -128,6 +128,7 @@ kolla_feature_flags: - senlin - skydive - solum + - storm - swift - tacker - telegraf diff --git a/ansible/roles/kolla-openstack/defaults/main.yml b/ansible/roles/kolla-openstack/defaults/main.yml index 27caa1147..2214ff240 100644 --- a/ansible/roles/kolla-openstack/defaults/main.yml +++ b/ansible/roles/kolla-openstack/defaults/main.yml @@ -370,6 +370,12 @@ kolla_enable_sahara: # Free form extra configuration to append to sahara.conf. kolla_extra_sahara: +############################################################################### +# Storm configuration. + +# Whether to enable Storm. +kolla_enable_storm: + ############################################################################### # Swift configuration. diff --git a/ansible/roles/kolla-openstack/molecule/default/tests/test_default.py b/ansible/roles/kolla-openstack/molecule/default/tests/test_default.py index bf86823a7..d52d17b33 100644 --- a/ansible/roles/kolla-openstack/molecule/default/tests/test_default.py +++ b/ansible/roles/kolla-openstack/molecule/default/tests/test_default.py @@ -55,6 +55,7 @@ def test_service_config_directory(host, path): 'neutron', 'nova', 'sahara', + 'storm', 'swift', 'zookeeper']) def test_service_config_directory_absent(host, path): diff --git a/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml b/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml index fca21ca7a..fb409033e 100644 --- a/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml +++ b/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml @@ -88,6 +88,7 @@ provisioner: [extra-sahara.conf] foo=bar kolla_enable_swift: true + kolla_enable_storm: true kolla_enable_zookeeper: true kolla_extra_zookeeper: | [extra-zookeeper.cfg] diff --git a/ansible/roles/kolla-openstack/molecule/enable-everything/tests/test_default.py b/ansible/roles/kolla-openstack/molecule/enable-everything/tests/test_default.py index c18be65d3..3d8f71607 100644 --- a/ansible/roles/kolla-openstack/molecule/enable-everything/tests/test_default.py +++ b/ansible/roles/kolla-openstack/molecule/enable-everything/tests/test_default.py @@ -48,6 +48,7 @@ testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( 'neutron', 'nova', 'sahara', + 'storm', 'swift', 'zookeeper']) def test_service_config_directory(host, path): diff --git a/ansible/roles/kolla-openstack/vars/main.yml b/ansible/roles/kolla-openstack/vars/main.yml index 4dca83621..90516962a 100644 --- a/ansible/roles/kolla-openstack/vars/main.yml +++ b/ansible/roles/kolla-openstack/vars/main.yml @@ -59,6 +59,11 @@ kolla_openstack_custom_config: dest: "{{ kolla_node_custom_config_path }}/influxdb" patterns: "*" enabled: "{{ kolla_enable_influxdb }}" + # Storm. + - src: "{{ kolla_extra_config_path }}/storm" + dest: "{{ kolla_node_custom_config_path }}/storm" + patterns: "*" + enabled: "{{ kolla_enable_storm }}" # Ironic. - src: "{{ kolla_extra_config_path }}/ironic" dest: "{{ kolla_node_custom_config_path }}/ironic" diff --git a/etc/kayobe/kolla.yml b/etc/kayobe/kolla.yml index 3b208b342..f89aca1e9 100644 --- a/etc/kayobe/kolla.yml +++ b/etc/kayobe/kolla.yml @@ -224,6 +224,7 @@ #kolla_enable_senlin: #kolla_enable_skydive: #kolla_enable_solum: +#kolla_enable_storm: #kolla_enable_swift: #kolla_enable_tacker: #kolla_enable_telegraf: diff --git a/releasenotes/notes/add-storm-5d29163b61ef01ce.yaml b/releasenotes/notes/add-storm-5d29163b61ef01ce.yaml new file mode 100644 index 000000000..d4664a17f --- /dev/null +++ b/releasenotes/notes/add-storm-5d29163b61ef01ce.yaml @@ -0,0 +1,4 @@ +--- +features: + - Add support for deploying Apache Storm which is used by Monasca + for alerting.