上海网站seo诊断,吉林网站优化,丹阳市建设局网站,网站公司销售怎么做创建dockerSwarm nfs挂载
nfs高可用部署(lsyncd两主机双向同步) nfs高可用部署(lsyncd三主机三向同步)
1. 通过 Volume
1.1 创建 Docker Volume 每个 swarm 节点均创建相同名称的 Docker Volume#xff08;名称为 nfs120#xff09; docker volume create --driver local …创建dockerSwarm nfs挂载
nfs高可用部署(lsyncd两主机双向同步) nfs高可用部署(lsyncd三主机三向同步)
1. 通过 Volume
1.1 创建 Docker Volume 每个 swarm 节点均创建相同名称的 Docker Volume名称为 nfs120 docker volume create --driver local \--opt typenfs \--opt oaddr192.168.56.120,rw \--opt device:/home/nfs \nfs1201.2 查看 Volume 是否创建成功
docker volume ls
# swarm集群节点依次进行验证1.3 查看 Volume 详情
docker volume inspect nfs120其中Mountpoint 为 Host 挂载点Options 为 NFS 服务共享目录信息。 1.4 验证数据共享特性
在 docker swarm 的 master 节点执行创建服务操作
docker service rm web
docker service create \--name web \--publish 8080:80 \--mount typevolume,sourcenfs120,destination/data1 \--mode global \nginx:1.221.5 查看 Service 部署情况 1.6 验证数据共享特性 NFS 服务创建测试数据 1.7 Service 验证是否共享 NFS 数据 可见数据被共享了当然你在容器中 /data1目录下产生的数据也会被持久化到 NFS 服务上。
当然Nginx 也是正常运行的 2. 通过 Docker Stack 官方文档 Docker Stack CLI 通过 Volume 方式你会发现每台 swarm 集群 work 节点都需要创建 Volume如果 master 节点也为 work 节点也要创建 Volume 。稍显麻烦我们可通过 Docker Stack 方式来弥补这点不足也就是使用 Docker Stack 方式时就不需要手动创建 Docker Volume 了。
2.1 启动一个stack服务 官方文档docker compose CLI 创建每个节点都启动一个容器的service
cat docker-compose.yml EOF
version: 3
services:web:image: nginx:1.22volumes:- nfs121:/dataports:- 8081:80 deploy: mode: global
volumes:nfs121:driver: localdriver_opts:type: nfso: addr192.168.56.120,rwdevice: :/home/nfs
EOFdocker service rm web_web
# 启动一个web_web 的service
docker stack deploy -c docker-compose.yml web
2.2 查询服务及挂载volume是否存在
docker service ls
docker service ps web_web
docker volume ls
docker volume inspect web_nfs1212.3 验证数据共享特性
docker exec -it web_web.mv3jjl59io5wx0sywoghdatqs.6nom1h5z2w0r9cyykb2gse8wy /bin/bash以上步骤成功
FQA
1.create service 创建其他节点也存在volume
docker service create --mode global \--name web122 \--publish 8082:80 \--mount typevolume,sourcenfs122,target/home/nfs,volume-driverlocal,volume-opttypenfs,volume-optdevice:/home/nfs,volume-optoaddr192.168.56.120 \nginx:1.22查看结果