From 66ea6e099fc8718a8b124b513c9388ea90f64b68 Mon Sep 17 00:00:00 2001
From: gugug <gu.jin@99cloud.net>
Date: Thu, 11 Jun 2020 09:34:01 +0800
Subject: [PATCH] Remove mongodb integration

more info: https://opendev.org/openstack/kolla-ansible/commit/a6c97d7284c7de437ebfc9f8ee289244f29e65d7

Change-Id: I778d472cc7f6ca19852482a3e309d793973d75a6
Co-Authored-By: jacky06 <zhang.min@99cloud.net>
---
 README.rst                                    |  1 -
 ansible/group_vars/all.yml                    |  4 --
 ansible/inventory/all-in-one                  |  3 --
 ansible/inventory/multinode                   |  3 --
 ansible/roles/common/defaults/main.yml        |  2 -
 ansible/roles/common/tasks/config.yml         |  1 -
 .../templates/cron-logrotate-mongodb.conf.j2  |  3 --
 ansible/roles/common/templates/cron.json.j2   |  1 -
 ansible/roles/haproxy/tasks/precheck.yml      | 13 ------
 ansible/roles/mongodb/defaults/main.yml       | 41 -----------------
 ansible/roles/mongodb/handlers/main.yml       | 35 --------------
 ansible/roles/mongodb/meta/main.yml           |  3 --
 ansible/roles/mongodb/tasks/bootstrap.yml     | 18 --------
 .../roles/mongodb/tasks/bootstrap_cluster.yml | 26 -----------
 .../roles/mongodb/tasks/check-containers.yml  | 17 -------
 ansible/roles/mongodb/tasks/check.yml         |  1 -
 ansible/roles/mongodb/tasks/config.yml        | 46 -------------------
 .../roles/mongodb/tasks/deploy-containers.yml |  2 -
 ansible/roles/mongodb/tasks/deploy.yml        |  7 ---
 ansible/roles/mongodb/tasks/loadbalancer.yml  |  7 ---
 ansible/roles/mongodb/tasks/main.yml          |  8 ----
 ansible/roles/mongodb/tasks/precheck.yml      | 35 --------------
 ansible/roles/mongodb/tasks/pull.yml          | 11 -----
 ansible/roles/mongodb/tasks/reconfigure.yml   |  2 -
 ansible/roles/mongodb/tasks/stop.yml          |  6 ---
 ansible/roles/mongodb/tasks/upgrade.yml       |  5 --
 .../mongodb/templates/bootstrap_cluster.js.j2 | 14 ------
 .../roles/mongodb/templates/mongodb.conf.j2   | 17 -------
 .../roles/mongodb/templates/mongodb.json.j2   | 23 ----------
 ansible/site.yml                              | 17 -------
 etc/kolla/globals.yml                         |  1 -
 .../remove-mongodb-fcdfba997e1abb51.yaml      |  4 ++
 tests/templates/inventory.j2                  |  3 --
 33 files changed, 4 insertions(+), 376 deletions(-)
 delete mode 100644 ansible/roles/common/templates/cron-logrotate-mongodb.conf.j2
 delete mode 100644 ansible/roles/mongodb/defaults/main.yml
 delete mode 100644 ansible/roles/mongodb/handlers/main.yml
 delete mode 100644 ansible/roles/mongodb/meta/main.yml
 delete mode 100644 ansible/roles/mongodb/tasks/bootstrap.yml
 delete mode 100644 ansible/roles/mongodb/tasks/bootstrap_cluster.yml
 delete mode 100644 ansible/roles/mongodb/tasks/check-containers.yml
 delete mode 100644 ansible/roles/mongodb/tasks/check.yml
 delete mode 100644 ansible/roles/mongodb/tasks/config.yml
 delete mode 100644 ansible/roles/mongodb/tasks/deploy-containers.yml
 delete mode 100644 ansible/roles/mongodb/tasks/deploy.yml
 delete mode 100644 ansible/roles/mongodb/tasks/loadbalancer.yml
 delete mode 100644 ansible/roles/mongodb/tasks/main.yml
 delete mode 100644 ansible/roles/mongodb/tasks/precheck.yml
 delete mode 100644 ansible/roles/mongodb/tasks/pull.yml
 delete mode 100644 ansible/roles/mongodb/tasks/reconfigure.yml
 delete mode 100644 ansible/roles/mongodb/tasks/stop.yml
 delete mode 100644 ansible/roles/mongodb/tasks/upgrade.yml
 delete mode 100644 ansible/roles/mongodb/templates/bootstrap_cluster.js.j2
 delete mode 100644 ansible/roles/mongodb/templates/mongodb.conf.j2
 delete mode 100644 ansible/roles/mongodb/templates/mongodb.json.j2
 create mode 100644 releasenotes/notes/remove-mongodb-fcdfba997e1abb51.yaml

