Configure Ceph clients via tripleo-ceph-client (not ceph-ansible)

Default CephAnsibleSkipClient to True and CephConfigPath to
/var/lib/tripleo-config/ceph (instead of /etc/ceph) and set
these paramters explicitly in scenario00{1,4}. This will
result in all Ceph client configuration being done not by
ceph-ansible but by the new tripleo-ceph-client role from
tripleo-ansible.

Add the CephClient service to all Controller* roles which will
use Ceph. The service could have always been there as there are
Ceph clients on the these controllers, but it was not because
ceph-ansible configured clients as a side effect. With new
CephConfigPath default they no longer overlap so the service
is required.

Add support for CephExternalMultiConfig via tripleo-ceph-client
by looping on the contents of the CephExternalMultiConfig list
and passing each map as the dcn variable while including the
tripleo-ceph-client role each time.

Related-Bug: #1708302
Depends-On: I938ab604859fda88f3491399444841a3a373d162
Change-Id: I784e6a476752ed701192b3a0155c42edd4836d97
This commit is contained in:
Francesco Pantano 2020-11-02 14:10:52 +01:00 committed by John Fulton
parent 0d8a2909ae
commit 79686663e8
25 changed files with 34 additions and 17 deletions

View File

@ -188,6 +188,8 @@ parameter_defaults:
foo: bar
NfsUrl: 127.0.0.1
CephMsgrSecureMode: true
CephAnsibleSkipClient: false
CephConfigPath: "/etc/ceph"
LVMFilterEnabled: true
LVMFilterAllowlist:
- /dev/loop2

View File

@ -335,7 +335,7 @@ parameters:
default: false
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
CephAnsibleSkipClient:
@ -343,7 +343,7 @@ parameters:
This boolean (when true) prevents the ceph-ansible client role execution
by adding the ceph-ansible tag 'ceph_client' to the --skip-tags list.
type: boolean
default: false
default: true
parameter_groups:
- label: deprecated
@ -714,6 +714,14 @@ outputs:
vars:
tripleo_ceph_client_config_home: {get_param: CephConfigPath}
when: {get_param: CephAnsibleSkipClient}
- include_role:
name: tripleo_ceph_client
name: tripleo client role
vars:
tripleo_ceph_client_config_home: {get_param: CephConfigPath}
dcn: "{{ item }}"
loop: "{{ ceph_external_multi_config }}"
when: {get_param: CephAnsibleSkipClient}
- name: ensure ceph health is OK before proceeding
import_role:
role: ceph

View File

@ -85,7 +85,7 @@ parameters:
file: /var/log/containers/cinder/cinder-backup.log
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -75,7 +75,7 @@ parameters:
default: false
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -178,7 +178,7 @@ parameters:
default: false
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -73,7 +73,7 @@ parameters:
file: /var/log/containers/cinder/cinder-volume.log
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -278,7 +278,7 @@ parameters:
letters and numbers.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
MultipathdEnable:

View File

@ -124,7 +124,7 @@ parameters:
"origin" header.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -71,7 +71,7 @@ parameters:
type: number
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -63,7 +63,7 @@ parameters:
type: string
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -41,7 +41,7 @@ parameters:
letters and numbers.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
# CephFS backend params:

View File

@ -40,7 +40,7 @@ parameters:
- allowed_values: ['CEPHFS', 'NFS']
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -50,7 +50,7 @@ parameters:
letters and numbers.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
MonitoringSubscriptionManilaShare:

View File

@ -68,7 +68,7 @@ parameters:
perform configuration on a Heat stack-update.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -59,7 +59,7 @@ parameters:
letters and numbers.
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.
NovaComputeOptVolumes:

View File

@ -238,7 +238,7 @@ parameters:
- role_specific
CephConfigPath:
type: string
default: "/etc/ceph"
default: "/var/lib/tripleo-config/ceph"
description: |
The path where the Ceph Cluster config files are stored on the host.

View File

@ -51,6 +51,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -35,6 +35,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephMds
- OS::TripleO::Services::CephMgr

View File

@ -34,6 +34,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephMds
- OS::TripleO::Services::CephMgr

View File

@ -39,6 +39,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -48,6 +48,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -49,6 +49,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -49,6 +49,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -54,6 +54,7 @@
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::CeilometerAgentCentral
- OS::TripleO::Services::CeilometerAgentNotification
- OS::TripleO::Services::CephClient
- OS::TripleO::Services::CephExternal
- OS::TripleO::Services::CephGrafana
- OS::TripleO::Services::CephMds

View File

@ -497,7 +497,6 @@ def validate_controller_no_ceph_role(filename, tpl):
for role in tpl:
if role['name'] == 'ControllerNoCeph':
services = role['ServicesDefault']
services.remove('OS::TripleO::Services::CephClient')
services.append('OS::TripleO::Services::CephMds')
services.append('OS::TripleO::Services::CephMgr')
services.append('OS::TripleO::Services::CephGrafana')