Docker搭建MongoDB集群
副本集模式(Replica Set)
-
是一种互为主从的关系, Replica Set 将数据复制多份保存,不同服务器保存同一份数据,在出现故障时自动切换,实现故障转移。
-
此集群拥有一个主节点和多个从节点,这一点与主从复制模式类似,且主从节点所负责的工作也类似,但是副本集与主从复制的区别在于:当集群中主节点发生故障时,副本集可以自动投票,选举出新的主节点,并引导其余的从节点连接新的主节点,而且这个过程对应用是透明的。
准备:离线环境安装docker
参考:
一 、Docker部署MongoDB集群(Replica Set模式-单台)
mongodb版本信息:
MongoDB shell version v5.0.5
MongoDB server version: 5.0.5
单台的集成了一下shell脚本,多台的是分开的,一步一步的。
(1)镜像下载
docker pull mongo:5.0.5
内网打包镜像成tar
docker save -o <导出的文件名.tar> <镜像名称:标签>
docker save -o mongo.tar mongo:5.0.5
将tar包放入/opt/docker/下
导入镜像:
docker load -i myimage.tar
查看:
docker images
(2)建立集群网络和集群
#!/bin/bash
for conf in 27018_mongo-master 27019_mongo-slave 27020_mongo-arbiter; do \
echo "conf len= ${
#conf}, port=${conf:0:5}, name=${conf:6:${
#conf}}";
if [ ${conf:0:5} == 27018 ]
then
docker