diff --git a/README.rst b/README.rst
index a5665b7812..6f407d66bb 100644
--- a/README.rst
+++ b/README.rst
@@ -105,7 +105,6 @@ Kolla-Ansible deploys containers for the following infrastructure components:
 - `MariaDB and Galera Cluster <https://mariadb.com/kb/en/mariadb/galera-cluster/>`__
   for highly available MySQL databases.
 - `Memcached <https://memcached.org/>`__ a distributed memory object caching system.
-- `MongoDB <https://www.mongodb.org/>`__ as a database back end for Panko.
 - `Open vSwitch <https://openvswitch.org/>`__ and Linuxbridge backends for Neutron.
 - `RabbitMQ <https://www.rabbitmq.com/>`__ as a messaging backend for
   communication between services.
diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml
index 519c0080bd..86b68b7581 100644
--- a/ansible/group_vars/all.yml
+++ b/ansible/group_vars/all.yml
@@ -350,9 +350,6 @@ monasca_agent_forwarder_port: "17123"
 monasca_agent_statsd_port: "8125"
 monasca_grafana_server_port: "3001"
 
-mongodb_port: "27017"
-mongodb_web_port: "28017"
-
 murano_api_port: "8082"
 
 neutron_internal_fqdn: "{{ kolla_internal_fqdn }}"
@@ -627,7 +624,6 @@ enable_mariabackup: "no"
 enable_masakari: "no"
 enable_mistral: "no"
 enable_monasca: "no"
-enable_mongodb: "no"
 enable_multipathd: "no"
 enable_murano: "no"
 enable_neutron_vpnaas: "no"
diff --git a/ansible/inventory/all-in-one b/ansible/inventory/all-in-one
index bc0022f76e..7e79458062 100644
--- a/ansible/inventory/all-in-one
+++ b/ansible/inventory/all-in-one
@@ -101,9 +101,6 @@ monitoring
 [storm:children]
 monitoring
 
-[mongodb:children]
-control
-
 [keystone:children]
 control
 
diff --git a/ansible/inventory/multinode b/ansible/inventory/multinode
index 19b9fe2590..3efd784b6c 100644
--- a/ansible/inventory/multinode
+++ b/ansible/inventory/multinode
@@ -126,9 +126,6 @@ monitoring
 [storm:children]
 monitoring
 
-[mongodb:children]
-control
-
 [keystone:children]
 control
 
diff --git a/ansible/roles/common/defaults/main.yml b/ansible/roles/common/defaults/main.yml
index 7952b5f7ee..f274e7b3e7 100644
--- a/ansible/roles/common/defaults/main.yml
+++ b/ansible/roles/common/defaults/main.yml
@@ -154,8 +154,6 @@ fluentd_input_openstack_services:
     enabled: "{{ enable_mistral | bool }}"
   - name: monasca
     enabled: "{{ enable_monasca | bool }}"
-  - name: mongodb
-    enabled: "{{ enable_mongodb | bool }}"
   - name: murano
     enabled: "{{ enable_murano | bool }}"
   - name: neutron
diff --git a/ansible/roles/common/tasks/config.yml b/ansible/roles/common/tasks/config.yml
index 31bb143b48..a1bbc23ec8 100644
--- a/ansible/roles/common/tasks/config.yml
+++ b/ansible/roles/common/tasks/config.yml
@@ -317,7 +317,6 @@
     - { name: "masakari", enabled: "{{ enable_masakari }}" }
     - { name: "mistral", enabled: "{{ enable_mistral }}" }
     - { name: "monasca", enabled: "{{ enable_monasca }}" }
-    - { name: "mongodb", enabled: "{{ enable_mongodb }}" }
     - { name: "murano", enabled: "{{ enable_murano }}" }
     - { name: "neutron", enabled: "{{ enable_neutron }}" }
     - { name: "nova", enabled: "{{ enable_nova }}" }
