mirror of https://github.com/ceph/ceph-ansible.git
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
parent
62e48fc14f
commit
8871de6d99
|
@ -88,7 +88,6 @@ ansible_provision = proc do |ansible|
|
||||||
if DOCKER then
|
if DOCKER then
|
||||||
ansible.extra_vars = ansible.extra_vars.merge({
|
ansible.extra_vars = ansible.extra_vars.merge({
|
||||||
containerized_deployment: 'true',
|
containerized_deployment: 'true',
|
||||||
monitor_interface: ETH,
|
|
||||||
ceph_mon_docker_subnet: ansible.extra_vars[:public_network],
|
ceph_mon_docker_subnet: ansible.extra_vars[:public_network],
|
||||||
devices: settings['disks'],
|
devices: settings['disks'],
|
||||||
radosgw_interface: ETH,
|
radosgw_interface: ETH,
|
||||||
|
@ -97,7 +96,6 @@ ansible_provision = proc do |ansible|
|
||||||
else
|
else
|
||||||
ansible.extra_vars = ansible.extra_vars.merge({
|
ansible.extra_vars = ansible.extra_vars.merge({
|
||||||
devices: settings['disks'],
|
devices: settings['disks'],
|
||||||
monitor_interface: ETH,
|
|
||||||
radosgw_interface: ETH,
|
radosgw_interface: ETH,
|
||||||
os_tuning_params: settings['os_tuning_params'],
|
os_tuning_params: settings['os_tuning_params'],
|
||||||
})
|
})
|
||||||
|
@ -105,8 +103,6 @@ ansible_provision = proc do |ansible|
|
||||||
|
|
||||||
if BOX == 'linode' then
|
if BOX == 'linode' then
|
||||||
ansible.sudo = true
|
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:
|
# Use radosgw_address_block instead of radosgw_interface:
|
||||||
ansible.extra_vars.delete(:radosgw_interface)
|
ansible.extra_vars.delete(:radosgw_interface)
|
||||||
ansible.extra_vars = ansible.extra_vars.merge({
|
ansible.extra_vars = ansible.extra_vars.merge({
|
||||||
|
|
|
@ -228,7 +228,6 @@ An example configuration that deploys the upstream ``octopus`` version of Ceph w
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
public_network: "192.168.3.0/24"
|
public_network: "192.168.3.0/24"
|
||||||
cluster_network: "192.168.4.0/24"
|
cluster_network: "192.168.4.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
devices:
|
devices:
|
||||||
- '/dev/sda'
|
- '/dev/sda'
|
||||||
- '/dev/sdb'
|
- '/dev/sdb'
|
||||||
|
@ -238,7 +237,6 @@ selection or other aspects of your cluster.
|
||||||
|
|
||||||
- ``ceph_origin``
|
- ``ceph_origin``
|
||||||
- ``public_network``
|
- ``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.
|
When deploying RGW instance(s) you are required to set the ``radosgw_interface`` or ``radosgw_address`` config option.
|
||||||
|
|
|
@ -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
|
The ``hosts`` file should contain the hosts needed for the scenario. This might
|
||||||
seem a bit repetitive since machines are already defined in
|
seem a bit repetitive since machines are already defined in
|
||||||
:ref:`vagrant_variables` but it allows granular changes to hosts (for example
|
: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:
|
``ceph-ansible`` configuration. For example:
|
||||||
|
|
||||||
.. code-block:: ini
|
.. code-block:: ini
|
||||||
|
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.5.10
|
mon0 public_network=192.168.1.0/24
|
||||||
mon1 monitor_address=192.168.5.11
|
mon1 public_network=192.168.2.0/24
|
||||||
mon2 monitor_interface=eth1
|
mon2 public_network=192.168.3.0/24
|
||||||
|
|
||||||
.. _group_vars:
|
.. _group_vars:
|
||||||
|
|
||||||
|
|
|
@ -311,14 +311,6 @@ dummy:
|
||||||
#rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
|
#rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
|
||||||
|
|
||||||
## Monitor options
|
## 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
|
# set to either ipv4 or ipv6, whichever your network is using
|
||||||
#ip_version: ipv4
|
#ip_version: ipv4
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ dummy:
|
||||||
# - --default-mon-cluster-log-to-stderr=true
|
# - --default-mon-cluster-log-to-stderr=true
|
||||||
# - -i={{ monitor_name }}
|
# - -i={{ monitor_name }}
|
||||||
# - --mon-data=/var/lib/ceph/mon/{{ cluster }}-{{ 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(',') }}
|
# - --mon-initial-members={{ groups[mon_group_name] | join(',') }}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -30,15 +30,6 @@
|
||||||
run_once: true
|
run_once: true
|
||||||
when: groups[mgr_group_name] is undefined or groups[mgr_group_name] | length == 0
|
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
|
- name: Validate dashboard configuration
|
||||||
when: dashboard_enabled | bool
|
when: dashboard_enabled | bool
|
||||||
run_once: true
|
run_once: true
|
||||||
|
@ -158,7 +149,7 @@
|
||||||
|
|
||||||
- name: Bootstrap the new cluster
|
- name: Bootstrap the new cluster
|
||||||
cephadm_bootstrap:
|
cephadm_bootstrap:
|
||||||
mon_ip: "{{ _current_monitor_address }}"
|
mon_ip: "{{ _monitor_addresses[inventory_hostname] }}"
|
||||||
image: "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
|
image: "{{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}"
|
||||||
docker: "{{ true if container_binary == 'docker' else false }}"
|
docker: "{{ true if container_binary == 'docker' else false }}"
|
||||||
pull: false
|
pull: false
|
||||||
|
|
|
@ -304,7 +304,7 @@
|
||||||
delegate_facts: true
|
delegate_facts: true
|
||||||
|
|
||||||
- name: Non container | waiting for the monitor to join the quorum...
|
- 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
|
register: ceph_health_raw
|
||||||
until:
|
until:
|
||||||
- ceph_health_raw.rc == 0
|
- ceph_health_raw.rc == 0
|
||||||
|
@ -317,7 +317,7 @@
|
||||||
|
|
||||||
- name: Container | waiting for the containerized monitor to join the quorum...
|
- name: Container | waiting for the containerized monitor to join the quorum...
|
||||||
ansible.builtin.command: >
|
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
|
register: ceph_health_raw
|
||||||
until:
|
until:
|
||||||
- ceph_health_raw.rc == 0
|
- ceph_health_raw.rc == 0
|
||||||
|
|
|
@ -13,11 +13,11 @@ auth client required = none
|
||||||
|
|
||||||
fsid = {{ fsid }}
|
fsid = {{ fsid }}
|
||||||
mon host = {% if nb_mon > 0 %}
|
mon host = {% if nb_mon > 0 %}
|
||||||
{% for host in _monitor_addresses -%}
|
{% for name, addr in _monitor_addresses.items() -%}
|
||||||
{% if mon_host_v1.enabled | bool %}
|
{% if mon_host_v1.enabled | bool %}
|
||||||
{% set _v1 = ',v1:' + host.addr + mon_host_v1.suffix %}
|
{% set _v1 = ',v1:' + addr + mon_host_v1.suffix %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
[{{ "v2:" + host.addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
|
[{{ "v2:" + addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
|
||||||
{%- if not loop.last -%},{%- endif %}
|
{%- if not loop.last -%},{%- endif %}
|
||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
{% elif nb_mon == 0 %}
|
{% elif nb_mon == 0 %}
|
||||||
|
|
|
@ -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
|
rbd_client_admin_socket_path: /var/run/ceph # must be writable by QEMU and allowed by SELinux or AppArmor
|
||||||
|
|
||||||
## Monitor options
|
## 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
|
# set to either ipv4 or ipv6, whichever your network is using
|
||||||
ip_version: ipv4
|
ip_version: ipv4
|
||||||
|
|
||||||
|
|
|
@ -1,59 +1,14 @@
|
||||||
---
|
---
|
||||||
- name: Set_fact _monitor_addresses to monitor_address_block ipv4
|
- name: Set_fact _monitor_addresses - ipv4
|
||||||
ansible.builtin.set_fact:
|
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, []) }}"
|
with_items: "{{ groups.get(mon_group_name, []) }}"
|
||||||
when:
|
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'
|
- ip_version == 'ipv4'
|
||||||
|
|
||||||
- name: Set_fact _monitor_addresses to monitor_address_block ipv6
|
- name: Set_fact _monitor_addresses - ipv6
|
||||||
ansible.builtin.set_fact:
|
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, []) }}"
|
with_items: "{{ groups.get(mon_group_name, []) }}"
|
||||||
when:
|
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'
|
- 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])
|
|
||||||
|
|
|
@ -54,7 +54,7 @@ ceph_mon_container_params:
|
||||||
- --default-mon-cluster-log-to-stderr=true
|
- --default-mon-cluster-log-to-stderr=true
|
||||||
- -i={{ monitor_name }}
|
- -i={{ monitor_name }}
|
||||||
- --mon-data=/var/lib/ceph/mon/{{ cluster }}-{{ 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(',') }}
|
- --mon-initial-members={{ groups[mon_group_name] | map('extract', hostvars, 'ansible_facts') | map(attribute='hostname') | join(',') }}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -158,13 +158,13 @@
|
||||||
ansible.builtin.command: >
|
ansible.builtin.command: >
|
||||||
{{ ceph_monmaptool_cmd }}
|
{{ ceph_monmaptool_cmd }}
|
||||||
--create
|
--create
|
||||||
{% for host in _monitor_addresses -%}
|
{% for name, addr in _monitor_addresses.items() -%}
|
||||||
--addv
|
--addv
|
||||||
{{ host.name }}
|
{{ hostvars[name]['ansible_facts']['hostname'] }}
|
||||||
{% if mon_host_v1.enabled | bool %}
|
{% if mon_host_v1.enabled | bool %}
|
||||||
{% set _v1 = ',v1:' + host.addr + mon_host_v1.suffix %}
|
{% set _v1 = ',v1:' + addr + mon_host_v1.suffix %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
[{{ "v2:" + host.addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
|
[{{ "v2:" + addr + mon_host_v2.suffix }}{{ _v1 | default('') }}]
|
||||||
{# {%- if not loop.last -%},{%- endif %} #}
|
{# {%- if not loop.last -%},{%- endif %} #}
|
||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
--enable-all-features
|
--enable-all-features
|
||||||
|
|
|
@ -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
|
|
|
@ -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:
|
ansible.builtin.fail:
|
||||||
msg: "{{ inventory_hostname }} does not have any {{ ip_version }} address on {{ monitor_address_block }}"
|
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]['monitor_address_block'].split(',')) | length == 0
|
when: hostvars[inventory_hostname]['ansible_facts']['all_' + ip_version + '_addresses'] | ips_in_ranges(hostvars[inventory_hostname]['public_network'].split(',')) | length == 0
|
||||||
|
|
|
@ -11,15 +11,6 @@
|
||||||
msg: "osd_objectstore must be 'bluestore''"
|
msg: "osd_objectstore must be 'bluestore''"
|
||||||
when: osd_objectstore not in ['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
|
- name: Validate radosgw network configuration
|
||||||
ansible.builtin.fail:
|
ansible.builtin.fail:
|
||||||
msg: "Either radosgw_address, radosgw_address_block or radosgw_interface must be provided"
|
msg: "Either radosgw_address, radosgw_address_block or radosgw_interface must be provided"
|
||||||
|
@ -107,22 +98,6 @@
|
||||||
- osd_group_name in group_names
|
- osd_group_name in group_names
|
||||||
- not osd_auto_discovery | default(False) | bool
|
- 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
|
- name: Include check_eth_rgw.yml
|
||||||
ansible.builtin.include_tasks: check_eth_rgw.yml
|
ansible.builtin.include_tasks: check_eth_rgw.yml
|
||||||
when:
|
when:
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.63.0/24"
|
public_network: "192.168.63.0/24"
|
||||||
cluster_network: "192.168.64.0/24"
|
cluster_network: "192.168.64.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.61.0/24"
|
public_network: "192.168.61.0/24"
|
||||||
cluster_network: "192.168.62.0/24"
|
cluster_network: "192.168.62.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.75.0/24"
|
public_network: "192.168.75.0/24"
|
||||||
cluster_network: "192.168.76.0/24"
|
cluster_network: "192.168.76.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: dev
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.73.0/24"
|
public_network: "192.168.73.0/24"
|
||||||
cluster_network: "192.168.74.0/24"
|
cluster_network: "192.168.74.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.55.0/24"
|
public_network: "192.168.55.0/24"
|
||||||
cluster_network: "192.168.56.0/24"
|
cluster_network: "192.168.56.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: dev
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.53.0/24"
|
public_network: "192.168.53.0/24"
|
||||||
cluster_network: "192.168.54.0/24"
|
cluster_network: "192.168.54.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.55.0/24"
|
public_network: "192.168.55.0/24"
|
||||||
cluster_network: "192.168.56.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.53.0/24"
|
public_network: "192.168.53.0/24"
|
||||||
cluster_network: "192.168.54.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.67.0/24"
|
public_network: "192.168.67.0/24"
|
||||||
cluster_network: "192.168.68.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.65.0/24"
|
public_network: "192.168.65.0/24"
|
||||||
cluster_network: "192.168.66.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ containerized_deployment: true
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.71.0/24"
|
public_network: "192.168.71.0/24"
|
||||||
cluster_network: "192.168.72.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.69.0/24"
|
public_network: "192.168.69.0/24"
|
||||||
cluster_network: "192.168.70.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
radosgw_num_instances: 2
|
radosgw_num_instances: 2
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
containerized_deployment: False
|
containerized_deployment: False
|
||||||
ceph_origin: repository
|
ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
radosgw_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_mon_docker_subnet: "{{ public_network }}"
|
||||||
openstack_config: True
|
openstack_config: True
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.17.0/24"
|
public_network: "192.168.17.0/24"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.17.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.17.12
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mgr0
|
mgr0
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
---
|
---
|
||||||
ceph_origin: repository
|
ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: dev
|
||||||
public_network: "192.168.1.0/24"
|
public_network: "192.168.110.0/24"
|
||||||
cluster_network: "192.168.2.0/24"
|
cluster_network: "192.168.220.0/24"
|
||||||
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_conf_overrides:
|
ceph_conf_overrides:
|
||||||
global:
|
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"
|
alertmanager_container_image: "quay.io/prometheus/alertmanager:v0.16.2"
|
||||||
grafana_container_image: "quay.io/ceph/ceph-grafana:6.7.4"
|
grafana_container_image: "quay.io/ceph/ceph-grafana:6.7.4"
|
||||||
grafana_server_group_name: ceph_monitoring
|
grafana_server_group_name: ceph_monitoring
|
||||||
|
dashboard_enabled: false
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
create_crush_tree: True
|
create_crush_tree: true
|
||||||
crush_rule_config: True
|
crush_rule_config: true
|
||||||
crush_rule_hdd:
|
crush_rule_hdd:
|
||||||
name: HDD
|
name: HDD
|
||||||
root: default
|
root: default
|
||||||
|
@ -8,4 +8,4 @@ crush_rule_hdd:
|
||||||
class: hdd
|
class: hdd
|
||||||
default: true
|
default: true
|
||||||
crush_rules:
|
crush_rules:
|
||||||
- "{{ crush_rule_hdd }}"
|
- "{{ crush_rule_hdd }}"
|
||||||
|
|
|
@ -5,6 +5,6 @@ ganesha_conf_overrides: |
|
||||||
CACHEINODE {
|
CACHEINODE {
|
||||||
Entries_HWMark = 100000;
|
Entries_HWMark = 100000;
|
||||||
}
|
}
|
||||||
nfs_ganesha_stable: true
|
nfs_ganesha_stable: false
|
||||||
nfs_ganesha_dev: false
|
nfs_ganesha_dev: true
|
||||||
nfs_ganesha_flavor: "ceph_main"
|
nfs_ganesha_flavor: "ceph_main"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.1.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.1.12
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mgr0
|
mgr0
|
||||||
|
|
|
@ -2,9 +2,9 @@
|
||||||
docker=True
|
docker=True
|
||||||
|
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.1.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.1.12
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mgr0
|
mgr0
|
||||||
|
|
|
@ -19,8 +19,8 @@ mgr_vms: 1
|
||||||
ceph_install_source: stable
|
ceph_install_source: stable
|
||||||
|
|
||||||
# SUBNETS TO USE FOR THE VMS
|
# SUBNETS TO USE FOR THE VMS
|
||||||
public_subnet: 192.168.1
|
public_subnet: 192.168.110
|
||||||
cluster_subnet: 192.168.2
|
cluster_subnet: 192.168.220
|
||||||
|
|
||||||
# MEMORY
|
# MEMORY
|
||||||
# set 1024 for CentOS
|
# set 1024 for CentOS
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
ip_version: ipv6
|
ip_version: ipv6
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address="fdec:f1fb:29cd:6940::10"
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address="fdec:f1fb:29cd:6940::12"
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mgr0
|
mgr0
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address="fdec:f1fb:29cd:6940::10"
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address="fdec:f1fb:29cd:6940::12"
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mgr0
|
mgr0
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
---
|
---
|
||||||
monitor_interface: eth1
|
|
||||||
public_network: "192.168.30.0/24"
|
public_network: "192.168.30.0/24"
|
||||||
cluster_network: "192.168.31.0/24"
|
cluster_network: "192.168.31.0/24"
|
||||||
dashboard_admin_password: $sX!cD$rYU6qR^B!
|
dashboard_admin_password: $sX!cD$rYU6qR^B!
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
radosgw_num_instances: 2
|
radosgw_num_instances: 2
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
containerized_deployment: False
|
containerized_deployment: False
|
||||||
ceph_origin: repository
|
ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
radosgw_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_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.15.0/24"
|
public_network: "192.168.15.0/24"
|
||||||
|
|
|
@ -5,7 +5,6 @@ docker: True
|
||||||
container_binary: docker
|
container_binary: docker
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.58.0/24"
|
public_network: "192.168.58.0/24"
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
radosgw_num_instances: 2
|
radosgw_num_instances: 2
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
containerized_deployment: False
|
containerized_deployment: False
|
||||||
ceph_origin: repository
|
ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
radosgw_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_mon_docker_subnet: "{{ public_network }}"
|
||||||
openstack_config: True
|
openstack_config: True
|
||||||
|
|
|
@ -10,7 +10,6 @@ ceph_repository: dev
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.39.0/24"
|
public_network: "192.168.39.0/24"
|
||||||
cluster_network: "192.168.40.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -5,7 +5,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.39.0/24"
|
public_network: "192.168.39.0/24"
|
||||||
cluster_network: "192.168.40.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
crush_device_class: test
|
crush_device_class: test
|
||||||
|
|
|
@ -10,7 +10,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.39.0/24"
|
public_network: "192.168.39.0/24"
|
||||||
cluster_network: "192.168.40.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
crush_device_class: test
|
crush_device_class: test
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
|
|
|
@ -5,7 +5,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.39.0/24"
|
public_network: "192.168.39.0/24"
|
||||||
cluster_network: "192.168.40.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
crush_device_class: test
|
crush_device_class: test
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
|
|
|
@ -8,7 +8,6 @@ ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
public_network: "192.168.33.0/24"
|
public_network: "192.168.33.0/24"
|
||||||
cluster_network: "192.168.34.0/24"
|
cluster_network: "192.168.34.0/24"
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
containerized_deployment: true
|
containerized_deployment: true
|
||||||
# test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
|
# test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
public_network: "192.168.39.0/24"
|
public_network: "192.168.39.0/24"
|
||||||
cluster_network: "192.168.40.0/24"
|
cluster_network: "192.168.40.0/24"
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
# test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
|
# test-volume is created by tests/functional/lvm_setup.yml from /dev/sdb
|
||||||
os_tuning_params:
|
os_tuning_params:
|
||||||
|
|
|
@ -5,7 +5,6 @@ ceph_repository: community
|
||||||
cluster: test
|
cluster: test
|
||||||
public_network: "192.168.1.0/24"
|
public_network: "192.168.1.0/24"
|
||||||
cluster_network: "192.168.2.0/24"
|
cluster_network: "192.168.2.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
devices:
|
devices:
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.30.0/24"
|
public_network: "192.168.30.0/24"
|
||||||
|
|
|
@ -6,7 +6,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.144.0/24"
|
public_network: "192.168.144.0/24"
|
||||||
cluster_network: "192.168.145.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -6,7 +6,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.146.0/24"
|
public_network: "192.168.146.0/24"
|
||||||
cluster_network: "192.168.147.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.140.0/24"
|
public_network: "192.168.140.0/24"
|
||||||
cluster_network: "192.168.141.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@ ceph_repository: community
|
||||||
cluster: ceph
|
cluster: ceph
|
||||||
public_network: "192.168.142.0/24"
|
public_network: "192.168.142.0/24"
|
||||||
cluster_network: "192.168.143.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.79.0/24"
|
public_network: "192.168.79.0/24"
|
||||||
cluster_network: "192.168.80.0/24"
|
cluster_network: "192.168.80.0/24"
|
||||||
|
|
|
@ -3,7 +3,6 @@ ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
public_network: "192.168.77.0/24"
|
public_network: "192.168.77.0/24"
|
||||||
cluster_network: "192.168.78.0/24"
|
cluster_network: "192.168.78.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
journal_size: 100
|
journal_size: 100
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.83.0/24"
|
public_network: "192.168.83.0/24"
|
||||||
cluster_network: "192.168.84.0/24"
|
cluster_network: "192.168.84.0/24"
|
||||||
|
|
|
@ -3,7 +3,6 @@ ceph_origin: repository
|
||||||
ceph_repository: dev
|
ceph_repository: dev
|
||||||
public_network: "192.168.81.0/24"
|
public_network: "192.168.81.0/24"
|
||||||
cluster_network: "192.168.82.0/24"
|
cluster_network: "192.168.82.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
radosgw_interface: eth1
|
radosgw_interface: eth1
|
||||||
ceph_conf_overrides:
|
ceph_conf_overrides:
|
||||||
global:
|
global:
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.17.0/24"
|
public_network: "192.168.17.0/24"
|
||||||
cluster_network: "192.168.18.0/24"
|
cluster_network: "192.168.18.0/24"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.1.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.1.12
|
mon2
|
||||||
|
|
||||||
[osds]
|
[osds]
|
||||||
osd0
|
osd0
|
|
@ -2,9 +2,9 @@
|
||||||
docker=True
|
docker=True
|
||||||
|
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.1.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.1.12
|
mon2
|
||||||
|
|
||||||
[osds]
|
[osds]
|
||||||
osd0
|
osd0
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.73.0/24"
|
public_network: "192.168.73.0/24"
|
||||||
cluster_network: "192.168.74.0/24"
|
cluster_network: "192.168.74.0/24"
|
||||||
|
|
|
@ -5,7 +5,6 @@ docker: True
|
||||||
public_network: "192.168.87.0/24"
|
public_network: "192.168.87.0/24"
|
||||||
cluster_network: "192.168.88.0/24"
|
cluster_network: "192.168.88.0/24"
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
monitor_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
ceph_conf_overrides:
|
ceph_conf_overrides:
|
||||||
global:
|
global:
|
||||||
|
|
|
@ -3,7 +3,6 @@ ceph_origin: repository
|
||||||
ceph_repository: community
|
ceph_repository: community
|
||||||
public_network: "192.168.85.0/24"
|
public_network: "192.168.85.0/24"
|
||||||
cluster_network: "192.168.86.0/24"
|
cluster_network: "192.168.86.0/24"
|
||||||
monitor_interface: eth1
|
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
ceph_conf_overrides:
|
ceph_conf_overrides:
|
||||||
|
|
|
@ -6,7 +6,6 @@ docker: True
|
||||||
containerized_deployment: True
|
containerized_deployment: True
|
||||||
public_network: "192.168.91.0/24"
|
public_network: "192.168.91.0/24"
|
||||||
cluster_network: "192.168.92.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
ceph_conf_overrides:
|
ceph_conf_overrides:
|
||||||
|
|
|
@ -3,7 +3,6 @@ ceph_origin: repository
|
||||||
ceph_repository: dev
|
ceph_repository: dev
|
||||||
public_network: "192.168.89.0/24"
|
public_network: "192.168.89.0/24"
|
||||||
cluster_network: "192.168.90.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' }}"
|
radosgw_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
osd_objectstore: "bluestore"
|
osd_objectstore: "bluestore"
|
||||||
copy_admin_key: true
|
copy_admin_key: true
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
docker: True
|
docker: True
|
||||||
|
|
||||||
containerized_deployment: 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_interface: "{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
||||||
ceph_mon_docker_subnet: "{{ public_network }}"
|
ceph_mon_docker_subnet: "{{ public_network }}"
|
||||||
public_network: "192.168.5.0/24"
|
public_network: "192.168.5.0/24"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.5.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.5.12
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mon0
|
mon0
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[mons]
|
[mons]
|
||||||
mon0 monitor_address=192.168.3.10
|
mon0
|
||||||
mon1 monitor_interface="{{ 'eth1' if ansible_facts['distribution'] == 'CentOS' else 'ens6' }}"
|
mon1
|
||||||
mon2 monitor_address=192.168.3.12
|
mon2
|
||||||
|
|
||||||
[mgrs]
|
[mgrs]
|
||||||
mon0
|
mon0
|
||||||
|
|
Loading…
Reference in New Issue