主要是本地存储和云存储,由于本地存储在容器重启后的易失性,不建议使用,主要还是建议用云存储,一是容量大,二是挂载方便,容易扩容,三是尽量选择光纤存储,访问速度快。当然也可以选择对象存储。目前nas和对象存储生产中使用的比较多
收起主要有三种:内部存储、宿主机本地磁盘存储、远程卷存储。
内部存储在容器启动时自动生成,作为容器的读写层会在容器销毁时自动销毁,类似于主机的内存,在主机宕机时内存数据消失,建议不要在生产环境中使用,此方案仅为快速测试使用。
宿主机本地磁盘存储可以理解为容器数据存储在宿主机本地,创建简单,无需增加额外资源,缺点时无法在不同节点间漂移,不建议在生产环境使用,可以在开发环境使用节约资源。
远程卷存储类似于SAN存储,推荐用于生产环境,可以使存储在不同节点漂移,使生产环境具备高可靠性,分布式存储卷包括Ceph、GlusterFS等。
容器云存储有多种方式,以下是几种常见的方式:
1.主机路径挂载(HostPath):这种方式将主机节点上的文件或目录挂载到容器中,容器可以直接访问该路径。它适用于简单的测试和开发环境,但不适合生产环境,因为容器在集群中迁移时无法保证数据的持久性和可用性。
2.空白卷挂载(EmptyDir):这种方式创建一个空的临时卷,它与容器一起创建,并且只在容器的生命周期内存在。当容器重新启动或迁移时,该卷中的数据将丢失。因此,它适用于需要在容器之间共享临时数据的场景。
3.持久化卷挂载(PersistentVolume):这是一种将持久化存储卷挂载到容器的方式。在容器云环境中,通常使用外部存储系统(如网络附加存储)来提供持久化卷。这种方式适用于需要在容器重启、迁移或故障转移后保留数据的生产环境。
4.动态卷挂载(Dynamic Volume Provisioning):这是一种自动创建和管理持久化卷的方式。它通过与存储后端集成,根据需求自动创建、挂载和删除卷。这种方式通常需要使用存储类(Storage Class)来定义卷的属性和行为。
对于生产环境,建议使用持久化卷挂载(PersistentVolume)。它提供了数据的持久性和可用性,并且允许容器在重启、迁移或故障转移后保留数据。使用动态卷挂载可以更方便地管理和扩展存储资源,但具体的选择还取决于你的具体需求和容器云平台的支持情况。
收起容器云存储有以下几种方式:
对于生产环境,建议使用块存储技术,因为它可以提供高可用性和数据持久化,并且支持动态扩容和缩容,适合于容器云中复杂的应用场景。同时,块存储技术还可以提供数据快照和备份等功能,保证数据的安全性和可靠性。