diff --git a/ansible/roles/common/templates/cron-logrotate-mongodb.conf.j2 b/ansible/roles/common/templates/cron-logrotate-mongodb.conf.j2
deleted file mode 100644
index 3fd51be1a0..0000000000
--- a/ansible/roles/common/templates/cron-logrotate-mongodb.conf.j2
+++ /dev/null
@@ -1,3 +0,0 @@
-"/var/log/kolla/mongodb/*.log"
-{
-}
diff --git a/ansible/roles/common/templates/cron.json.j2 b/ansible/roles/common/templates/cron.json.j2
index b050437e32..46e8de9aef 100644
--- a/ansible/roles/common/templates/cron.json.j2
+++ b/ansible/roles/common/templates/cron.json.j2
@@ -38,7 +38,6 @@
     ( 'masakari', enable_masakari ),
     ( 'mistral', enable_mistral ),
     ( 'monasca', enable_monasca ),
-    ( 'mongodb', enable_mongodb ),
     ( 'murano', enable_murano ),
     ( 'neutron', enable_neutron ),
     ( 'nova', enable_nova ),
diff --git a/ansible/roles/haproxy/tasks/precheck.yml b/ansible/roles/haproxy/tasks/precheck.yml
index 585f9972e3..c80c972b16 100644
--- a/ansible/roles/haproxy/tasks/precheck.yml
+++ b/ansible/roles/haproxy/tasks/precheck.yml
@@ -610,19 +610,6 @@
     - haproxy_stat.find('monasca_grafana_server_external') == -1
     - haproxy_vip_prechecks
 
-- name: Checking free port for Mongodb HAProxy
-  wait_for:
-    host: "{{ kolla_internal_vip_address }}"
-    port: "{{ mongodb_port }}"
-    connect_timeout: 1
-    timeout: 1
-    state: stopped
-  when:
-    - enable_mongodb | bool
-    - inventory_hostname in groups['haproxy']
-    - haproxy_stat.find('mongodb') == -1
-    - haproxy_vip_prechecks
-
 - name: Checking free port for Murano API HAProxy
   wait_for:
     host: "{{ kolla_internal_vip_address }}"
