1.2. 为超融合节点准备 overcloud 角色
				要将节点指定为超融合,您需要定义一个超融合角色。Red Hat OpenStack Platform (RHOSP)为超融合节点提供预定义的角色 ComputeHCI。此角色并置计算和 Ceph 对象存储守护进程(OSD)服务,允许您将它们部署到同一超融合节点上。
			
流程
- 
						以 stack用户的身份登录 undercloud。
- Source - stackrc文件:- source ~/stackrc - [stack@director ~]$ source ~/stackrc- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 生成包含 - ComputeHCI角色的新自定义角色数据文件,以及其他要用于 overcloud 的角色。以下示例生成角色数据文件- roles_data_hci.yaml,其中包括角色- Controller,- ComputeHCI,- Compute, 和- CephStorage:- openstack overcloud roles \ generate -o /home/stack/templates/roles_data_hci.yaml \ Controller ComputeHCI Compute CephStorage - (undercloud)$ openstack overcloud roles \ generate -o /home/stack/templates/roles_data_hci.yaml \ Controller ComputeHCI Compute CephStorage- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 生成的自定义角色数据文件中为 - ComputeHCI角色列出的网络包括 Compute 和 Storage 服务所需的网络,例如:- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 
						创建 network_data.yaml文件的本地副本,来将可组合网络添加到您的 overcloud 中。network_data.yaml文件与默认网络环境文件/usr/share/openstack-tripleo-heat-templates/environmentsProvisioning 进行交互,以将您为ComputeHCI角色定义的网络与超融合节点相关联。有关更多信息,请参阅高级 Overcloud 自定义指南中的 添加可组合网络。
- 
						为提高 Red Hat Ceph Storage 的性能,请在 network_data.yaml本地副本中将Storage和StorageMgmt网络的 MTU 设置更新为9000。如需更多信息,请参阅 Configuring MTU Settings in Director 和 Configuring jumbo frames。
- 为超融合节点创建 - computeHCIovercloud 类别:- openstack flavor create --id auto \ --ram <ram_size_mb> --disk <disk_size_gb> \ --vcpus <no_vcpus> computeHCI - (undercloud)$ openstack flavor create --id auto \ --ram <ram_size_mb> --disk <disk_size_gb> \ --vcpus <no_vcpus> computeHCI- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 
								将 <ram_size_mb>替换为裸机节点的 RAM,以 MB 为单位。
- 
								将 <disk_size_gb>替换为裸机节点中的磁盘大小(以 GB 为单位)。
- 
								将 <no_vcpus>替换为裸机节点中的 CPU 数量。
 注意- 这些属性不可用于调度实例。但是,计算调度程序使用磁盘大小来确定根分区大小。 
- 
								将 
- 检索节点列表来识别它们的 UUID: - openstack baremetal node list - (undercloud)$ openstack baremetal node list- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 使用自定义 HCI 资源类标记您要指定为超融合的每个裸机节点: - openstack baremetal node set \ --resource-class baremetal.HCI <node> - (undercloud)$ openstack baremetal node set \ --resource-class baremetal.HCI <node>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 将 - <node>替换为裸机节点的 ID。
- 将 - computeHCI类别与自定义 HCI 资源类关联:- openstack flavor set \ --property resources:CUSTOM_BAREMETAL_HCI=1 \ computeHCI - (undercloud)$ openstack flavor set \ --property resources:CUSTOM_BAREMETAL_HCI=1 \ computeHCI- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 要确定与 Bare Metal 服务节点的资源类型对应的自定义资源类的名称,请将资源类转换为大写,请将所有标点替换为下划线,并将 prefix 替换为 - CUSTOM_。注意- 类别只能请求一个裸机资源类实例。 
- 设置以下类别属性,以防止计算调度程序使用裸机类别属性来调度实例: - openstack flavor set \ --property resources:VCPU=0 \ --property resources:MEMORY_MB=0 \ --property resources:DISK_GB=0 computeHCI - (undercloud)$ openstack flavor set \ --property resources:VCPU=0 \ --property resources:MEMORY_MB=0 \ --property resources:DISK_GB=0 computeHCI- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 将以下参数添加到 - node-info.yaml文件中,以指定超融合和 Controller 节点的数量,以及用于超融合和控制器指定的类别:- parameter_defaults: OvercloudComputeHCIFlavor: computeHCI ComputeHCICount: 3 Controller: control ControllerCount: 3 - parameter_defaults: OvercloudComputeHCIFlavor: computeHCI ComputeHCICount: 3 Controller: control ControllerCount: 3- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
1.2.1. 为多磁盘集群定义根磁盘
如果节点使用多个磁盘,则 Director 在置备过程上必须识别根磁盘。例如,大多数 Ceph Storage 节点使用多个磁盘。默认情况下,director 在置备过程中将 overcloud 镜像写入根磁盘
您可以定义多个属性以帮助 director 识别根磁盘:
- 
							model(字符串):设备识别码。
- 
							vendor(字符串):设备厂商。
- 
							serial(字符串):磁盘序列号。
- 
							hctl(字符串):SCSI 的 Host:Channel:Target:Lun。
- 
							size(整数):设备的大小(以 GB 为单位)。
- 
							wwn(字符串):唯一的存储 ID。
- 
							wwn_with_extension(字符串):唯一存储 ID 附加厂商扩展名。
- 
							wwn_vendor_extension(字符串):唯一厂商存储标识符。
- 
							rotational(布尔值):旋转磁盘设备为 true (HDD),否则为 false (SSD)。
- 
							name(字符串):设备名称,例如:/dev/sdb1。
						仅对具有持久名称的设备使用 name 属性。不要使用 name 来设置任何其他设备的根磁盘,因为此值在节点引导时可能会改变。
					
您可以使用其序列号指定根设备。
步骤
- 从每个节点的硬件内省检查磁盘信息。运行以下命令以显示节点的磁盘信息: - openstack baremetal introspection data save 1a4e30da-b6dc-499d-ba87-0bd8a3819bc0 | jq ".inventory.disks" - (undercloud)$ openstack baremetal introspection data save 1a4e30da-b6dc-499d-ba87-0bd8a3819bc0 | jq ".inventory.disks"- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 例如,一个节点的数据可能会显示 3 个磁盘: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 输入 - openstack baremetal node set --property root_device=,为节点设置根磁盘。包括用于定义根磁盘的最合适的硬件属性值。- openstack baremetal node set --property root_device='{"serial":"<serial_number>"}' <node-uuid>- (undercloud)$ openstack baremetal node set --property root_device='{"serial":"<serial_number>"}' <node-uuid>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 例如:要将根设备设定为磁盘 2,其序列号为 - 61866da04f380d001ea4e13c12e36ad6,输入以下命令:- openstack baremetal node set --property root_device='{"serial": "61866da04f380d001ea4e13c12e36ad6"}' 1a4e30da-b6dc-499d-ba87-0bd8a3819bc0- (undercloud)$ openstack baremetal node set --property root_device='{"serial": "61866da04f380d001ea4e13c12e36ad6"}' 1a4e30da-b6dc-499d-ba87-0bd8a3819bc0- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 确保配置每个节点的 BIOS 以包括从您选择的根磁盘引导。将引导顺序配置为首先从网络引导,然后从根磁盘引导。 - director 识别特定磁盘以用作根磁盘。运行 - openstack overcloud deploy命令时,director 置备 overcloud 镜像并将其写入根磁盘。