Docker Swarm 使用NFS作为共享存储

Posted xiaoganghu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker Swarm 使用NFS作为共享存储相关的知识,希望对你有一定的参考价值。

1.NFS服务器搭建

yum -y install nfs-utils
mkdir -p /nfs
chown -R nfsnobody.nfsnobody /nfs
vim /etc/exports
/nfs 192.168.0.0/24(rw,sync,no_root_squash)
#/nfs 上的共享目录
#192.168.0.0.0/24网络中可以访问这个NFS输出目录的主机
#insecure:访问端口号可以大于1024
#sync 同步,数据更安全,速度慢
#async 异步,速度快,效率高,安全性低
#rw:共享目录的权限,rw 是可读写的权限,只读的权限是ro
#no_root_squash:NFS 服务共享的目录的属性, 如果用户是root, #那么对这个目录就有root的权限
systemctl start nfs
systemctl enable nfs

2.Docker Swarm集群搭建

角色 IP 服务器版本 Docker版本
manager 192.168.0.201 CentOS 7.3 17.05.0-ce
node 192.168.0.202 CentOS 7.3 17.05.0-ce
node 192.168.0.203 CentOS 7.3 17.05.0-ce
在201机器上执行

docker swarm init

然后将在根据上面的提示,在202,203上执行

docker swarm join --token SWMTKN-1-1wv9rwsomiq9ugl4midn8wlawveshd1nxgdd0kipkcjcf846eg-epq9f6afugqf5k9wuy1pnbbem 192.168.0.201:2377

列出节点信息

docker node ls

在201,202,203上安装nfs客户端,并创建存储卷

yum -y install nfs-utils
docker volume create --driver local --opt type=nfs --opt o=addr=192.168.0.201,rw --opt device=:/nfs --name nfs201

在manager201上创建服务

docker service create --replicas 2 --mount src=nfs201,dst=/data --name myservice busybox sleep 1000

以上是关于Docker Swarm 使用NFS作为共享存储的主要内容,如果未能解决你的问题,请参考以下文章

docker-swarm集群及NFS持久化存储方案

markdown 使用Docker Swarm的NFS卷

Docker Swarm 使用NFS 搭建 S3 (minio)多副本

swarm docker-compose.yml NFS 搭建LNMP

使用Docker swarm构建wordpress集群

Swarm 如何存储数据?- 每天5分钟玩转 Docker 容器技术(103)