diff --git a/ansible/roles/mongodb/defaults/main.yml b/ansible/roles/mongodb/defaults/main.yml
deleted file mode 100644
index a7c61ddb6e..0000000000
--- a/ansible/roles/mongodb/defaults/main.yml
+++ /dev/null
@@ -1,41 +0,0 @@
----
-project_name: "mongodb"
-
-mongodb_services:
-  mongodb:
-    container_name: mongodb
-    group: mongodb
-    enabled: true
-    privileged: True
-    image: "{{ mongodb_image_full }}"
-    volumes: "{{ mongodb_default_volumes + mongodb_extra_volumes }}"
-    dimensions: "{{ mongodb_dimensions }}"
-    haproxy:
-      mongodb:
-        enabled: "{{ enable_mongodb }}"
-        mode: "http"
-        external: false
-        port: "{{ mongodb_port }}"
-
-
-####################
-# Docker
-####################
-mongodb_install_type: "{{ kolla_install_type }}"
-mongodb_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ mongodb_install_type }}-mongodb"
-mongodb_tag: "{{ openstack_tag }}"
-mongodb_image_full: "{{ mongodb_image }}:{{ mongodb_tag }}"
-mongodb_dimensions: "{{ default_container_dimensions }}"
-
-mongodb_default_volumes:
-  - "{{ node_config_directory }}/mongodb/:{{ container_config_directory }}/:ro"
-  - "/etc/localtime:/etc/localtime:ro"
-  - "{{ '/etc/timezone:/etc/timezone:ro' if kolla_base_distro in ['debian', 'ubuntu'] else '' }}"
-  - "kolla_logs:/var/log/kolla/"
-  - "mongodb:/var/lib/mongodb"
-mongodb_extra_volumes: "{{ default_extra_volumes }}"
-
-####################
-# Mongodb
-####################
-mongodb_replication_set_name: "rs0"
diff --git a/ansible/roles/mongodb/handlers/main.yml b/ansible/roles/mongodb/handlers/main.yml
deleted file mode 100644
index 60b1159382..0000000000
--- a/ansible/roles/mongodb/handlers/main.yml
+++ /dev/null
@@ -1,35 +0,0 @@
----
-- name: Restart mongodb container
-  vars:
-    service_name: "mongodb"
-    service: "{{ mongodb_services[service_name] }}"
-  become: true
-  kolla_docker:
-    action: "recreate_or_restart_container"
-    common_options: "{{ docker_common_options }}"
-    name: "{{ service.container_name }}"
-    image: "{{ service.image }}"
-    privileged: "{{ service.privileged | default(False) }}"
-    volumes: "{{ service.volumes }}"
-    dimensions: "{{ service.dimensions }}"
-  when:
-    - kolla_action != "config"
-  notify:
-    - Waiting for the mongodb startup
-    - Checking current replication status
-    - Bootstrap cluster
-
-- name: Waiting for the mongodb startup
-  wait_for: host={{ 'api' | kolla_address }} port={{ mongodb_port }}
-
-- name: Checking current replication status
-  become: true
-  command: "docker exec -t mongodb mongo --host {{ 'api' | kolla_address }} --port {{ mongodb_port }} --quiet --eval rs.status().ok"
-  register: mongodb_replication_status
-  changed_when: false
-  delegate_to: "{{ groups['mongodb'][0] }}"
-  run_once: True
-
-- name: Bootstrap cluster
-  include_tasks: bootstrap_cluster.yml
-  when: mongodb_replication_status.stdout != "1"
diff --git a/ansible/roles/mongodb/meta/main.yml b/ansible/roles/mongodb/meta/main.yml
deleted file mode 100644
index 6b4fff8fef..0000000000
--- a/ansible/roles/mongodb/meta/main.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-dependencies:
-  - { role: common }
diff --git a/ansible/roles/mongodb/tasks/bootstrap.yml b/ansible/roles/mongodb/tasks/bootstrap.yml
deleted file mode 100644
index c899eb07c6..0000000000
--- a/ansible/roles/mongodb/tasks/bootstrap.yml
+++ /dev/null
@@ -1,18 +0,0 @@
----
-- name: Starting mongodb bootstrap container
-  become: true
-  kolla_docker:
-    action: "start_container"
-    common_options: "{{ docker_common_options }}"
-    detach: False
-    environment:
-      KOLLA_BOOTSTRAP:
-      KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
-    image: "{{ mongodb_image_full }}"
-    name: "bootstrap_mongodb"
-    restart_policy: no
-    volumes:
-      - "{{ node_config_directory }}/mongodb/:{{ container_config_directory }}/:ro"
-      - "/etc/localtime:/etc/localtime:ro"
-      - "kolla_logs:/var/log/kolla/"
-      - "mongodb:/var/lib/mongodb/"
diff --git a/ansible/roles/mongodb/tasks/bootstrap_cluster.yml b/ansible/roles/mongodb/tasks/bootstrap_cluster.yml
deleted file mode 100644
index 34b016e83a..0000000000
--- a/ansible/roles/mongodb/tasks/bootstrap_cluster.yml
+++ /dev/null
@@ -1,26 +0,0 @@
----
-- name: Copying the mongodb replication set bootstrap script
-  template:
-    src: bootstrap_cluster.js.j2
-    dest: /tmp/mongodb_bootstrap_replication_set.js
-  delegate_to: localhost
-  run_once: True
-
-- name: Bootstrapping the mongodb replication set
-  become: true
-  command: >
-    docker exec -t mongodb mongo --host {{ api_interface_address }} --port {{ mongodb_port }} --quiet --eval
-    '{{ lookup('file','/tmp/mongodb_bootstrap_replication_set.js') }}'
-  register: bootstrap_mongodb_cluster
-  failed_when: (bootstrap_mongodb_cluster.stdout|from_json).ok != 1
-  delegate_to: "{{ groups['mongodb'][0] }}"
-  run_once: True
-
-- name: Deleting the mongodb replication set bootstrap script
-  file:
-    path: /tmp/mongodb_bootstrap_replication_set.js
-    state: absent
-  delegate_to: localhost
-  changed_when: false
-  failed_when: false
-  run_once: True
diff --git a/ansible/roles/mongodb/tasks/check-containers.yml b/ansible/roles/mongodb/tasks/check-containers.yml
deleted file mode 100644
index b2b2e559cc..0000000000
--- a/ansible/roles/mongodb/tasks/check-containers.yml
+++ /dev/null
@@ -1,17 +0,0 @@
----
-- name: Check mongodb 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 }}"
-  when:
-    - inventory_hostname in groups[item.value.group]
-    - item.value.enabled | bool
-  with_dict: "{{ mongodb_services }}"
-  notify:
-    - Restart mongodb container
diff --git a/ansible/roles/mongodb/tasks/check.yml b/ansible/roles/mongodb/tasks/check.yml
deleted file mode 100644
index ed97d539c0..0000000000
--- a/ansible/roles/mongodb/tasks/check.yml
+++ /dev/null
@@ -1 +0,0 @@
----
diff --git a/ansible/roles/mongodb/tasks/config.yml b/ansible/roles/mongodb/tasks/config.yml
deleted file mode 100644
index 2ae9ab4722..0000000000
--- a/ansible/roles/mongodb/tasks/config.yml
+++ /dev/null
@@ -1,46 +0,0 @@
----
-- name: Ensuring config directories exist
-  file:
-    path: "{{ node_config_directory }}/{{ item.key }}"
-    state: "directory"
-    owner: "{{ config_owner_user }}"
-    group: "{{ config_owner_group }}"
-    mode: "0770"
-  become: true
-  when:
-    - inventory_hostname in groups[item.value.group]
-    - item.value.enabled | bool
-  with_dict: "{{ mongodb_services }}"
-
-- name: Copying over config.json files for services
-  template:
-    src: "{{ item.key }}.json.j2"
-    dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
-    mode: "0660"
-  become: true
-  when:
-    - inventory_hostname in groups[item.value.group]
-    - item.value.enabled | bool
-  with_dict: "{{ mongodb_services }}"
-  notify:
-    - Restart mongodb container
-
-- name: Copying over mongodb.conf
-  merge_yaml:
-    sources:
-      - "{{ role_path }}/templates/{{ item.key }}.conf.j2"
-      - "{{ node_custom_config }}/mongodb.conf"
-      - "{{ node_custom_config }}/mongodb/{{ item.key }}.conf"
-      - "{{ node_custom_config }}/mongodb/{{ inventory_hostname }}/{{ item.key }}.conf"
-    dest: "{{ node_config_directory }}/mongodb/{{ item.key }}.conf"
-    mode: "0660"
-  become: true
-  when:
-    - inventory_hostname in groups[item.value.group]
-    - item.value.enabled | bool
-  with_dict: "{{ mongodb_services }}"
-  notify:
-    - Restart mongodb container
-
-- include_tasks: check-containers.yml
-  when: kolla_action != "config"
diff --git a/ansible/roles/mongodb/tasks/deploy-containers.yml b/ansible/roles/mongodb/tasks/deploy-containers.yml
deleted file mode 100644
index eb24ab5c7a..0000000000
--- a/ansible/roles/mongodb/tasks/deploy-containers.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-- import_tasks: check-containers.yml
diff --git a/ansible/roles/mongodb/tasks/deploy.yml b/ansible/roles/mongodb/tasks/deploy.yml
deleted file mode 100644
index 6f6feecec0..0000000000
--- a/ansible/roles/mongodb/tasks/deploy.yml
+++ /dev/null
@@ -1,7 +0,0 @@
----
-- include_tasks: config.yml
-
-- include_tasks: bootstrap.yml
-
-- name: Flush handlers
-  meta: flush_handlers
diff --git a/ansible/roles/mongodb/tasks/loadbalancer.yml b/ansible/roles/mongodb/tasks/loadbalancer.yml
deleted file mode 100644
index 6b04bf10d6..0000000000
--- a/ansible/roles/mongodb/tasks/loadbalancer.yml
+++ /dev/null
@@ -1,7 +0,0 @@
----
-- name: "Configure haproxy for {{ project_name }}"
-  import_role:
-    name: haproxy-config
-  vars:
-    project_services: "{{ mongodb_services }}"
-  tags: always
diff --git a/ansible/roles/mongodb/tasks/main.yml b/ansible/roles/mongodb/tasks/main.yml
deleted file mode 100644
index a33a2c355b..0000000000
--- a/ansible/roles/mongodb/tasks/main.yml
+++ /dev/null
@@ -1,8 +0,0 @@
----
-- name: Warn about deprecation
-  debug:
-    msg: >
-      MongoDB deployment role is deprecated in Ussuri and will be removed in
-      Victoria. Please read release notes for more background.
-
-- include_tasks: "{{ kolla_action }}.yml"
diff --git a/ansible/roles/mongodb/tasks/precheck.yml b/ansible/roles/mongodb/tasks/precheck.yml
deleted file mode 100644
index 6451f1b53c..0000000000
--- a/ansible/roles/mongodb/tasks/precheck.yml
+++ /dev/null
@@ -1,35 +0,0 @@
----
-- import_role:
-    name: service-precheck
-  vars:
-    service_precheck_services: "{{ mongodb_services }}"
-    service_name: "{{ project_name }}"
-
-- name: Get container facts
-  become: true
-  kolla_container_facts:
-    name:
-      - mongodb
-  register: container_facts
-
-- name: Checking free port for Mongodb
-  wait_for:
-    host: "{{ api_interface_address }}"
-    port: "{{ mongodb_port }}"
-    connect_timeout: 1
-    timeout: 1
-    state: stopped
-  when:
-    - container_facts['mongodb'] is not defined
-    - inventory_hostname in groups['mongodb']
-
-- name: Checking free port for Mongodb Web
-  wait_for:
-    host: "{{ api_interface_address }}"
-    port: "{{ mongodb_web_port }}"
-    connect_timeout: 1
-    timeout: 1
-    state: stopped
-  when:
-    - container_facts['mongodb'] is not defined
-    - inventory_hostname in groups['mongodb']
diff --git a/ansible/roles/mongodb/tasks/pull.yml b/ansible/roles/mongodb/tasks/pull.yml
deleted file mode 100644
index 932538c72a..0000000000
--- a/ansible/roles/mongodb/tasks/pull.yml
+++ /dev/null
@@ -1,11 +0,0 @@
----
-- name: Pulling mongodb image
-  become: true
-  kolla_docker:
-    action: "pull_image"
-    common_options: "{{ docker_common_options }}"
-    image: "{{ item.value.image }}"
-  when:
-    - inventory_hostname in groups[item.value.group]
-    - item.value.enabled | bool
-  with_dict: "{{ mongodb_services }}"
diff --git a/ansible/roles/mongodb/tasks/reconfigure.yml b/ansible/roles/mongodb/tasks/reconfigure.yml
deleted file mode 100644
index f670a5b78d..0000000000
--- a/ansible/roles/mongodb/tasks/reconfigure.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-- include_tasks: deploy.yml
diff --git a/ansible/roles/mongodb/tasks/stop.yml b/ansible/roles/mongodb/tasks/stop.yml
deleted file mode 100644
index b1085e166e..0000000000
--- a/ansible/roles/mongodb/tasks/stop.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-- import_role:
-    name: service-stop
-  vars:
-    project_services: "{{ mongodb_services }}"
-    service_name: "{{ project_name }}"
diff --git a/ansible/roles/mongodb/tasks/upgrade.yml b/ansible/roles/mongodb/tasks/upgrade.yml
deleted file mode 100644
index 375dcad19b..0000000000
--- a/ansible/roles/mongodb/tasks/upgrade.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-- include_tasks: config.yml
-
-- name: Flush handlers
-  meta: flush_handlers
diff --git a/ansible/roles/mongodb/templates/bootstrap_cluster.js.j2 b/ansible/roles/mongodb/templates/bootstrap_cluster.js.j2
deleted file mode 100644
index d2bef661d3..0000000000
--- a/ansible/roles/mongodb/templates/bootstrap_cluster.js.j2
+++ /dev/null
@@ -1,14 +0,0 @@
-printjson(rs.initiate(
-  {
-    "_id" : "{{ mongodb_replication_set_name }}",
-    "version" : 1,
-    "members" : [
-      {% for host in groups["mongodb"] %}
-      {
-        "_id" : {{ loop.index }},
-        "host" : "{{ 'api' | kolla_address(host) | put_address_in_context('url') }}:{{ mongodb_port }}"
-      }{% if not loop.last %},{% endif %}
-      {% endfor %}
-    ]
-  }
-))
diff --git a/ansible/roles/mongodb/templates/mongodb.conf.j2 b/ansible/roles/mongodb/templates/mongodb.conf.j2
deleted file mode 100644
index 2fe1ae3dfb..0000000000
--- a/ansible/roles/mongodb/templates/mongodb.conf.j2
+++ /dev/null
@@ -1,17 +0,0 @@
-systemLog:
-  destination: file
-  logAppend: true
-  path: /var/log/kolla/mongodb/mongodb.log
-
-storage:
-  dbPath: /var/lib/mongodb
-  # Enable journaling, http://www.mongodb.org/display/DOCS/Journaling
-  journal:
-    enabled: true
-
-net:
-  bindIp: {{ api_interface_address }}
-  port: {{ mongodb_port }}
-
-replication:
-  replSetName: {{ mongodb_replication_set_name }}
diff --git a/ansible/roles/mongodb/templates/mongodb.json.j2 b/ansible/roles/mongodb/templates/mongodb.json.j2
deleted file mode 100644
index edb530ee23..0000000000
--- a/ansible/roles/mongodb/templates/mongodb.json.j2
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "command": "/usr/bin/mongod --unixSocketPrefix=/var/run/mongodb --config /etc/mongodb.conf run",
-    "config_files": [
-        {
-            "source": "{{ container_config_directory }}/mongodb.conf",
-            "dest": "/etc/mongodb.conf",
-            "owner": "mongodb",
-            "perm": "0600"
-        }
-    ],
-    "permissions": [
-        {
-            "path": "/var/lib/mongodb",
-            "owner": "mongodb:mongodb",
-            "recurse": true
-        },
-        {
-            "path": "/var/log/kolla/mongodb",
-            "owner": "mongodb:mongodb",
-            "recurse": true
-        }
-    ]
-}
diff --git a/ansible/site.yml b/ansible/site.yml
index 04bc20cf0e..bba0df1b4a 100644
--- a/ansible/site.yml
+++ b/ansible/site.yml
@@ -52,7 +52,6 @@
         - enable_memcached_{{ enable_memcached | bool }}
         - enable_mistral_{{ enable_mistral | bool }}
         - enable_monasca_{{ enable_monasca | bool }}
