IBM Cloud Docs
关于 Portworx

关于 Portworx

请查看常见问题,以了解有关 Portworx 的更多信息以及 Portworx 如何为容器化应用程序提供高可用性的持久性存储器管理。

什么是软件定义存储(SDS)?

SDS 解决方案会对连接到集群中工作程序节点的各种类型、大小或来自不同供应商的存储设备进行抽象化处理。 在硬盘上具有可用存储器的工作程序节点会添加为存储集群的节点。 在此集群中,会对物理存储器进行虚拟化,并将其作为虚拟存储池显示给用户。 存储集群由 SDS 软件进行管理。 如果数据必须存储在存储集群上,那么 SDS 软件会决定在何处存储数据以实现最高可用性。 虚拟存储器随附一组常用的功能和服务,您可以利用这些功能和服务,而无需关注实际底层存储体系结构。

Portworx 是一种高度可用的软件定义存储解决方案,您可以用它来管理容器化数据库和其他有状态应用程序的本地持久存储,或在多个区域的 pod 之间共享数据。

软件定义存储 (SDS) 解决方案(如 Portworx )可抽象出各种类型、大小或来自不同供应商的存储设备,并将其连接到集群中的工作节点上。 在硬盘上具有可用存储器的工作程序节点会添加为存储集群的节点。 在此集群中,会对物理存储器进行虚拟化,并将其作为虚拟存储池显示给用户。 存储集群由 SDS 软件进行管理。 如果数据必须存储在存储集群上,那么 SDS 软件会决定在何处存储数据以实现最高可用性。 虚拟存储器随附一组常用的功能和服务,您可以利用这些功能和服务,而无需关注实际底层存储体系结构。

Portworx有哪些优点?

使用 Portworx 的优点
优点 描述
有状态应用程序的云本机存储和数据管理 Portworx 将连接到工作程序节点的可用本地存储器聚集在一起(存储器的大小或类型可以各不相同),并创建统一的持久存储层,供要在集群中运行的容器化数据库或其他有状态应用程序使用。 通过使用 Kubernetes 持久卷声明 (PVC),可以将本地持久性存储器添加到应用程序以存储数据。
使用卷复制的高可用性数据 Portworx 自动将卷中的数据复制到集群中的工作节点和区域中,这样就可以始终访问数据,而且在工作节点发生故障或重启时,可以将有状态应用程序重新安排到另一个工作节点上。
支持运行 hyper-converged Portworx 可以配置为运行 hyper-converged 以确保计算资源和存储始终放在同一个工作节点上。 必须对应用程序进行重新安排时,Portworx 会将应用程序移至其中一个卷副本所在的工作程序节点,以确保有状态应用程序的本地磁盘访问速度和高性能。
使用 IBM Key Protect 加密数据 可以设置 IBM Key Protect 加密密钥,这些密钥由通过了 FIPS 140-2 二级认证的基于云的硬件安全模块 (HSM) 进行保护,以保护卷中的数据。 您可以选择使用一个加密密钥来加密集群中的所有卷,或者对每个卷使用一个加密密钥。 数据发送到其他工作程序节点时,Portworx 会使用此密钥对静态数据和传输期间的数据进行加密。
内置快照和云备份 您可以通过创建 Portworx 快照来保存卷及其数据的当前状态。 快照可以存储在本地 Portworx 集群上或云中。
集成监视 您可以查看 Portworx 集群的健康状况,包括可用存储节点、卷和可用容量的数量,并在 Prometheus、Grafana 或 Kibana 中分析数据。

Portworx 如何工作?

作为软件定义存储解决方案,Portworx 聚合了连接到工作节点的可用存储,并为容器化数据库或其他要在集群中运行的有状态应用程序创建了统一的持久存储层。 通过在多个工作程序节点上使用每个容器级别卷的卷复制,Portworx 可确保跨专区的数据持久性和数据可访问性。

此外,Portworx 还随附可用于有状态应用程序的其他功能,例如卷快照、卷加密、隔离,以及集成的 Kubernetes 存储编排器 (Stork),用于确保以最佳方式布置集群中的卷。 更多信息,请参阅 Portworx 文档

运行 Portworx 需要哪些条件?

查看 安装 Portworx的需求。

对于生产环境,请选择其中一个 SDS 工作程序节点类型模板 以获取最佳性能。 在各都市区部分的表格中,SDS味道位于裸金属选项卡中,并以 .ssd 结尾。

如何确保数据存储的高可用性?

