一、文件存储¶
一些数据可能需要被多个节点使用,比如用户的头像、用户上传的文件等,实现方式:NFS、NAS、FTP、CephFS等。
二、块存储¶
一些数据只能被一个节点使用,或者需要将一块裸盘整体挂载使用,比如数据库、Redis等,实现方式:Ceph、GlusterFS、公有云磁盘等。
三、对象存储¶
对象存储通常由程序代码直接访问,是云原生应用无状态化中非常常见的一类实现方式。典型方案一般是符合 S3 协议的云存储,比如 AWS S3、Minio、七牛云等。
不管上层用的是 Volume、PV 还是 StorageClass,底层最终都离不开文件、块和对象三种存储模型。把这三类存储的特点和适用场景分清楚,才能在架构设计时选对方案。
一些数据可能需要被多个节点使用,比如用户的头像、用户上传的文件等,实现方式:NFS、NAS、FTP、CephFS等。
一些数据只能被一个节点使用,或者需要将一块裸盘整体挂载使用,比如数据库、Redis等,实现方式:Ceph、GlusterFS、公有云磁盘等。
对象存储通常由程序代码直接访问,是云原生应用无状态化中非常常见的一类实现方式。典型方案一般是符合 S3 协议的云存储,比如 AWS S3、Minio、七牛云等。