跨主机存储

2018-12-31  本文已影响0人  why_not_

跨主机存储

从业务数据角度看,容器可以分为两类:

  • 无状态
    容器在运行过程中不需要保存数据,每次访问不依赖上次访问 如静态web服务器
  • 有状态
    容器需要保存数据,而且数据会发生变化,访问依赖之前请求的处理结果 如数据库服务器

简单来讲状态就是数据,如果容器需要存储数据,他就是有状态的,反之为无状态

  • 对于有状态的容器,如何保存数据
    data volume 可以存储容器的状态,不过 volume 只是docker主机的本地文件系统
    如果docker host 宕机了,如何恢复容器
  1. 定期备份数据

  2. storage provider提供的 volume

    docker 从 provider 那里获取 volume 并挂载到容器。即使host挂了,也可以立即在其他host上启动相同镜像的容器,重新挂在之前的volume,这样数据就不会丢失

volume driver

任何一个data volume 都是由 driver 管理的,创建 volume 时如果不特别指定,将使用local 类型的 driver ,即从 docker host的本地目录中分配存储空间 如果要支持跨主机的 volume ,需要第三方 driver

Rex-Ray driver

1、开源、社区活跃
2、支持多种backend,virtual media、Amazon EBS、Ceph RBD、openstack cinder
3、支持 ubuntu、centos、CoreOS
4、支持 多种容器编排引擎 docker swarm 、kubernetes、Mesos
5、安装使用简单

rex-rax 以 standalone (单机)进程的方式运行在docker 主机上

上一篇 下一篇

猜你喜欢

热点阅读