存储卷管理
所有文档

          云原生微服务应用平台 CNAP

          存储卷管理

          容器的特性决定了容器本身是非持久化的,容器被删除,其上的数据也一并被删除。百度云存储服务可以解决容器的数据共享和持久化存储问题,适用于大数据分析、媒体、游戏等多种场景。CNAP 存储卷管理能够为您的部署组中的容器挂载存储卷,实现容器的数据持久化。

          存储类型

          本地存储 说明
          本地存储 包含:主机临时路径(EmptyDir),主机路径(HostPath)
          文件存储CFS 通过创建 PV/PVC 为容器挂载 CFS 文件存储

          目前,CNAP 存储卷管理支持挂载本地存储卷类型及通过 PV/PVC 方式为用户挂载 CFS 文件存储。本地存储卷包括:主机临时路径(EmptyDir),主机路径(HostPath)。

          PV(PersistenVolume)和PVC(PersistentVolumeClaim)是 Kubernetes 提供的用于抽象存储细节的 API 资源。CNAP 存储卷管理通过在集群内创建 PV 和 PVC 资源,将百度云 CFS 存储卷作为存储卷挂载到容器中,而无需关注底层实现细节,从而更加便捷地为容器集群提供持久化存储方案。

          使用本地存储

          创建应用/部署组时挂载存储卷

          在创建应用(空应用除外)或者在应用下新建部署组时均可以为部署组挂载存储卷。

          创建应用时挂载存储卷

          1. 创建应用
          2. 填写部署组相关信息
          3. 在存储卷页面点击添加存储卷

          image.png

          创建部署组时挂载存储卷

          1. 在应用下创建部署组
          2. 填写部署组相关信息
          3. 在存储卷界面点击添加存储卷

          image.png

          编辑部署组中的存储卷挂载

          在”部署组详情“页面,可查看目前部署组中容器的存储卷挂载情况,点击”更新“即可编辑该部署组的存储卷挂载情况:

          image.png

          挂载存储卷

          在”添加存储卷“界面,可以选择在容器中挂载的存储卷类型:主机路径(HostPath)或临时路径(EmptyDir)。

          主机路径:

          image.png

          临时路径:

          image.png

          根据所选择的存储卷类型,填写相应信息。其中主机路径(HostPath)类型需要填写”主机存储路径“,表示宿主机的真实路径。

          在”存储卷挂载“部分,可以将存储卷挂载在部署组的各个容器中。您可以根据需要选择和填写:

          1. 容器名称:选择要挂载存储卷的容器,为必填项。
          2. 挂载路径:存储卷在容器中的挂载路径,挂载成功后在容器中通过该路径访问存储卷,为必填项。
          3. 子路径:通过在宿主机路径下新建子目录,在多个挂载相同存储卷的容器间实现访问隔离,对容器无感,为可选项,默认为空。
          4. 是否只读:选择是否以只读权限挂载存储卷,选填项,默认不勾选。

          主机路径(HostPath)

          主机路径(HostPath)类型存储卷可实现将宿主机路径挂载到容器中以供访问,在部署组被删除后,存储卷中数据会被保留在宿主机,所以您需要在”主机存储路径“中填写宿主机路径。 可选的主机路径存储卷的”类型“有:

          1. DirectoryOrCreate: 如果指定路径不存在,会创建一个空目录,并设置权限为 0755,与 Kubelet 拥有相同的用户组和所有权。
          2. Directory: 指定路径必须为一个已存在的目录。(若不存在,则容器无法启动)。
          3. FileOrCreate: 如果指定路径不存在,会创建一个空文件,并设置权限为 0644,与 Kubelet 拥有相同的用户组和所有权。
          4. File: 指定路径必须为一个已存在的文件。(若不存在,则容器无法启动)。
          5. Socket: 指定路径必须为一个已存在的 UNIX socket 文件。(若不存在,则容器无法启动)。
          6. CharDevice: 指定路径必须为一个已存在的字符设备。(若不存在,则容器无法启动)。
          7. BlockDevice: 指定路径必须为一个已存在的块设备。(若不存在,则容器无法启动)。

          其中只有选择 DirectoryOrCreateDirectory 时可以填写”子路径“。

          临时路径(EmptyDir)

          临时路径(EmptyDir)类型存储卷可实现将宿主机上新建临时目录挂载到容器中以供访问,需要注意的当部署中一个副本(Pod)被删除时,该临时目录也会被删除。 用户可以选择临时路径的”存储介质“:

          1. 内存:数据将被存储在宿主机内存中,有更高的访问速度,但是会占用用户容器的可使用内存配额。
          2. 临时目录:数据将被存储在宿主机临时目录中。

          使用文件存储 CFS

          管理 CFS 存储卷

          您可以在“资源管理”中的“存储”选项界面管理您的 CFS 持久化存储卷。

          image.png

          新建存储卷

          确定您的目标工作空间后,点击“新建存储卷”即可开始新建持久化存储卷。

          image.png

          新建存储卷需填写基本信息,包括:存储卷名称,环境,并确定集群。若您所选择的环境未绑定 CCE 集群,则可以点击“绑定集群”将环境与集群关联。

          新建存储卷要求您在百度云 CFS 文件存储服务中创建有 CFS 实例,并且在 CFS 实例下新建有与集群相同PVC的挂载点。为了方便您在创建挂载点时选择正确的 VPC,CNAP 在您选择集群后提示了该集群的 VPC。

          当您在百度云 CFS 文件存储服务中新建 CFS 实例及挂载点后,即可在 CNAP 新建存储卷页面查看到可挂载到目标集群的 CFS 文件系统及挂载点信息。

          持久化存储卷支持的访问模式为:ReadWriteMany,表示您可以将新建的存储卷挂载到集群中多个部署组,或一个部署组中的多个容器中。

          持久化存储卷支持的数据保留策略为:保留(Retain),表示当您取消存储卷在容器中的挂载,或者在 CNAP 平台上删除该存储卷后,已写入 CFS 中的数据不会被删除,方式数据意外丢失。您仍然可以直接通过 CFS 挂载点访问已写入的数据。

          点击确定后,CNAP 将为您在集群中创建一对一对一绑定的 PV/PVC。

          image.png

          查看存储卷挂载详情

          新建存储卷后,确定工作空间,您可以在存储卷列表看到该工作空间下的所有存储卷。存储卷列表展示了存储卷的基本信息,包括名称、环境名称/ID、集群名称/ID、该存储卷对应的云上 CFS 挂载点、该存储卷的创建时间。

          image.png

          若您已将存储卷挂载到了一个或多个部署组中,点击“挂载详情”按钮,右侧弹窗中即可以展示该存储卷的挂载信息。包含在该工作空间下的环境ID/名称、应用ID/名称、部署组ID/名称。通过点击部署组ID/名称可以跳转到部署组详情页面。

          image.png

          删除存储卷

          在存储卷列表中,通过点击存储卷右侧的“删除”按钮即可以删除该存储卷。

          image.png

          若该被删除的存储卷没有被任何存储卷挂载,在点击“删除”按钮后,即可完成对存储卷的删除;若该存储卷已被挂载,则存储卷不会立即被删除,而是进入“删除中”状态。您需要通过查看“挂载详情”,在展示的所有部署组中删除对该存储卷的挂载,删除挂载后,存储卷将被删除。同时集群中的 PV/PVC 也被删除。

          image.png

          挂载 CFS 存储卷

          CFS 存储卷和挂载方式与本地存储卷相似。您可以在创建应用、创建部署组时为部署组挂载存储卷,也可以在“部署组详情”页面编辑部署组的挂载信息。

          点击“添加存储卷”,即可在弹窗中选择您要挂载的 CFS 存储卷及挂载目标容器。

          image.png

          在“选择存储卷”的列表中,会展示所有该部署组可用的存储卷,您可以将状态为“可用”的存储卷挂载到容器中。

          当将存储卷挂载到多个容器或部署组中时,若希望避免多个容器读写,造成存储卷中数据错误,您可以通过设置挂载“子路径”或开启“只读”选项,为不同容器或部署组分配不同目录及读取权限。

          上一篇
          访问方式管理
          下一篇
          变更管理