diff --git a/Vagrantfile b/Vagrantfile
index dde4b30893..85e9478ab2 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -88,7 +88,6 @@ ansible_provision = proc do |ansible|
   if DOCKER then
     ansible.extra_vars = ansible.extra_vars.merge({
       containerized_deployment: 'true',
-      monitor_interface: ETH,
       ceph_mon_docker_subnet: ansible.extra_vars[:public_network],
       devices: settings['disks'],
       radosgw_interface: ETH,
@@ -97,7 +96,6 @@ ansible_provision = proc do |ansible|
   else
     ansible.extra_vars = ansible.extra_vars.merge({
       devices: settings['disks'],
-      monitor_interface: ETH,
       radosgw_interface: ETH,
       os_tuning_params: settings['os_tuning_params'],
     })
@@ -105,8 +103,6 @@ ansible_provision = proc do |ansible|
 
   if BOX == 'linode' then
     ansible.sudo = true
-    # Use monitor_address_block instead of monitor_interface:
-    ansible.extra_vars.delete(:monitor_interface)
     # Use radosgw_address_block instead of radosgw_interface:
     ansible.extra_vars.delete(:radosgw_interface)
     ansible.extra_vars = ansible.extra_vars.merge({
diff --git a/docs/source/index.rst b/docs/source/index.rst
index 1d20060d6d..71b2ce8603 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -228,7 +228,6 @@ An example configuration that deploys the upstream ``octopus`` version of Ceph w
    ceph_repository: community
    public_network: "192.168.3.0/24"
    cluster_network: "192.168.4.0/24"
-   monitor_interface: eth1
    devices:
      - '/dev/sda'
      - '/dev/sdb'
@@ -238,7 +237,6 @@ selection or other aspects of your cluster.
 
 - ``ceph_origin``
 - ``public_network``
-- ``monitor_interface`` or ``monitor_address``
 
 
 When deploying RGW instance(s) you are required to set the ``radosgw_interface`` or ``radosgw_address`` config option.
diff --git a/docs/source/testing/scenarios.rst b/docs/source/testing/scenarios.rst
index 185f994633..c05d91899a 100644
--- a/docs/source/testing/scenarios.rst
+++ b/docs/source/testing/scenarios.rst
@@ -130,15 +130,15 @@ way so that a vagrant environment can be isolated to the given scenario.
 The ``hosts`` file should contain the hosts needed for the scenario. This might
 seem a bit repetitive since machines are already defined in
 :ref:`vagrant_variables` but it allows granular changes to hosts (for example
-defining an interface vs. an IP on a monitor) which can help catch issues in
+defining different public_network values between monitors) which can help catch issues in
 ``ceph-ansible`` configuration. For example:
 
 .. code-block:: ini
 
    [mons]
-   mon0 monitor_address=192.168.5.10
-   mon1 monitor_address=192.168.5.11
-   mon2 monitor_interface=eth1
+   mon0 public_network=192.168.1.0/24
+   mon1 public_network=192.168.2.0/24
+   mon2 public_network=192.168.3.0/24
 
 .. _group_vars:
 
diff --git a/group_vars/all.yml.sample b/group_vars/all.yml.sample
index d596d53a72..77d3536d1d 100644
--- a/group_vars/all.yml.sample
+++ b/group_vars/all.yml.sample
@@ -311,14 +311,6 @@ dummy:
 #rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
 
 ## Monitor options
-#
-# You must define either monitor_interface, monitor_address or monitor_address_block.
-# These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
-# Eg. If you want to specify for each monitor which address the monitor will bind to you can set it in your **inventory host file** by using 'monitor_address' variable.
-# Preference will go to monitor_address if both monitor_address and monitor_interface are defined.
-#monitor_interface: interface
-#monitor_address: x.x.x.x
-#monitor_address_block: subnet
 # set to either ipv4 or ipv6, whichever your network is using
 #ip_version: ipv4
 
diff --git a/infrastructure-playbooks/cephadm.yml b/infrastructure-playbooks/cephadm.yml
index 95c3896da9..b08e7f21d8 100644
--- a/infrastructure-playbooks/cephadm.yml
+++ b/infrastructure-playbooks/cephadm.yml
@@ -30,15 +30,6 @@
       run_once: true
       when: groups[mgr_group_name] is undefined or groups[mgr_group_name] | length == 0
 
-    - name: Validate monitor network configuration
-      ansible.builtin.fail:
-        msg: "Either monitor_address, monitor_address_block or monitor_interface must be provided"
-      when:
-        - mon_group_name in group_names
-        - monitor_address == 'x.x.x.x'
-        - monitor_address_block == 'subnet'
-        - monitor_interface == 'interface'
-
     - name: Validate dashboard configuration
       when: dashboard_enabled | bool
       run_once: true
@@ -158,7 +149,7 @@
 
     - name: Bootstrap the new cluster
       cephadm_bootstrap:
-        mon_ip: "{{ _current_monitor_address }}"
+        mon_ip: "{{ _monitor_addresses[inventory_hostname] }}"
         image: "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
         docker: "{{ true if container_binary == 'docker' else false }}"
         pull: false
diff --git a/infrastructure-playbooks/rolling_update.yml b/infrastructure-playbooks/rolling_update.yml
index de0a08cf38..7d75fa581a 100644
--- a/infrastructure-playbooks/rolling_update.yml
+++ b/infrastructure-playbooks/rolling_update.yml
@@ -304,7 +304,7 @@
           delegate_facts: true
 
         - name: Non container | waiting for the monitor to join the quorum...
-          ansible.builtin.command: ceph --cluster "{{ cluster }}" -m "{{ hostvars[groups[mon_group_name][0]]['_current_monitor_address'] }}" quorum_status --format json
+          ansible.builtin.command: ceph --cluster "{{ cluster }}" -m "{{ _monitor_addresses[groups['mons'][0]] }}" quorum_status --format json
           register: ceph_health_raw
           until:
             - ceph_health_raw.rc == 0
@@ -317,7 +317,7 @@
 
         - name: Container | waiting for the containerized monitor to join the quorum...
           ansible.builtin.command: >
-            {{ container_binary }} exec ceph-mon-{{ ansible_facts['hostname'] }} ceph --cluster "{{ cluster }}" -m "{{ hostvars[groups[mon_group_name][0]]['_current_monitor_address'] }}" quorum_status --format json
+            {{ container_binary }} exec ceph-mon-{{ ansible_facts['hostname'] }} ceph --cluster "{{ cluster }}" -m "{{ _monitor_addresses[hostvars[groups['mons'][0]['inventory_hostname']]] }}" quorum_status --format json
           register: ceph_health_raw
           until:
             - ceph_health_raw.rc == 0
diff --git a/roles/ceph-config/templates/ceph.conf.j2 b/roles/ceph-config/templates/ceph.conf.j2
index af5d1cb5de..c68908b415 100644
--- a/roles/ceph-config/templates/ceph.conf.j2
+++ b/roles/ceph-config/templates/ceph.conf.j2
@@ -13,11 +13,11 @@ auth client required = none
 
 fsid = {{ fsid }}
 mon host = {% if nb_mon > 0 %}
-{% for host in _monitor_addresses -%}
+{% for name, addr in _monitor_addresses.items() -%}
 {% if mon_host_v1.enabled | bool %}
-{% set _v1 = ',v1:' + host.addr + mon_host_v1.suffix %}
+{% set _v1 = ',v1:' + addr + mon_host_v1.suffix %}
 {% endif %}
-[{{ "v2:" + host.addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
+[{{ "v2:" + addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
 {%- if not loop.last -%},{%- endif %}
 {%- endfor %}
 {% elif nb_mon == 0 %}
diff --git a/roles/ceph-defaults/defaults/main.yml b/roles/ceph-defaults/defaults/main.yml
index 0b8e339a6a..79ef487dee 100644
--- a/roles/ceph-defaults/defaults/main.yml
+++ b/roles/ceph-defaults/defaults/main.yml
@@ -303,14 +303,6 @@ rbd_client_log_file: "{{ rbd_client_log_path }}/qemu-guest-$pid.log" # must be w
 rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
 
 ## Monitor options
-#
-# You must define either monitor_interface, monitor_address or monitor_address_block.
-# These variables must be defined at least in all.yml and overrided if needed (inventory host file or group_vars/*.yml).
-# Eg. If you want to specify for each monitor which address the monitor will bind to you can set it in your **inventory host file** by using 'monitor_address' variable.
-# Preference will go to monitor_address if both monitor_address and monitor_interface are defined.
-monitor_interface: interface
-monitor_address: x.x.x.x
-monitor_address_block: subnet
 # set to either ipv4 or ipv6, whichever your network is using
 ip_version: ipv4
 
diff --git a/roles/ceph-facts/tasks/set_monitor_address.yml b/roles/ceph-facts/tasks/set_monitor_address.yml
index 8f3aa57b5f..142b56a2a1 100644
--- a/roles/ceph-facts/tasks/set_monitor_address.yml
+++ b/roles/ceph-facts/tasks/set_monitor_address.yml
@@ -1,59 +1,14 @@
 ---
-- name: Set_fact _monitor_addresses to monitor_address_block ipv4
+- name: Set_fact _monitor_addresses - ipv4
   ansible.builtin.set_fact:
-    _monitor_addresses: "{{ _monitor_addresses | default([]) + [{'name': item, 'addr': hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(hostvars[item]['monitor_address_block'].split(',')) | first}] }}"
+    _monitor_addresses: "{{ _monitor_addresses | default({}) | combine({item: hostvars[item]['ansible_facts']['all_ipv4_addresses'] | ips_in_ranges(hostvars[item]['public_network'].split(',')) | first}) }}"
   with_items: "{{ groups.get(mon_group_name, []) }}"
   when:
-    - "item not in _monitor_addresses | default([]) | selectattr('name', 'defined') |  map(attribute='name') | list"
-    - hostvars[item]['monitor_address_block'] is defined
-    - hostvars[item]['monitor_address_block'] != 'subnet'
     - ip_version == 'ipv4'
 
-- name: Set_fact _monitor_addresses to monitor_address_block ipv6
+- name: Set_fact _monitor_addresses - ipv6
   ansible.builtin.set_fact:
-    _monitor_addresses: "{{ _monitor_addresses | default([]) + [{'name': item, 'addr': hostvars[item]['ansible_facts']['all_ipv6_addresses'] | ips_in_ranges(hostvars[item]['monitor_address_block'].split(',')) | last | ansible.utils.ipwrap}] }}"
+    _monitor_addresses: "{{ _monitor_addresses | default({}) | combine({item: hostvars[item]['ansible_facts']['all_ipv6_addresses'] | ips_in_ranges(hostvars[item]['public_network'].split(',')) | last | ansible.utils.ipwrap}) }}"
   with_items: "{{ groups.get(mon_group_name, []) }}"
   when:
-    - "item not in _monitor_addresses | default([]) | selectattr('name', 'defined') |  map(attribute='name') | list"
-    - hostvars[item]['monitor_address_block'] is defined
-    - hostvars[item]['monitor_address_block'] != 'subnet'
     - ip_version == 'ipv6'
-
-- name: Set_fact _monitor_addresses to monitor_address
-  ansible.builtin.set_fact:
-    _monitor_addresses: "{{ _monitor_addresses | default([]) + [{'name': item, 'addr': hostvars[item]['monitor_address'] | ansible.utils.ipwrap}] }}"
-  with_items: "{{ groups.get(mon_group_name, []) }}"
-  when:
-    - "item not in _monitor_addresses | default([]) | selectattr('name', 'defined') | map(attribute='name') | list"
-    - hostvars[item]['monitor_address'] is defined
-    - hostvars[item]['monitor_address'] != 'x.x.x.x'
-
-- name: Set_fact _monitor_addresses to monitor_interface - ipv4
-  ansible.builtin.set_fact:
-    _monitor_addresses: "{{ _monitor_addresses | default([]) + [{'name': item, 'addr': hostvars[item]['ansible_facts'][(hostvars[item]['monitor_interface'] | replace('-', '_'))][ip_version]['address'] | ansible.utils.ipwrap}] }}"
-  with_items: "{{ groups.get(mon_group_name, []) }}"
-  when:
-    - "item not in _monitor_addresses | default([]) | selectattr('name', 'defined') | map(attribute='name') | list"
-    - ip_version == 'ipv4'
-    - hostvars[item]['monitor_address_block'] | default('subnet')  == 'subnet'
-    - hostvars[item]['monitor_address'] | default('x.x.x.x') == 'x.x.x.x'
-    - hostvars[item]['monitor_interface'] | default('interface') != 'interface'
-
-- name: Set_fact _monitor_addresses to monitor_interface - ipv6
-  ansible.builtin.set_fact:
-    _monitor_addresses: "{{ _monitor_addresses | default([]) + [{'name': item, 'addr': hostvars[item]['ansible_facts'][(hostvars[item]['monitor_interface'] | replace('-', '_'))][ip_version][0]['address'] | ansible.utils.ipwrap}] }}"
-  with_items: "{{ groups.get(mon_group_name, []) }}"
-  when:
-    - "item not in _monitor_addresses | default([]) | selectattr('name', 'defined') | map(attribute='name') | list"
-    - ip_version == 'ipv6'
-    - hostvars[item]['monitor_address_block'] | default('subnet')  == 'subnet'
-    - hostvars[item]['monitor_address'] | default('x.x.x.x') == 'x.x.x.x'
-    - hostvars[item]['monitor_interface'] | default('interface') != 'interface'
-
-- name: Set_fact _current_monitor_address
-  ansible.builtin.set_fact:
-    _current_monitor_address: "{{ item.addr }}"
-  with_items: "{{ _monitor_addresses }}"
-  when:
-    - (inventory_hostname == item.name and not rolling_update | default(False) | bool)
-      or (rolling_update | default(False) | bool and item.name == groups.get(mon_group_name, [])[0])
diff --git a/roles/ceph-mon/tasks/deploy_monitors.yml b/roles/ceph-mon/tasks/deploy_monitors.yml
index 1535418070..9f89de97ad 100644
--- a/roles/ceph-mon/tasks/deploy_monitors.yml
+++ b/roles/ceph-mon/tasks/deploy_monitors.yml
@@ -158,13 +158,13 @@
   ansible.builtin.command: >
     {{ ceph_monmaptool_cmd }}
     --create
-    {% for host in _monitor_addresses -%}
+    {% for name, addr in _monitor_addresses.items() -%}
     --addv
-    {{ host.name }}
+    {{ hostvars[name]['ansible_facts']['hostname'] }}
     {% if mon_host_v1.enabled | bool %}
-    {% set _v1 = ',v1:' + host.addr + mon_host_v1.suffix %}
+    {% set _v1 = ',v1:' + addr + mon_host_v1.suffix %}
     {% endif %}
-    [{{ "v2:" + host.addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
+    [{{ "v2:" + addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
     {# {%- if not loop.last -%},{%- endif %} #}
     {%- endfor %}
     --enable-all-features
diff --git a/roles/ceph-validate/tasks/check_eth_mon.yml b/roles/ceph-validate/tasks/check_eth_mon.yml
deleted file mode 100644
index 21a58f3693..0000000000
--- a/roles/ceph-validate/tasks/check_eth_mon.yml
+++ /dev/null
@@ -1,24 +0,0 @@
----
-- name: Check if network interface exists
-  ansible.builtin.fail:
-    msg: "{{ monitor_interface }} does not exist on {{ inventory_hostname }}"
-  when: monitor_interface not in ansible_facts['interfaces']
-
-- name: Check if network interface is active
-  ansible.builtin.fail:
-    msg: "{{ monitor_interface }} is not active on {{ inventory_hostname }}"
-  when: not hostvars[inventory_hostname]['ansible_facts'][(monitor_interface | replace('-', '_'))]['active']
-
-- name: Check if network interface has an IPv4 address
-  ansible.builtin.fail:
-    msg: "{{ monitor_interface }} does not have any IPv4 address on {{ inventory_hostname }}"
-  when:
-    - ip_version == "ipv4"
-    - hostvars[inventory_hostname]['ansible_facts'][(monitor_interface | replace('-', '_'))]['ipv4'] is not defined
-
-- name: Check if network interface has an IPv6 address
-  ansible.builtin.fail:
-    msg: "{{ monitor_interface }} does not have any IPv6 address on {{ inventory_hostname }}"
-  when:
-    - ip_version == "ipv6"
-    - hostvars[inventory_hostname]['ansible_facts'][(monitor_interface | replace('-', '_'))]['ipv6'] is not defined
diff --git a/roles/ceph-validate/tasks/check_ipaddr_mon.yml b/roles/ceph-validate/tasks/check_ipaddr_mon.yml
index 9183b385bf..cf4cc71dbd 100644
--- a/roles/ceph-validate/tasks/check_ipaddr_mon.yml
+++ b/roles/ceph-validate/tasks/check_ipaddr_mon.yml
@@ -1,5 +1,5 @@
 ---
-- name: Check if network interface has an IP address in `monitor_address_block`
+- name: Check if network interface has an IP address in public_network
   ansible.builtin.fail:
-    msg: "{{ inventory_hostname }} does not have any {{ ip_version }} address on {{ monitor_address_block }}"
-  when: hostvars[inventory_hostname]['ansible_facts']['all_' + ip_version + '_addresses'] | ips_in_ranges(hostvars[inventory_hostname]['monitor_address_block'].split(',')) | length == 0
+    msg: "{{ inventory_hostname }} does not have any {{ ip_version }} address on {{ public_network }}"
+  when: hostvars[inventory_hostname]['ansible_facts']['all_' + ip_version + '_addresses'] | ips_in_ranges(hostvars[inventory_hostname]['public_network'].split(',')) | length == 0
diff --git a/roles/ceph-validate/tasks/main.yml b/roles/ceph-validate/tasks/main.yml
index f0caab90f2..885ffb36ae 100644
--- a/roles/ceph-validate/tasks/main.yml
+++ b/roles/ceph-validate/tasks/main.yml
@@ -11,15 +11,6 @@
     msg: "osd_objectstore must be 'bluestore''"
   when: osd_objectstore not in ['bluestore']
 
-- name: Validate monitor network configuration
-  ansible.builtin.fail:
-    msg: "Either monitor_address, monitor_address_block or monitor_interface must be provided"
-  when:
-    - mon_group_name in group_names
-    - monitor_address == 'x.x.x.x'
-    - monitor_address_block == 'subnet'
-    - monitor_interface == 'interface'
-
 - name: Validate radosgw network configuration
   ansible.builtin.fail:
     msg: "Either radosgw_address, radosgw_address_block or radosgw_interface must be provided"
@@ -107,22 +98,6 @@
     - osd_group_name in group_names
     - not osd_auto_discovery | default(False) | bool
 
-- name: Include check_eth_mon.yml
-  ansible.builtin.include_tasks: check_eth_mon.yml
-  when:
-    - mon_group_name in group_names
-    - monitor_interface != "dummy"
-    - monitor_address == "x.x.x.x"
-    - monitor_address_block == "subnet"
-
-- name: Include check_ipaddr_mon.yml
-  ansible.builtin.include_tasks: check_ipaddr_mon.yml
-  when:
-    - mon_group_name in group_names
-    - monitor_interface == "interface"
-    - monitor_address == "x.x.x.x"
-    - monitor_address_block != "subnet"
-
 - name: Include check_eth_rgw.yml
   ansible.builtin.include_tasks: check_eth_rgw.yml
   when:
diff --git a/tests/functional/add-mdss/container/group_vars/all b/tests/functional/add-mdss/container/group_vars/all
index abacaac81d..5816822db7 100644
--- a/tests/functional/add-mdss/container/group_vars/all
+++ b/tests/functional/add-mdss/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.63.0/24"
 cluster_network: "192.168.64.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-mdss/group_vars/all b/tests/functional/add-mdss/group_vars/all
index 650540b496..5bc3323899 100644
--- a/tests/functional/add-mdss/group_vars/all
+++ b/tests/functional/add-mdss/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.61.0/24"
 cluster_network: "192.168.62.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-mgrs/container/group_vars/all b/tests/functional/add-mgrs/container/group_vars/all
index 34065af173..7c57901d20 100644
--- a/tests/functional/add-mgrs/container/group_vars/all
+++ b/tests/functional/add-mgrs/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.75.0/24"
 cluster_network: "192.168.76.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-mgrs/group_vars/all b/tests/functional/add-mgrs/group_vars/all
index fb9bde0f09..b83a59ac13 100644
--- a/tests/functional/add-mgrs/group_vars/all
+++ b/tests/functional/add-mgrs/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: dev
 cluster: ceph
 public_network: "192.168.73.0/24"
 cluster_network: "192.168.74.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-mons/container/group_vars/all b/tests/functional/add-mons/container/group_vars/all
index 1fff68805f..9846e09db0 100644
--- a/tests/functional/add-mons/container/group_vars/all
+++ b/tests/functional/add-mons/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.55.0/24"
 cluster_network: "192.168.56.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-mons/group_vars/all b/tests/functional/add-mons/group_vars/all
index 7988877c04..ca9925379b 100644
--- a/tests/functional/add-mons/group_vars/all
+++ b/tests/functional/add-mons/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: dev
 cluster: ceph
 public_network: "192.168.53.0/24"
 cluster_network: "192.168.54.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-osds/container/group_vars/all b/tests/functional/add-osds/container/group_vars/all
index 39022d7a60..e6711bff64 100644
--- a/tests/functional/add-osds/container/group_vars/all
+++ b/tests/functional/add-osds/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.55.0/24"
 cluster_network: "192.168.56.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-osds/group_vars/all b/tests/functional/add-osds/group_vars/all
index ef109c9b8b..2b6e2b8b74 100644
--- a/tests/functional/add-osds/group_vars/all
+++ b/tests/functional/add-osds/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.53.0/24"
 cluster_network: "192.168.54.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-rbdmirrors/container/group_vars/all b/tests/functional/add-rbdmirrors/container/group_vars/all
index c275d4f084..9ad653c92f 100644
--- a/tests/functional/add-rbdmirrors/container/group_vars/all
+++ b/tests/functional/add-rbdmirrors/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.67.0/24"
 cluster_network: "192.168.68.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-rbdmirrors/group_vars/all b/tests/functional/add-rbdmirrors/group_vars/all
index 119d13167e..6b6d1dc9b5 100644
--- a/tests/functional/add-rbdmirrors/group_vars/all
+++ b/tests/functional/add-rbdmirrors/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.65.0/24"
 cluster_network: "192.168.66.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-rgws/container/group_vars/all b/tests/functional/add-rgws/container/group_vars/all
index 1de1eea6f8..cc232ecb18 100644
--- a/tests/functional/add-rgws/container/group_vars/all
+++ b/tests/functional/add-rgws/container/group_vars/all
@@ -6,7 +6,6 @@ containerized_deployment: true
 cluster: ceph
 public_network: "192.168.71.0/24"
 cluster_network: "192.168.72.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/add-rgws/group_vars/all b/tests/functional/add-rgws/group_vars/all
index e7326ec8ec..2aae860593 100644
--- a/tests/functional/add-rgws/group_vars/all
+++ b/tests/functional/add-rgws/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.69.0/24"
 cluster_network: "192.168.70.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/all-in-one/container/group_vars/all b/tests/functional/all-in-one/container/group_vars/all
index daa915a656..ce364b0fea 100644
--- a/tests/functional/all-in-one/container/group_vars/all
+++ b/tests/functional/all-in-one/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_num_instances: 2
 ceph_mon_docker_subnet: "{{ public_network }}"
diff --git a/tests/functional/all-in-one/group_vars/all b/tests/functional/all-in-one/group_vars/all
index f50a1bba03..1b5ddd6348 100644
--- a/tests/functional/all-in-one/group_vars/all
+++ b/tests/functional/all-in-one/group_vars/all
@@ -2,7 +2,6 @@
 containerized_deployment: False
 ceph_origin: repository
 ceph_repository: community
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 openstack_config: True
diff --git a/tests/functional/all_daemons/container/group_vars/all b/tests/functional/all_daemons/container/group_vars/all
index 6dfcb137c9..4c45ec9c7d 100644
--- a/tests/functional/all_daemons/container/group_vars/all
+++ b/tests/functional/all_daemons/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.17.0/24"
diff --git a/tests/functional/all_daemons/container/hosts b/tests/functional/all_daemons/container/hosts
index fa75c7d795..51d488ccbd 100644
--- a/tests/functional/all_daemons/container/hosts
+++ b/tests/functional/all_daemons/container/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address=192.168.17.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.17.12
+mon0
+mon1
+mon2
 
 [mgrs]
 mgr0
diff --git a/tests/functional/all_daemons/group_vars/all b/tests/functional/all_daemons/group_vars/all
index efd2430cf7..63104689e7 100644
--- a/tests/functional/all_daemons/group_vars/all
+++ b/tests/functional/all_daemons/group_vars/all
@@ -1,8 +1,8 @@
 ---
 ceph_origin: repository
-ceph_repository: community
-public_network: "192.168.1.0/24"
-cluster_network: "192.168.2.0/24"
+ceph_repository: dev
+public_network: "192.168.110.0/24"
+cluster_network: "192.168.220.0/24"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_conf_overrides:
   global:
@@ -36,3 +36,4 @@ prometheus_container_image: "quay.io/prometheus/prometheus:v2.7.2"
 alertmanager_container_image: "quay.io/prometheus/alertmanager:v0.16.2"
 grafana_container_image: "quay.io/ceph/ceph-grafana:6.7.4"
 grafana_server_group_name: ceph_monitoring
+dashboard_enabled: false
diff --git a/tests/functional/all_daemons/group_vars/mons b/tests/functional/all_daemons/group_vars/mons
index f6ab9a5415..bc6941bd2a 100644
--- a/tests/functional/all_daemons/group_vars/mons
+++ b/tests/functional/all_daemons/group_vars/mons
@@ -1,6 +1,6 @@
 ---
-create_crush_tree: True
-crush_rule_config: True
+create_crush_tree: true
+crush_rule_config: true
 crush_rule_hdd:
   name: HDD
   root: default
@@ -8,4 +8,4 @@ crush_rule_hdd:
   class: hdd
   default: true
 crush_rules:
-  - "{{ crush_rule_hdd }}"
\ No newline at end of file
+  - "{{ crush_rule_hdd }}"
diff --git a/tests/functional/all_daemons/group_vars/nfss b/tests/functional/all_daemons/group_vars/nfss
index fc280e2513..826bdfecd6 100644
--- a/tests/functional/all_daemons/group_vars/nfss
+++ b/tests/functional/all_daemons/group_vars/nfss
@@ -5,6 +5,6 @@ ganesha_conf_overrides: |
     CACHEINODE {
             Entries_HWMark = 100000;
     }
-nfs_ganesha_stable: true
-nfs_ganesha_dev: false
+nfs_ganesha_stable: false
+nfs_ganesha_dev: true
 nfs_ganesha_flavor: "ceph_main"
diff --git a/tests/functional/all_daemons/hosts b/tests/functional/all_daemons/hosts
index aeb10eed6f..8e2019776a 100644
--- a/tests/functional/all_daemons/hosts
+++ b/tests/functional/all_daemons/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address=192.168.1.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.1.12
+mon0
+mon1
+mon2
 
 [mgrs]
 mgr0
diff --git a/tests/functional/all_daemons/hosts-switch-to-containers b/tests/functional/all_daemons/hosts-switch-to-containers
index fabb659f0b..ceae369ebc 100644
--- a/tests/functional/all_daemons/hosts-switch-to-containers
+++ b/tests/functional/all_daemons/hosts-switch-to-containers
@@ -2,9 +2,9 @@
 docker=True
 
 [mons]
-mon0 monitor_address=192.168.1.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.1.12
+mon0
+mon1
+mon2
 
 [mgrs]
 mgr0
diff --git a/tests/functional/all_daemons/vagrant_variables.yml b/tests/functional/all_daemons/vagrant_variables.yml
index 48653bbbb9..5a58fc8b0e 100644
--- a/tests/functional/all_daemons/vagrant_variables.yml
+++ b/tests/functional/all_daemons/vagrant_variables.yml
@@ -19,8 +19,8 @@ mgr_vms: 1
 ceph_install_source: stable
 
 # SUBNETS TO USE FOR THE VMS
-public_subnet: 192.168.1
-cluster_subnet: 192.168.2
+public_subnet: 192.168.110
+cluster_subnet: 192.168.220
 
 # MEMORY
 # set 1024 for CentOS
diff --git a/tests/functional/all_daemons_ipv6/container/group_vars/all b/tests/functional/all_daemons_ipv6/container/group_vars/all
index d0c9ee6bcf..013fa975e2 100644
--- a/tests/functional/all_daemons_ipv6/container/group_vars/all
+++ b/tests/functional/all_daemons_ipv6/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 ip_version: ipv6
diff --git a/tests/functional/all_daemons_ipv6/container/hosts b/tests/functional/all_daemons_ipv6/container/hosts
index 81cf5c2dc0..51d488ccbd 100644
--- a/tests/functional/all_daemons_ipv6/container/hosts
+++ b/tests/functional/all_daemons_ipv6/container/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address="fdec:f1fb:29cd:6940::10"
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address="fdec:f1fb:29cd:6940::12"
+mon0
+mon1
+mon2
 
 [mgrs]
 mgr0
diff --git a/tests/functional/all_daemons_ipv6/hosts b/tests/functional/all_daemons_ipv6/hosts
index 78b212478e..8e2019776a 100644
--- a/tests/functional/all_daemons_ipv6/hosts
+++ b/tests/functional/all_daemons_ipv6/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address="fdec:f1fb:29cd:6940::10"
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address="fdec:f1fb:29cd:6940::12"
+mon0
+mon1
+mon2
 
 [mgrs]
 mgr0
diff --git a/tests/functional/cephadm/group_vars/all b/tests/functional/cephadm/group_vars/all
index 2e074a2716..0acf604ad7 100644
--- a/tests/functional/cephadm/group_vars/all
+++ b/tests/functional/cephadm/group_vars/all
@@ -1,5 +1,4 @@
 ---
-monitor_interface: eth1
 public_network: "192.168.30.0/24"
 cluster_network: "192.168.31.0/24"
 dashboard_admin_password: $sX!cD$rYU6qR^B!
diff --git a/tests/functional/collocation/container/group_vars/all b/tests/functional/collocation/container/group_vars/all
index e6f0fab1ed..b60168ab73 100644
--- a/tests/functional/collocation/container/group_vars/all
+++ b/tests/functional/collocation/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_num_instances: 2
 ceph_mon_docker_subnet: "{{ public_network }}"
diff --git a/tests/functional/collocation/group_vars/all b/tests/functional/collocation/group_vars/all
index 423ffbac7c..8e4061e4d1 100644
--- a/tests/functional/collocation/group_vars/all
+++ b/tests/functional/collocation/group_vars/all
@@ -2,7 +2,6 @@
 containerized_deployment: False
 ceph_origin: repository
 ceph_repository: community
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.15.0/24"
diff --git a/tests/functional/docker2podman/group_vars/all b/tests/functional/docker2podman/group_vars/all
index 42e97ffd8e..84d3dac2b3 100644
--- a/tests/functional/docker2podman/group_vars/all
+++ b/tests/functional/docker2podman/group_vars/all
@@ -5,7 +5,6 @@ docker: True
 container_binary: docker
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.58.0/24"
diff --git a/tests/functional/external_clients/container/inventory/group_vars/all b/tests/functional/external_clients/container/inventory/group_vars/all
index 940a55ff86..0bf378374b 100644
--- a/tests/functional/external_clients/container/inventory/group_vars/all
+++ b/tests/functional/external_clients/container/inventory/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_num_instances: 2
 ceph_mon_docker_subnet: "{{ public_network }}"
diff --git a/tests/functional/external_clients/inventory/group_vars/all b/tests/functional/external_clients/inventory/group_vars/all
index f941ecc7bc..1152b04cef 100644
--- a/tests/functional/external_clients/inventory/group_vars/all
+++ b/tests/functional/external_clients/inventory/group_vars/all
@@ -2,7 +2,6 @@
 containerized_deployment: False
 ceph_origin: repository
 ceph_repository: community
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 openstack_config: True
diff --git a/tests/functional/lvm-auto-discovery/container/group_vars/all b/tests/functional/lvm-auto-discovery/container/group_vars/all
index dab885f7a8..b352cab0e8 100644
--- a/tests/functional/lvm-auto-discovery/container/group_vars/all
+++ b/tests/functional/lvm-auto-discovery/container/group_vars/all
@@ -10,7 +10,6 @@ ceph_repository: dev
 cluster: ceph
 public_network: "192.168.39.0/24"
 cluster_network: "192.168.40.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/lvm-auto-discovery/group_vars/all b/tests/functional/lvm-auto-discovery/group_vars/all
index 149cd228fd..157cb79c74 100644
--- a/tests/functional/lvm-auto-discovery/group_vars/all
+++ b/tests/functional/lvm-auto-discovery/group_vars/all
@@ -5,7 +5,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.39.0/24"
 cluster_network: "192.168.40.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 osd_objectstore: "bluestore"
 crush_device_class: test
diff --git a/tests/functional/lvm-batch/container/group_vars/all b/tests/functional/lvm-batch/container/group_vars/all
index a3e868dd31..3e5f217767 100644
--- a/tests/functional/lvm-batch/container/group_vars/all
+++ b/tests/functional/lvm-batch/container/group_vars/all
@@ -10,7 +10,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.39.0/24"
 cluster_network: "192.168.40.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 crush_device_class: test
 copy_admin_key: true
diff --git a/tests/functional/lvm-batch/group_vars/all b/tests/functional/lvm-batch/group_vars/all
index 0c432635ca..22c46d1aa6 100644
--- a/tests/functional/lvm-batch/group_vars/all
+++ b/tests/functional/lvm-batch/group_vars/all
@@ -5,7 +5,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.39.0/24"
 cluster_network: "192.168.40.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 crush_device_class: test
 copy_admin_key: true
diff --git a/tests/functional/lvm-osds/container/group_vars/all b/tests/functional/lvm-osds/container/group_vars/all
index 5e812e3556..225a5cffe0 100644
--- a/tests/functional/lvm-osds/container/group_vars/all
+++ b/tests/functional/lvm-osds/container/group_vars/all
@@ -8,7 +8,6 @@ ceph_origin: repository
 ceph_repository: community
 public_network: "192.168.33.0/24"
 cluster_network: "192.168.34.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 copy_admin_key: true
 containerized_deployment: true
 # test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
diff --git a/tests/functional/lvm-osds/group_vars/all b/tests/functional/lvm-osds/group_vars/all
index 3ee80cc074..c8066f0132 100644
--- a/tests/functional/lvm-osds/group_vars/all
+++ b/tests/functional/lvm-osds/group_vars/all
@@ -4,7 +4,6 @@ ceph_origin: repository
 ceph_repository: community
 public_network: "192.168.39.0/24"
 cluster_network: "192.168.40.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 copy_admin_key: true
 # test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
 os_tuning_params:
diff --git a/tests/functional/migrate_ceph_disk_to_ceph_volume/group_vars/all b/tests/functional/migrate_ceph_disk_to_ceph_volume/group_vars/all
index 5ffdf22bde..657e3015fd 100644
--- a/tests/functional/migrate_ceph_disk_to_ceph_volume/group_vars/all
+++ b/tests/functional/migrate_ceph_disk_to_ceph_volume/group_vars/all
@@ -5,7 +5,6 @@ ceph_repository: community
 cluster: test
 public_network: "192.168.1.0/24"
 cluster_network: "192.168.2.0/24"
-monitor_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
 devices:
diff --git a/tests/functional/podman/group_vars/all b/tests/functional/podman/group_vars/all
index 6101343ecd..29709d562c 100644
--- a/tests/functional/podman/group_vars/all
+++ b/tests/functional/podman/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.30.0/24"
diff --git a/tests/functional/rbdmirror/container/group_vars/all b/tests/functional/rbdmirror/container/group_vars/all
index 54924683cd..8db0513d95 100644
--- a/tests/functional/rbdmirror/container/group_vars/all
+++ b/tests/functional/rbdmirror/container/group_vars/all
@@ -6,7 +6,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.144.0/24"
 cluster_network: "192.168.145.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/rbdmirror/container/secondary/group_vars/all b/tests/functional/rbdmirror/container/secondary/group_vars/all
index ccc55d1cf8..1c5896dcab 100644
--- a/tests/functional/rbdmirror/container/secondary/group_vars/all
+++ b/tests/functional/rbdmirror/container/secondary/group_vars/all
@@ -6,7 +6,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.146.0/24"
 cluster_network: "192.168.147.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/rbdmirror/group_vars/all b/tests/functional/rbdmirror/group_vars/all
index 93474c1303..ef706caa4d 100644
--- a/tests/functional/rbdmirror/group_vars/all
+++ b/tests/functional/rbdmirror/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.140.0/24"
 cluster_network: "192.168.141.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/rbdmirror/secondary/group_vars/all b/tests/functional/rbdmirror/secondary/group_vars/all
index 9c44e89b79..b5bf0eaee3 100644
--- a/tests/functional/rbdmirror/secondary/group_vars/all
+++ b/tests/functional/rbdmirror/secondary/group_vars/all
@@ -4,7 +4,6 @@ ceph_repository: community
 cluster: ceph
 public_network: "192.168.142.0/24"
 cluster_network: "192.168.143.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/shrink_mds/container/group_vars/all b/tests/functional/shrink_mds/container/group_vars/all
index 43f2de24d9..e0cc1865e7 100644
--- a/tests/functional/shrink_mds/container/group_vars/all
+++ b/tests/functional/shrink_mds/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.79.0/24"
 cluster_network: "192.168.80.0/24"
diff --git a/tests/functional/shrink_mds/group_vars/all b/tests/functional/shrink_mds/group_vars/all
index 0ceff4cdbc..b82aa455a9 100644
--- a/tests/functional/shrink_mds/group_vars/all
+++ b/tests/functional/shrink_mds/group_vars/all
@@ -3,7 +3,6 @@ ceph_origin: repository
 ceph_repository: community
 public_network: "192.168.77.0/24"
 cluster_network: "192.168.78.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 journal_size: 100
 osd_objectstore: "bluestore"
diff --git a/tests/functional/shrink_mgr/container/group_vars/all b/tests/functional/shrink_mgr/container/group_vars/all
index 5488b6c41a..671bc426b4 100644
--- a/tests/functional/shrink_mgr/container/group_vars/all
+++ b/tests/functional/shrink_mgr/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.83.0/24"
 cluster_network: "192.168.84.0/24"
diff --git a/tests/functional/shrink_mgr/group_vars/all b/tests/functional/shrink_mgr/group_vars/all
index bc72091a19..9374675e21 100644
--- a/tests/functional/shrink_mgr/group_vars/all
+++ b/tests/functional/shrink_mgr/group_vars/all
@@ -3,7 +3,6 @@ ceph_origin: repository
 ceph_repository: dev
 public_network: "192.168.81.0/24"
 cluster_network: "192.168.82.0/24"
-monitor_interface: eth1
 radosgw_interface: eth1
 ceph_conf_overrides:
   global:
diff --git a/tests/functional/shrink_mon/container/group_vars/all b/tests/functional/shrink_mon/container/group_vars/all
index 2fd03e9b5e..7415150db5 100644
--- a/tests/functional/shrink_mon/container/group_vars/all
+++ b/tests/functional/shrink_mon/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.17.0/24"
 cluster_network: "192.168.18.0/24"
diff --git a/tests/functional/shrink_mon/hosts b/tests/functional/shrink_mon/hosts
index c023021463..5d91b7dbd0 100644
--- a/tests/functional/shrink_mon/hosts
+++ b/tests/functional/shrink_mon/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address=192.168.1.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.1.12
+mon0
+mon1
+mon2
 
 [osds]
 osd0
\ No newline at end of file
diff --git a/tests/functional/shrink_mon/hosts-switch-to-containers b/tests/functional/shrink_mon/hosts-switch-to-containers
index b995e9b993..3ab72318ef 100644
--- a/tests/functional/shrink_mon/hosts-switch-to-containers
+++ b/tests/functional/shrink_mon/hosts-switch-to-containers
@@ -2,9 +2,9 @@
 docker=True
 
 [mons]
-mon0 monitor_address=192.168.1.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.1.12
+mon0
+mon1
+mon2
 
 [osds]
 osd0
diff --git a/tests/functional/shrink_osd/container/group_vars/all b/tests/functional/shrink_osd/container/group_vars/all
index 9e6f481b84..1ae9358193 100644
--- a/tests/functional/shrink_osd/container/group_vars/all
+++ b/tests/functional/shrink_osd/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.73.0/24"
 cluster_network: "192.168.74.0/24"
diff --git a/tests/functional/shrink_rbdmirror/container/group_vars/all b/tests/functional/shrink_rbdmirror/container/group_vars/all
index 7eeffe2663..3fe10aa207 100644
--- a/tests/functional/shrink_rbdmirror/container/group_vars/all
+++ b/tests/functional/shrink_rbdmirror/container/group_vars/all
@@ -5,7 +5,6 @@ docker: True
 public_network: "192.168.87.0/24"
 cluster_network: "192.168.88.0/24"
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 ceph_conf_overrides:
   global:
diff --git a/tests/functional/shrink_rbdmirror/group_vars/all b/tests/functional/shrink_rbdmirror/group_vars/all
index 8e2437b48d..1a90c972b7 100644
--- a/tests/functional/shrink_rbdmirror/group_vars/all
+++ b/tests/functional/shrink_rbdmirror/group_vars/all
@@ -3,7 +3,6 @@ ceph_origin: repository
 ceph_repository: community
 public_network: "192.168.85.0/24"
 cluster_network: "192.168.86.0/24"
-monitor_interface: eth1
 osd_objectstore: "bluestore"
 copy_admin_key: true
 ceph_conf_overrides:
diff --git a/tests/functional/shrink_rgw/container/group_vars/all b/tests/functional/shrink_rgw/container/group_vars/all
index 052f9ffc9f..9aafb5541b 100644
--- a/tests/functional/shrink_rgw/container/group_vars/all
+++ b/tests/functional/shrink_rgw/container/group_vars/all
@@ -6,7 +6,6 @@ docker: True
 containerized_deployment: True
 public_network: "192.168.91.0/24"
 cluster_network: "192.168.92.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 ceph_conf_overrides:
diff --git a/tests/functional/shrink_rgw/group_vars/all b/tests/functional/shrink_rgw/group_vars/all
index f67e921540..26bfeb7d10 100644
--- a/tests/functional/shrink_rgw/group_vars/all
+++ b/tests/functional/shrink_rgw/group_vars/all
@@ -3,7 +3,6 @@ ceph_origin: repository
 ceph_repository: dev
 public_network: "192.168.89.0/24"
 cluster_network: "192.168.90.0/24"
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 osd_objectstore: "bluestore"
 copy_admin_key: true
diff --git a/tests/functional/subset_update/container/group_vars/all b/tests/functional/subset_update/container/group_vars/all
index 4b8941b96f..ad86c04010 100644
--- a/tests/functional/subset_update/container/group_vars/all
+++ b/tests/functional/subset_update/container/group_vars/all
@@ -4,7 +4,6 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 public_network: "192.168.5.0/24"
diff --git a/tests/functional/subset_update/container/hosts b/tests/functional/subset_update/container/hosts
index e7d4fa615c..8823f1a85b 100644
--- a/tests/functional/subset_update/container/hosts
+++ b/tests/functional/subset_update/container/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address=192.168.5.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.5.12
+mon0
+mon1
+mon2
 
 [mgrs]
 mon0
diff --git a/tests/functional/subset_update/hosts b/tests/functional/subset_update/hosts
index 18669ec1db..ce63629468 100644
--- a/tests/functional/subset_update/hosts
+++ b/tests/functional/subset_update/hosts
@@ -1,7 +1,7 @@
 [mons]
-mon0 monitor_address=192.168.3.10
-mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
-mon2 monitor_address=192.168.3.12
+mon0
+mon1
+mon2
 
 [mgrs]
 mon0