2.9. 块存储服务(cinder)一致性组
您可以使用 Block Storage (cinder)服务将一致性组设置为将多个卷作为单个实体分组在一起。这意味着您可以同时对多个卷执行操作,而不是单独操作。您可以使用一致性组为多个卷同时创建快照。这也意味着您可以同时恢复或克隆这些卷。
卷可以是多个一致性组的成员。但是,在将卷添加到一致性组后,您无法删除、重新键入或迁移卷。
2.9.1. 配置块存储服务一致性组
					默认情况下,块存储安全策略禁用一致性组 API。在使用这个功能前,您必须在此处启用它。托管 Block Storage API 服务的节点的 /etc/cinder/policy.json 文件中的相关一致性组条目 openstack-cinder-api 列出默认设置:
				
					您必须在环境文件中更改这些设置,然后使用 openstack overcloud deploy 命令将它们部署到 overcloud。不要直接编辑 JSON 文件,因为在下次部署 overcloud 时更改会被覆盖。
				
先决条件
- 成功安装 undercloud。有关更多信息,请参阅在 undercloud 上安装 director。
流程
- 
							编辑环境文件,并将新条目添加到 parameter_defaults部分。这样可确保容器更新条目,并在 director 使用openstack overcloud deploy命令重新部署环境时保留。
- 使用 - CinderApiPolicies添加新部分到环境文件,以设置一致性组设置。带有 JSON 文件中的默认设置的等同的- parameter_defaults部分以以下方式显示:- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 
							值 'group:nobody'确定没有组可以使用此功能,以便其有效禁用。要启用它,请将组更改为另一个值。
- 为提高安全性,请将一致性组 API 和卷类型管理 API 的权限设置为相同。默认情况下,卷类型管理 API 会在同一个 - /etc/cinder/policy.json_ file文件中设置为- "rule:admin_or_owner"。- "volume_extension:types_manage": "rule:admin_or_owner", - "volume_extension:types_manage": "rule:admin_or_owner",- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 要使所有用户可以使用一致性组功能,请设置 API 策略条目,允许用户创建、使用和管理自己的一致性组。要做到这一点,请使用 - rule:admin_or_owner:- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 当您在 - /home/stack/templates/中创建环境文件后,以 stack 用户身份登录并部署配置:- openstack overcloud deploy --templates \ -e /home/stack/templates/<ENV_FILE>.yaml - $ openstack overcloud deploy --templates \ -e /home/stack/templates/<ENV_FILE>.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 将 - <ENV_FILE.yaml> 替换为您添加的- ExtraConfig设置。重要- 如果您在创建 overcloud 时传递任何额外的环境文件,请使用 - -e选项再次传递它们,以避免对 overcloud 进行不必要的更改。
					有关 openstack overcloud deploy 命令的更多信息 ,请参阅 Director 安装和使用指南中的部署命令。
				
