4.3. Overprovision 级别策略控制 [技术预览]

Overprovision (超额置备) 控制是一种机制,它可让您根据特定的应用程序命名空间,定义从存储集群中使用的持久性卷声明(PVC)的配额。

当您启用 overprovision 控制机制时,它会阻止置备存储集群消耗的 PVC。OpenShift 提供了定义约束的灵活性,可以利用 ClusterResourceQuota 来限制集群范围内聚合的资源消耗。如需更多信息,请参阅 OpenShift ClusterResourceQuota

通过超额置备控制,会启动 ClusteResourceQuota,您可以为每个存储类设置存储容量限制。当消耗了 80% 的容量限制时,警报将触发。

注意

Overprovision 级别策略控制是一个技术预览功能。技术预览功能不受红帽产品服务等级协议(SLA)支持,且功能可能并不完整。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。如需更多信息,请参阅技术预览功能支持范围

如需有关 OpenShift Data Foundation 部署的更多信息,请参阅 产品文档 并根据平台选择部署过程。

先决条件

  • 确保创建了 OpenShift Data Foundation 集群。

流程

  1. 通过命令行界面或用户界面部署 storagecluster
  2. 标记应用程序命名空间。

    apiVersion: v1
    kind: Namespace
    metadata:
         name: <desired_name>
         labels:
              storagequota: <desired_label>
    <desired_name>
    为 application 命名空间指定一个名称,如 quota-rbd
    <desired_label>
    为存储配额指定一个标签,如 storagequota1
  3. 编辑 storagecluster,以在存储类上设置配额限制。

    $ oc edit storagecluster -n openshift-storage <ocs_storagecluster_name>
    <ocs_storagecluster_name>
    指定存储集群的名称。
  4. StorageCluster.Spec 中为 Overprovision Control 添加一个条目。

    apiVersion: ocs.openshift.io/v1
    kind: StorageCluster
    spec:
     [...]
         overprovisionControl:
         - capacity: <desired_quota_limit>
              storageClassName: <storage_class_name>
              quotaName: <desired_quota_name>
              selector:
                labels:
                       matchLabels:
                        storagequota: <desired_label>
    [...]
    <desired_quota_limit>
    为存储类指定所需的配额限制,例如 27Ti
    <storage_class_name>
    指定要设置配额限制的存储类的名称,如 ocs-storagecluster-ceph-rbd
    <desired_quota_name>
    为存储配额指定一个名称,如 quota1
    <desired_label>
    为存储配额指定一个标签,如 storagequota1
  5. 保存修改后的 storagecluster
  6. 验证是否定义了 clusterresourcequota

    注意

    期望 clusterresourcequota 带有您在上一步中定义的 quotaName,例如 quota1

    $ oc get clusterresourcequota -A
    
    $ oc describe clusterresourcequota -A