
# 存储Flexvolume概述
容器存储是为容器工作负载提供存储的组件，支持多种类型的存储，同一个工作负载（Pod)可以使用任意数量的存储。
云容器引擎CCE的容器存储功能基于Kubernetes存储系统，并深度融合云存储服务，完全兼容Kubernetes原生的存储服务，例如EmptyDir、HostPath、Secret、ConfigMap等存储。
**1.13及以下版本** 的CCE基于Kubernetes社区Flexvolume容器存储接口（[storage-driver](https://support.huaweicloud.com/usermanual-cce/cce_10_0127.html)）实现了云存储服务接入能力，目前该插件已经不是官方建议的存储扩展方式，**在1.15及以上版本的CCE集群中默认安装CSI容器存储插件（[everest](https://support.huaweicloud.com/usermanual-cce/cce_10_0066.html)）** ，详情参见[存储概述](https://support.huaweicloud.com/usermanual-cce/cce_10_0307.html)。
![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
- Kubernetes1.13版本之前的CCE集群不支持端到端容器存储扩容功能，PVC容量与存储容量不一致。
- 在**v1.13及以下版本**的集群中，当存储功能有升级或者BUG修复时，用户无需升级集群或新建集群来升级存储功能，仅需安装或升级storage-driver插件。
 
#### 约束与限制
- 在CCE所创的集群中，Kubernetes v1.15.11版本是Flexvolume插件（storage-driver）被CSI插件（[everest](https://support.huaweicloud.com/usermanual-cce/cce_10_0066.html)）兼容接管的过渡版本，v1.17及之后版本的集群中将彻底去除对Flexvolume插件（[storage-driver](https://support.huaweicloud.com/usermanual-cce/cce_10_0127.html)）的支持，请您将Flexvolume插件的使用切换到CSI插件上。
- CSI插件（[everest](https://support.huaweicloud.com/usermanual-cce/cce_10_0066.html)）兼容接管Flexvolume插件（storage-driver）后，原有功能保持不变，但请注意不要新建Flexvolume插件（storage-driver）的存储，否则将导致部分存储功能异常。
 
#### 如何判断集群的存储插件模式
1. 登录CCE控制台。
2. 在控制台左侧栏目树中，单击"插件中心"。
3. 在右侧的插件管理列表中，单击"插件实例"页签。
4. 在插件实例页面下，选择右上方的集群后，可以看到创建该集群时默认安装的存储插件。
 
#### CSI和Flexvolume存储插件的区别
表1CSI与Flexvolume 
| Kubernetes插件方案 | CCE插件名称        | 插件特性                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 使用推荐                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| CSI            | everest        | CSI插件是kubernetes社区推荐的存储插件机制。CCE发布的kubernetes1.15版本及以上版本默认安装CSI插件everest，并用于对接块存储、文件存储、对象存储、极速文件存储等Iaas存储服务。 everest插件包含两部分： - everest-csi-controller：提供存储卷的创建、删除、扩容、云盘快照等功能；  - everest-csi-driver：提供存储卷在node上的挂载、卸载、格式化等功能。   详情请参见[everest](https://support.huaweicloud.com/usermanual-cce/cce_10_0066.html) | 针对**1.15及以上** 版本的集群，在创建时将默认安装CSI插件（[everest](https://support.huaweicloud.com/usermanual-cce/cce_10_0066.html)）。CCE会跟随社区持续更新CSI插件的各种能力。                                                                                        |
| Flexvolume     | storage-driver | Flexvolume插件是kubernetes社区早期实现的存储卷插件机制。自CCE上线伊始，提供的就是Flexvolume数据卷服务。CCE发布的kubernetes 1.13及以下版本安装的插件是"storage-driver"，并用于对接块存储、文件存储、对象存储、极速文件存储等Iaas存储服务。 详情请参见[storage-driver](https://support.huaweicloud.com/usermanual-cce/cce_10_0127.html)                                                                                                                                                                                                                                                                                                                                | 针对已经创建的**1.13及以下** 版本的集群，仍然使用已经安装的Flexvolume存储插件（[storage-driver](https://support.huaweicloud.com/usermanual-cce/cce_10_0127.html)），CCE已停止更新该插件，您可以[升级集群版本](https://support.huaweicloud.com/usermanual-cce/cce_10_0197.html)。 |
   
![](https://support.huaweicloud.com/usermanual-cce/public_sys-resources/note_3.0-zh-cn.png)
- 不支持CSI和Flexvolume插件在同一个集群中使用。
- 不支持将v1.13及以下版本集群的Flexvolume插件转变到CSI插件，v1.13版本的集群可以通过升级集群版本切换为CSI插件，详情请参见[集群升级路径](https://support.huaweicloud.com/usermanual-cce/cce_10_0197.html)。
 
