simplify monitor address setting

this drops the following parameters:

- monitor_address_block
- monitor_interface
- monitor_address

The monitor address will be automatically set from `public_network` parameter.

Signed-off-by: Guillaume Abrioux <gabrioux@ibm.com>
pull/7493/head
Guillaume Abrioux 2024-02-16 14:20:22 +01:00
parent 62e48fc14f
commit 8871de6d99
73 changed files with 61 additions and 230 deletions

4
Vagrantfile vendored
View File

@ -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({

View File

@ -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.

View File

@ -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:

View File

@ -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

View File

@ -62,7 +62,7 @@ dummy:
# - --default-mon-cluster-log-to-stderr=true
# - -i={{ monitor_name }}
# - --mon-data=/var/lib/ceph/mon/{{ cluster }}-{{ monitor_name }}
# - --public-addr={{ _current_monitor_address }}
# - --public-addr={{ _monitor_addresses[inventory_hostname] }}
# - --mon-initial-members={{ groups[mon_group_name] | join(',') }}

View File

@ -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

View File

@ -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[groups['mons'][0]] }}" quorum_status --format json
register: ceph_health_raw
until:
- ceph_health_raw.rc == 0

View File

@ -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 %}

View File

@ -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

View File

@ -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])

View File

@ -54,7 +54,7 @@ ceph_mon_container_params:
- --default-mon-cluster-log-to-stderr=true
- -i={{ monitor_name }}
- --mon-data=/var/lib/ceph/mon/{{ cluster }}-{{ monitor_name }}
- --public-addr={{ _current_monitor_address }}
- --public-addr={{ _monitor_addresses[inventory_hostname] }}
- --mon-initial-members={{ groups[mon_group_name] | map('extract', hostvars, 'ansible_facts') | map(attribute='hostname') | join(',') }}

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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 }}"

View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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!

View File

@ -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 }}"

View File

@ -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"

View File

@ -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"

View File

@ -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 }}"

View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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:

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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:

View File

@ -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"

View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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:

View File

@ -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:

View File

@ -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:

View File

@ -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

View File

@ -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"

View File

@ -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

View File

@ -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