此内容没有您所选择的语言版本。
Chapter 3. Deploying Ceph services on dedicated nodes
By default, the director deploys the Ceph MON and Ceph MDS services on the Controller nodes. This is suitable for small deployments. However, with larger deployments Red Hat recommends that you deploy the Ceph MON and Ceph MDS services on dedicated nodes to improve the performance of your Ceph cluster. Create a custom role for services that you want to isolate on dedicated nodes.
For more information about custom roles, see Creating a New Role in the Advanced Overcloud Customization guide.
The director uses the following file as a default reference for all overcloud roles:
-
/usr/share/openstack-tripleo-heat-templates/roles_data.yaml
3.1. Creating a custom roles file 复制链接链接已复制到粘贴板!
To create a custom role file, complete the following steps:
Procedure
Make a copy of the
roles_data.yamlfile in/home/stack/templates/so that you can add custom roles:$ cp /usr/share/openstack-tripleo-heat-templates/roles_data.yaml /home/stack/templates/roles_data_custom.yaml-
Include the new custom role file in the
openstack overcloud deploycommand.
Complete the following steps to create a custom role CephMon and flavor ceph-mon for the Ceph MON role. You must already have a copy of the default roles data file as described in Chapter 3, Deploying Ceph services on dedicated nodes.
Procedure
-
Open the
/home/stack/templates/roles_data_custom.yamlfile. - Remove the service entry for the Ceph MON service (namely, OS::TripleO::Services::CephMon) from the Controller role.
Add the OS::TripleO::Services::CephClient service to the Controller role:
[...] - name: Controller # the 'primary' role goes first CountDefault: 1 ServicesDefault: - OS::TripleO::Services::CACerts - OS::TripleO::Services::CephMds - OS::TripleO::Services::CephClient - OS::TripleO::Services::CephExternal - OS::TripleO::Services::CephRbdMirror - OS::TripleO::Services::CephRgw - OS::TripleO::Services::CinderApi [...]At the end of the
roles_data_custom.yamlfile, add a customCephMonrole that contains the Ceph MON service and all the other required node services:- name: CephMon ServicesDefault: # Common Services - OS::TripleO::Services::AuditD - OS::TripleO::Services::CACerts - OS::TripleO::Services::CertmongerUser - OS::TripleO::Services::Collectd - OS::TripleO::Services::Docker - OS::TripleO::Services::FluentdClient - OS::TripleO::Services::Kernel - OS::TripleO::Services::Ntp - OS::TripleO::Services::ContainersLogrotateCrond - OS::TripleO::Services::SensuClient - OS::TripleO::Services::Snmp - OS::TripleO::Services::Timezone - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::Tuned # Role-Specific Services - OS::TripleO::Services::CephMonRun the
openstack flavor createcommand to define a new flavor namedceph-monfor theCephMonrole:$ openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 ceph-monNoteFor details about this command, run
openstack flavor create --help.Map this flavor to a new profile, also named
ceph-mon:$ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="ceph-mon" ceph-monNoteFor details about this command, run
openstack flavor set --help.Tag nodes into the new
ceph-monprofile:$ ironic node-update UUID add properties/capabilities='profile:ceph-mon,boot_option:local'Add the following configuration to the
node-info.yamlfile to associate theceph-monflavor with the CephMon role:parameter_defaults: OvercloudCephMonFlavor: CephMon CephMonCount: 3
For more information about tagging nodes, see Section 2.4, “Manually tagging nodes into profiles”. For more information about custom role profiles, see Tagging Nodes Into Profiles.
Complete the following steps to create a custom role CephMDS and flavor ceph-mds for the Ceph MDS role. You must already have a copy of the default roles data file as described in Chapter 3, Deploying Ceph services on dedicated nodes.
Procedure
-
Open the
/home/stack/templates/roles_data_custom.yamlfile. Remove the service entry for the Ceph MDS service (namely, OS::TripleO::Services::CephMds) from the Controller role:
[...] - name: Controller # the 'primary' role goes first CountDefault: 1 ServicesDefault: - OS::TripleO::Services::CACerts # - OS::TripleO::Services::CephMds1 - OS::TripleO::Services::CephMon - OS::TripleO::Services::CephExternal - OS::TripleO::Services::CephRbdMirror - OS::TripleO::Services::CephRgw - OS::TripleO::Services::CinderApi [...]- 1
- Comment out this line. In the next step, you add this service to the new custom role.
At the end of the
roles_data_custom.yamlfile, add a customCephMDSrole containing the Ceph MDS service and all the other required node services:- name: CephMDS ServicesDefault: # Common Services - OS::TripleO::Services::AuditD - OS::TripleO::Services::CACerts - OS::TripleO::Services::CertmongerUser - OS::TripleO::Services::Collectd - OS::TripleO::Services::Docker - OS::TripleO::Services::FluentdClient - OS::TripleO::Services::Kernel - OS::TripleO::Services::Ntp - OS::TripleO::Services::ContainersLogrotateCrond - OS::TripleO::Services::SensuClient - OS::TripleO::Services::Snmp - OS::TripleO::Services::Timezone - OS::TripleO::Services::TripleoFirewall - OS::TripleO::Services::TripleoPackages - OS::TripleO::Services::Tuned # Role-Specific Services - OS::TripleO::Services::CephMds - OS::TripleO::Services::CephClient1 - 1
- The Ceph MDS service requires the admin keyring, which you can set with either the Ceph MON or Ceph Client service. If you deploy Ceph MDS on a dedicated node without the Ceph MON service, you must also include the Ceph Client service in the new
CephMDSrole.
Run the
openstack flavor createcommand to define a new flavor namedceph-mdsfor this role:$ openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 ceph-mdsNoteFor details about this command, run
openstack flavor create --help.Map the new
ceph-mdsflavor to a new profile, also namedceph-mds:$ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="ceph-mds" ceph-mdsNoteFor details about this command, run
openstack flavor set --help.-
Tag nodes into the new
ceph-mdsprofile:
$ ironic node-update UUID add properties/capabilities='profile:ceph-mds,boot_option:local'
For more information about tagging nodes, see Section 2.4, “Manually tagging nodes into profiles”. For more information about custom role profiles, see Tagging Nodes Into Profiles.