-        - enable_mongodb_{{ enable_mongodb | bool }}
         - enable_multipathd_{{ enable_multipathd | bool }}
         - enable_murano_{{ enable_murano | bool }}
         - enable_neutron_{{ enable_neutron | bool }}
@@ -253,11 +252,6 @@
             tasks_from: loadbalancer
           tags: monasca
           when: enable_monasca | bool
-        - include_role:
-            name: mongodb
-            tasks_from: loadbalancer
-          tags: mongodb
-          when: enable_mongodb | bool
         - include_role:
             name: murano
             tasks_from: loadbalancer
@@ -864,17 +858,6 @@
         tags: sahara,
         when: enable_sahara | bool }
 
-- name: Apply role mongodb
-  gather_facts: false
-  hosts:
-    - mongodb
-    - '&enable_mongodb_True'
-  serial: '{{ kolla_serial|default("0") }}'
-  roles:
-    - { role: mongodb,
-        tags: mongodb,
-        when: enable_mongodb | bool }
-
 - name: Apply role panko
   gather_facts: false
   hosts:
diff --git a/etc/kolla/globals.yml b/etc/kolla/globals.yml
index 48da36ba7b..24d7034b4b 100644
--- a/etc/kolla/globals.yml
+++ b/etc/kolla/globals.yml
@@ -313,7 +313,6 @@
 #enable_masakari: "no"
 #enable_mistral: "no"
 #enable_monasca: "no"
-#enable_mongodb: "no"
 #enable_multipathd: "no"
 #enable_murano: "no"
 #enable_neutron_vpnaas: "no"
diff --git a/releasenotes/notes/remove-mongodb-fcdfba997e1abb51.yaml b/releasenotes/notes/remove-mongodb-fcdfba997e1abb51.yaml
new file mode 100644
index 0000000000..32212b96bd
--- /dev/null
+++ b/releasenotes/notes/remove-mongodb-fcdfba997e1abb51.yaml
@@ -0,0 +1,4 @@
+---
+upgrade:
+  - |
+    Support for deploying with mongodb integrations has been removed.
diff --git a/tests/templates/inventory.j2 b/tests/templates/inventory.j2
index 28b554914c..ae28601d81 100644
--- a/tests/templates/inventory.j2
+++ b/tests/templates/inventory.j2
@@ -140,9 +140,6 @@ monitoring
 [storm:children]
 monitoring
 
-[mongodb:children]
-control
-
 [keystone:children]
 control