在 Portworx 集群中需要至少有 3 个工作程序节点,这样 Portworx 才能跨节点复制数据。 通过跨工作程序节点复制数据,Portworx 可以确保万一发生故障,有状态应用程序可以重新安排到其他工作程序节点,而不会丢失数据。 要获得更高的可用性,可使用多区群集,在 3 个或更多区的工作节点上复制卷。

哪种音量拓扑结构能为 pod 提供最佳性能?

在集群中运行有状态应用程序时,最大挑战之一是确保在容器或整个主机出现故障时,可以将容器重新安排到其他主机上。 在 Docker 中,容器必须重新安排到其他主机上时,卷不会移至新主机。 可以将 Portworx 配置为以 hyper-converged 方式运行,以确保计算资源和存储器始终位于同一工作程序节点上。 必须对应用程序进行重新安排时,Portworx 会将应用程序移至其中一个卷副本所在的工作程序节点,以确保有状态应用程序的本地磁盘访问速度和最佳性能。 以 hyper-converged 方式运行可为 pod 提供最佳性能,但需要存储器在集群中的所有工作程序节点上可用。

此外,还可以选择仅将一部分工作程序节点用于 Portworx 存储层。 例如,您可能有一个包含 SDS 工作节点的工作者池,这些节点带有本地原始块存储,而另一个工作者池则包含不带本地存储的虚拟工作者节点。 当您安装 Portworx 时,一个 Portworx pod 将作为 DaemonSet 的一部分被调度到群集中的每个工作节点上。 由于 SDS 工作节点拥有本地存储,因此这些工作节点只能进入 Portworx 存储层。 虚拟工作程序节点因缺少本地存储器,不作为存储节点包含在内。 但是,当您将应用 pod 部署到虚拟工作者节点时,该 pod 仍可通过 Portworx DaemonSet pod 访问物理存储在 SDS 工作者节点上的数据。 此设置称为 storage-heavy,提供的性能比 hyper-converged 设置略慢,因为虚拟工作程序节点必须通过专用网络与 SDS 工作程序节点进行对话来访问数据。

IBM Cloud Kubernetes Service 不支持 Portworx 试验性 InitializerConfiguration 许可控制器

能否在专用集群中安装 Portworx ?

需要。 如果要在专用集群中安装 Portworx,那么必须使用 虚拟路由和转发(VRF) 设置 IBM Cloud 帐户,并访问 IBM Cloud 服务的私有云服务端点。

如果要在没有 VRF 或无法访问私有云服务端点 (CSE) 的集群中安装 Portworx,那么必须在缺省安全组中创建规则,以允许以下 IP 地址的入站和出站流量: 166.9.24.81166.9.22.100166.9.20.178。有关更多信息,请参阅 更新缺省安全组

可以在使用 Portworx时安装 Autopilot 吗?

需要。 可通过遵循 安装 Autopilot 文档 来安装 Autopilot。

如何获得支持?

请使用下列其中一种方法来联系 Portworx 支持人员。

后续步骤?

一切准备就绪? 首先,创建包含具有至少 3 个工作程序节点的 SDS 工作程序池的集群。 如果要将非 SDS 工作程序节点包含在 Portworx 集群中,请向每个工作程序节点添加原始块存储器。 准备好集群后,在集群中安装 Portworx,并创建第一个超融合存储集群。

探索其他 Portworx 功能

使用现有 Portworx 卷
如果您有手动创建的现有 Portworx 卷,或者有在删除 PVC 时未自动删除的 Portworx 卷,那么可以静态供应相应的 PV 和 PVC,并将此卷用于应用程序。 更多信息,请参阅 使用现有卷
在 Portworx 上运行有状态集
如果您的有状态应用程序要作为有状态集部署到集群中,那么可以将有状态集设置为使用 Portworx 集群中的存储器。 更多信息,请参阅 创建 MySQL StatefulSet。
以超融合方式运行 pod
可以配置 Portworx 集群以将 pod 安排在该 pod 的卷所在的工作程序节点上。 此设置也称为 hyperconverged,可以提高数据存储性能。 有关更多信息,请参阅 在同一主机上运行 pod 作为卷
创建 Portworx 卷的快照
可以通过创建 Portworx 快照来保存卷及其数据的当前状态。 快照可以存储在本地 Portworx 集群上或云中。 有关更多信息,请参阅 创建和使用本地快照
使用 Lighthouse 监视和管理 Portworx 集群
您可以查看 Portworx 集群的运行状况,包括可用存储节点的数量、卷和可用容量,并在 Prometheus、Grafana 或 Kibana 中分析数据。
配置 Autopilot
您可以监视集群资源,并指定条件以及在发生这些条件时应执行的操作。 有关更多信息,请参阅 Autopilot 文档