2.9.2. 使用仪表板创建块存储一致性组
启用一致性组 API 后,您可以开始创建一致性组。
先决条件
- 成功安装 undercloud。有关更多信息,请参阅在 undercloud 上安装 director。
- 成功部署 overcloud。如需更多信息,请参阅使用 CLI 工具创建基本 overcloud。
- 访问 Red Hat OpenStack Platform (RHOSP) Dashboard (horizon)。有关更多信息,请参阅 Overcloud 部署输出。
流程
- 在仪表板中作为 admin 用户,选择 Project > Compute > Volumes > Volume Consistency Groups。
- 点 Create Consistency Group。
- 在向导的 Consistency Group Information 选项卡中,为您的一致性组输入名称和描述。然后,指定其 可用区。
- 您还可以在一致性组中添加卷类型。当您在一致性组中创建卷时,块存储服务会应用来自这些卷类型的兼容设置。要添加卷类型,请点击所有可用卷类型列表中的 + 按钮。
- 点 Create Consistency Group。它会出现在 卷组表中。
2.9.3. 使用控制面板管理块存储服务一致性组
使用 Red Hat OpenStack Platform (RHOSP)控制面板管理块存储卷的一致性组。
先决条件
- 成功安装 undercloud。如需更多信息,请参阅 Director 安装和使用 中的 在 undercloud 上安装 director。
- 成功部署 overcloud。如需更多信息,请参阅 Director 安装和使用中的使用 CLI 工具创建基本 overcloud。
- 访问 Red Hat OpenStack Platform (RHOSP) Dashboard (horizon)。有关更多信息,请参阅 Director 安装和使用中的 Overcloud 部署输出。
流程
- 可选:您可以通过从 Action 列中选择 Edit Consistency Group 来更改一致性组的名称或描述。
- 要直接从一致性组中添加或删除卷,作为仪表板中的 admin 用户,请选择 Project > Compute > Volumes > Volume Consistency Groups。
- 查找您要配置的一致性组。在该一致性组的 Actions 列中,选择 Manage Volumes。这将启动 Add/Remove Consistency Group Volumes 向导。 - 要将卷添加到一致性组中,请点击 所有可用卷 列表中的 + 按钮。
- 要从一致性组中删除卷,请点击所选 卷 列表中的 - 按钮。
 
- 单击 Edit Consistency Group。
2.9.4. 为块存储服务创建和管理一致性组快照
将卷添加到一致性组后,您现在可以从其中创建快照。
先决条件
- 成功安装 undercloud。有关更多信息,请参阅在 undercloud 上安装 director。
流程
- 在托管 - openstack-cinder-api的节点,使用命令行以- admin用户身份登录,并输入:- export OS_VOLUME_API_VERSION=2 - # export OS_VOLUME_API_VERSION=2- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 这会将客户端配置为使用 - openstack-cinder-api的版本- 2。
- 列出所有可用一致性组及其对应的 ID: - cinder consisgroup-list - # cinder consisgroup-list- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 使用一致性组创建快照: - cinder cgsnapshot-create --name <CGSNAPNAME> --description "<DESCRIPTION>" <CGNAMEID> - # cinder cgsnapshot-create --name <CGSNAPNAME> --description "<DESCRIPTION>" <CGNAMEID>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 替换: - 
									<CGSNAPNAME>,带有快照名称(可选)。
- 
									<DESCRIPTION>,包含快照的描述(可选)。
- 
									<CGNAMEID>带有一致性组的名称或 ID。
 
- 
									
- 显示所有可用一致性组快照的列表: - cinder cgsnapshot-list - # cinder cgsnapshot-list- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
2.9.5. 克隆块存储服务一致性组
您还可以使用一致性组同时创建一系列预先配置的卷。您可以通过克隆现有一致性组或恢复一致性组快照来完成此操作。两个进程都使用相同的命令。
先决条件
- 成功安装 undercloud。有关更多信息,请参阅在 undercloud 上安装 director。
- 成功部署 overcloud。如需更多信息,请参阅使用 CLI 工具创建基本 overcloud。
流程
- 克隆现有的一致性组: - cinder consisgroup-create-from-src --source-cg <CGNAMEID> --name <CGNAME> --description "<DESCRIPTION>" - # cinder consisgroup-create-from-src --source-cg <CGNAMEID> --name <CGNAME> --description "<DESCRIPTION>"- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 替换: - 
									<CGNAMEID> 是您要克隆的一致性组的名称或 ID。
- 
									<CGNAME> 是一致性组的名称(可选)。
- 
									<DESCRIPTION> 是一致性组的描述(可选)。
 
- 
									
- 从一致性组快照创建一致性组: - cinder consisgroup-create-from-src --cgsnapshot <CGSNAPNAME> --name <CGNAME> --description "<DESCRIPTION> - # cinder consisgroup-create-from-src --cgsnapshot <CGSNAPNAME> --name <CGNAME> --description "<DESCRIPTION>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 将 < - CGSNAPNAME> 替换为您要用于创建一致性组的快照的名称或 ID。