存储概述
云容器引擎的存储功能基于Kubernetes容器存储接口(CSI),与天翼云存储服务(如云硬盘,弹性文件服务、对象存储等)深度融合,且完全兼容Kubernetes原生的存储服务,包括 EmptyDir、HostPath、ConfigMap 和 Secret 等各种存储类型。
无论是基于云存储服务还是原生存储服务,它们都可以轻松地集成到容器环境中,为应用程序提供可靠、高性能的存储解决方案。
存储类型概览
由于Container 中的文件在磁盘上是临时存放的,为了解决持久化存储以及同一 Pod 中多个容器共享文件,Kubernetes提出使用数据卷(Volume)作为Pod与外部存储设备进行数据传递的通道,也是Pod内部容器间、Pod与Pod间、Pod与外部环境进行数据共享的方式。
云容器引擎从实现方式以及存储介质上对数据卷进行划分,主要有两类:
存储类型 |
说明 |
---|---|
容器存储接口 | Out-of-Tree形式存储卷,使用标准的容器存储接口形成自定义存储插件,用户可以通过PVC/PV的形式实现挂载 。存储介质为天翼云存储,包括云硬盘、弹性文件、对象存储类型, 一般用于存储可用性要求较高的数据,或部分数据需要共享的场景。容器 通过 cstor-csi 实现该种能力,架构和流程设计见后文; |
Kubernetes原生存储 | In-Tree形式存储卷,通过Kubernetes代码仓库统一构建、编译、发布,比如ConfigMap一般用于给Pod注入配置数据、Secret一般用于给Pod传递敏感信息; |
容器存储类型概览如下:
云硬盘 | 弹性文件 | 对象存储 | |
---|---|---|---|
云硬盘 | 弹性文件 | 对象存储 | |
概念 | 云硬盘(CT-EVS,Elastic Volume Service)是一种可弹性扩展的块存储设备,可以为弹性云主机和弹性裸金属服务器提供高性能、高可靠的块存储服务。天翼云硬盘规格丰富,满足不同场景的业务需求,适用于文件系统、数据库、开发测试等场景。 | 弹性文件服务(CT-SFS,Scalable File Service)提供按需扩展的高性能文件存储,可为云上多个弹性云服务器、容器、裸金属服务器提供共享访问,具备高可用性和高数据持久性,为海量的小文件、低延迟高IOPS型应用提供有力支持。 | 对象存储(CT-ZOS,Zettabyte Object Storage)是天翼云为客户提供的一种海量、弹性、高可靠、高性价比的存储产品,是专门针对云计算、大数据和非结构化数据的海量存储形态,通过S3协议和标准的服务接口,提供非结构化数据(图片、音视频、文本等格式文件)的无限存储服务。 |
数据存储逻辑 | 存放的是二进制数据,无法直接存放文件,如果需要存放文件,需要先格式化文件系统后使用。 | 采用文件存储方式。文件存储将数据组织为层次化的目录和文件结构,用户可以通过文件路径和名称来操作文件和目录。 | 将数据存储为独立的对象。每个对象由数据本身和与之相关的元数据(例如文件名、文件类型、大小等)组成。 |
动态存储卷 | 支持 | 支持 | 支持 |
静态存储卷 | 支持 | 支持 | 支持 |
支持数据共享 | 共享盘支持 | 支持 | 支持 |
存储容量 | 10~ 32768GB | 500~ 19480GB | ---- |
应用场景 | 如作为弹性云主机或物理机的数据存储介质进行数据存储和持久化;大规模数据处理与分布式计算等高性能计算场景 | 如应用程序的配置文件、日志文件等需要共享的文件数据以及在容器化应用中支持多个容器实例之间的数据共享和同步 | 如大数据分析,数据湖,数据备份和归档等大规模数据存储和分析场景;静态网站托管解决方案存储 |
产品规格 | 参见:点这里 | 参见:点这里 | 参见:点这里 |
计费说明 | 参见:点这里 | 参见:点这里 | 参见:点这里 |