从群集中删除 Block Storage for VPC
虚拟私有云
在集群中设置持久存储时,有三个主要组件:请求存储的 Kubernetes 持久卷请求(PVC)、挂载到 pod 并在 PVC 中描述的 Kubernetes 持久卷(PV)以及存储实例。 所有这三个组件可能需要分别删除,具体取决于存储器的创建方式。
根据供应存储器的方式以及已除去的组件,从 IBM Cloud 帐户中除去持久性存储器的操作会有所不同。
- 删除群集时,我的持久存储会被删除吗?
- 在集群删除期间,您可以选择除去持久性存储器。 但是,根据存储器的供应方式,除去存储器时,可能不会包含所有存储组件。 如果使用设置了
reclaimPolicy: Delete的存储类动态配置存储,则在删除群集时会自动删除 PVC、PV 和存储实例。 对于静态配置的存储或使用设置了reclaimPolicy: Retain的存储类配置的存储,删除群集时会移除 PVC 和 PV,但存储实例和数据会保留。 您仍将为存储器实例付费。 此外,如果删除的是状态为运行状况不佳的集群,那么即使选择除去存储器,存储器也可能会仍然存在。 - 当我想保留群集时,如何删除存储?
- 使用设置了
reclaimPolicy: Delete的存储类动态供应存储器时,可以通过除去 PVC 来启动持久性存储器的删除过程。 这将自动除去 PVC、PV 和存储器实例。 对于静态配置的存储或使用设置了reclaimPolicy: Retain的存储类配置的存储,必须手动删除 PVC、PV 和存储实例,以避免进一步收费。 - 删除存储后,如何停止计费?
- 根据您删除的存储组件和删除时间,计费周期可能不会立即停止。 如果删除了 PVC 和 PV,但未删除 IBM Cloud 帐户中的存储器实例,那么该实例仍然存在,因此仍需要为此付费。
如果删除了 PVC、PV 和存储器实例,那么计费周期会停止,具体取决于在供应存储器时选择的 billingType 以及选择的存储器删除方式。
-
从 IBM Cloud 控制台或 CLI 手动取消持久存储实例时,计费会按如下方式停止:
- 按小时计费存储器:将立即停止计费。 取消存储器后,可能最长 72 小时内仍会在控制台中看到该存储器实例。
- 按月计费存储器:可以选择立即取消或在周年日期取消。 在这两种情况下,将计费到当前计费周期结束,并停止对下一个计费周期的计费。 取消存储器后,可能最长 72 小时内仍会在控制台或 CLI 中看到该存储器实例。
- 立即取消:选择此选项可立即除去存储器。 您或您的用户都无法再使用存储器,也无法恢复数据。
- 周年日期:选择此选项可在下一个周年日期取消存储器。 存储器实例会一直保持活动状态,直到下一个周年日期为止,并且在此日期之前,您可以继续使用这些存储器实例,例如让团队有时间来备份数据。
-
使用设置了
reclaimPolicy: Delete的存储类动态供应存储器时,如果您选择除去 PVC,将立即除去 PV 和存储器实例。 对于按小时计费的存储器,计费会立即停止。 对于按月计费的存储器,您仍需要为该月的剩余时间付费。 除去存储器并且计费停止后,可能最长 72 小时内仍会在控制台或 CLI 中看到该存储器实例。
- 删除持久存储前需要注意什么?
- 清除持久性存储器时,将删除其中存储的所有数据。 如果您需要数据的副本,请进行备份。
- 我删除了我的存储实例。 为什么我还能看到我的实例?
- 除去持久性存储器后,除去操作可能最长需要 72 小时才能完全处理好,在此之后存储器不会再显示在 IBM Cloud 控制台或 CLI 中。
正在清除 Block Storage for VPC
删除存储实例会永久删除所有数据。 无法撤销此操作。 确保在删除存储实例前备份数据。
从 IBM Cloud 帐户中除去 PVC、PV 和存储器实例,可避免对持久性存储器进一步收费。
开始之前:
- 确保备份了要保留的所有数据。
- 访问 Red Hat OpenShift 集群。
要清除持久数据,请执行以下操作:
-
列出集群中的 PVC,并记下 PVC 的
NAME、STORAGECLASS以及绑定到该 PVC 并显示为VOLUME的 PV 的名称。oc get pvc示例输出
NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE claim1 Bound pvc-06886b77-102b-11e8-968a-f6612bb731fb 20Gi RWO class 78d claim2 Bound pvc-457a2b96-fafc-11e7-8ff9-b6c8f770356c 4Gi RWX class 105d claim3 Bound pvc-1efef0ba-0c48-11e8-968a-f6612bb731fb 24Gi RWX class 83d -
查看存储类的
ReclaimPolicy和billingType。oc describe storageclass <storageclass_name>如果回收策略显示
Delete,那么在除去 PVC 时会除去 PV 和物理存储器。 如果回收策略显示Retain,或者所供应的存储器不具有存储类,那么在除去 PVC 时不会除去 PV 和物理存储器。 PVC、PV 和物理存储器必须分别进行除去。如果存储器按月收费,那么即使在计费周期结束之前除去了存储器,也仍需要按整月付费。
-
除去安装了 PVC 的所有 pod。 列出安装了 PVC 的所有 pod。 如果 CLI 输出中没有返回 pod,则说明没有 pod 使用 PVC。
oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"示例输出
depl-12345-prz7b: claim1 -
除去使用 PVC 的 pod。 如果 pod 是部署的一部分,请除去该部署。
oc delete pod <pod_name> -
验证 pod 是否已除去。
oc get pods -
除去 PVC。
oc delete pvc <pvc_name> -
查看 PV 的阶段状态。 使用先前检索到的显示为
VOLUME的 PV 的名称。 除去 PVC 时,会释放绑定到该 PVC 的 PV。 如果 PV 是自动删除的,那么该 PV 会进入Deleting状态;如果必须手动删除 PV,那么该 PV 会进入Released状态,具体取决于存储器的供应方式。 注:对于自动删除的 PV,在删除之前,阶段状态可能会短暂地显示为Released。 请在几分钟后重新运行该命令以查看该 PV 是否已除去。oc get pv <pv_name> -
如果 PV 未删除,请手动除去该 PV。
oc delete pv <pv_name> -
验证 PV 是否已除去。
oc get pv -
列出 PV 指向的物理存储器实例,并记下物理存储器实例的
id。ibmcloud is volumes | grep <pv_name> -
除去物理存储器实例。
ibmcloud is volume-delete <vpc_block_id> -
验证物理存储器实例是否已除去。
删除过程最长可能需要 72 小时才能完成。
ibmcloud is volumes