3.4. 在 VMware 上创建 OpenShift Container Storage 集群
VMware 支持以下三种类型的本地存储:
- 虚拟机磁盘 (VMDK)
- 原始设备映射 (RDM)
- VMDirectPath I/O
先决条件
- 确保满足使用本地存储设备安装 OpenShift Container Storage 的要求部分中的所有要求。
- 您必须至少有三个 worker 节点,其存储类型和大小与每个节点相同,才能在 VMware 上使用本地存储设备。
-
对于 VMware 上的虚拟机,请确保将
disk.EnableUUID
选项设置为TRUE
。您需要具有 vCenter 帐户特权才能配置虚拟机。如需更多信息,请参阅 所需的 vCenter 帐户权限。要设置disk.EnableUUID
选项,请使用 Customize hardware 选项卡中的 VM Options 的 Advanced 选项。如需更多信息,请参阅在 vSphere 中创建 Red Hat Enterprise Linux CoreOS(RHCOS)机器。 - 如果要使用多个支持的技术预览功能,在部署前您必须创建以后附加到集群的网络附加定义(NAD)。如需更多信息,请参阅 Multus 支持 和 创建网络附加定义。
步骤
- 登录 OpenShift Web 控制台。
点 Operators → Installed Operators 查看所有已安装的 Operator。
确保所选的 Project 为 openshift-storage。
- 点 OpenShift Container Storage > Create Instance Cluster 链接。
选择选择模式 作为
内部附加设备
。注意如果还没有安装,系统会提示您安装 Local Storage Operator。点 Install 并按照以下步骤进行操作,如 Installing Local Storage Operator 所述。
发现磁盘
选择以下任意一项:
- 可发现所有节点中磁盘的所有节点。
选择节点 以从可用节点的子集发现磁盘。
重要对于使用 arbiter 模式,不要选择 All nodes 选项。反之,使用 Select nodes 选项从两个数据中心区域中选择附加存储设备的带标记的节点。
- 点击 Next。
创建存储类。
您可以通过过滤一组存储卷来创建专用的存储类来消耗存储。
- 输入 本地卷集名称。
- 输入 Storage Class Name。默认情况下,存储类名称会出现卷集名称。您还可以更改名称。
在上一步中为磁盘发现选择的节点显示在 Filter Disks By 部分。选择以下任意一项:
- Disks on all nodes 以选择所有节点来发现设备。
选择您发现该设备的节点子集的磁盘。将 worker 节点分布到三个不同的物理节点、机架或故障域以实现高可用性。
重要在创建分布在少于最低要求的 3 个可用区中的带有 3 个或更多节点的存储集群中时,灵活扩展功能会被启用。此功能仅适用于 OpenShift Container Storage 4.7 集群的新部署,且不支持升级的集群。有关灵活扩展的信息,请参阅 扩展存储指南。
注意如果要选择的节点有污点且没有在向导中发现,请按照红帽知识库解决方案 中提供的步骤作为为 Local Storage Operator 资源添加容忍度的临时解决方案。
-
从可用列表中选择
SSD/NVME
Disk Type。 展开 Advanced 部分并设置以下选项:
卷模式
默认会选择块。
设备类型
从下拉列表中选择一个或多个磁盘类型。
磁盘大小
为设备设置最小 100GB 大小,以及需要包含的设备的最大可用大小。
最大磁盘限制
这表示节点上可以创建的 PV 数量上限。如果此字段留空,则为匹配节点上的所有可用磁盘创建 PV。
- 点击 Next。此时会显示一个用于确认创建新存储类的弹出窗口。
- 单击 Yes 以继续。
设置 容量和节点
- 选择 Storage Class。默认情况下,会选择上一步中创建的新存储类。
- 所选节点 显示上一步中选择的节点。此列表需要几分钟时间来反映上一步中发现的磁盘。
- 点击 Next。
(可选) 设置安全性和网络配置
- 选中 启用加密 复选框以加密块和文件存储。
选择以下 加密级别 之一:
- Cluster-wide encryption 来加密整个集群(块存储和文件存储)。
- Storage class encryption 以使用加密启用的存储类创建加密的持久性卷(仅限块)。
选中连接到外部密钥管理服务复选框。这是集群范围加密的可选选项。
-
默认情况下,Key Management Service Provider 设置为
Vault
。 - 输入 Vault Service Name、Vault 服务器的主机地址 ('https://<hostname or ip>'')、端口号和 Token。
展开 Advanced Settings 以根据您的 Vault 配置输入额外的设置和证书详情:
- 在 后端路径中输入为 OpenShift Container Storage 专用且唯一的 Key Value secret 路径。
- (可选)输入 TLS 服务器名称和 Vault Enterprise 命名空间。
- 通过上传相应的 PEM 编码证书文件提供 CA 证书、客户端证书和客户端私钥。
- 点击 Save。
-
默认情况下,Key Management Service Provider 设置为
如果使用一个单一网络,选择 Default (SDN);如果使用多个网络借口,选择 Custom (Multus) Network。
- 从下拉菜单中选择公共网络接口。
从下拉菜单中选择 Cluster Network Interface。
注意如果只使用一个额外网络接口,请为公共网络接口选择单个 NetworkAttachementDefinition(如 ocs-public-cluster),并将 Cluster Network Interface 留空。
- 点击 Next。
- 检查配置详情。若要修改任何配置设置,请单击 Back 以返回到上一配置页面。
- 点 Create。
如果 Vault Key/Value(KV)secret 引擎 API,则编辑 configmap,版本 2 则用于使用密钥管理系统(KMS)进行集群范围的加密。
- 在 OpenShift Web 控制台中,导航到 Workloads → ConfigMaps。
- 要查看 KMS 连接详情,点 ocs-kms-connection-details。
编辑 configmap。
- 点 Action menu (⋮) → Edit ConfigMap。
将
VAULT_BACKEND
参数设置为v2
。kind: ConfigMap apiVersion: v1 metadata: name: ocs-kms-connection-details [...] data: KMS_PROVIDER: vault KMS_SERVICE_NAME: vault [...] VAULT_BACKEND: v2 [...]
- 点击 Save。
验证步骤
验证已安装存储集群的最后一个 Status 显示为 phase: Ready,并带有绿色勾号标记。
- 点 Operators → Installed Operators → Storage Cluster 链接来查看存储集群安装状态。
- 另外,当使用 Operator Details 选项卡时,您可以点击 Storage Cluster 选项卡查看状态。
要验证是否在存储集群中启用了灵活的扩展,请执行以下步骤(对于仲裁模式,请禁用灵活的扩展):
-
在 Storage Cluster 标签页中点
ocs-storagecluster
。 在 YAML 选项卡中,在
spec
部分搜索键flexibleScaling
,在status
部分搜索failureDomain
。如果flexible scaling
为 true,failureDomain
被设置为 host,则启用灵活的扩展功能。spec: flexibleScaling: true […] status: failureDomain: host
-
在 Storage Cluster 标签页中点
- 要验证 OpenShift Container Storage 的所有组件是否已成功安装,请参阅验证 OpenShift Container Storage 安装。
其他资源
- 若要扩展初始集群的容量,请参阅 扩展存储 指南。