背景
有需求需要对mongodb做一个容灾备份。根据官网,发现mongodb最新版本(4.0)已经抛弃了主从模式而采用副本集进行容灾。副本集的优势在于:”有自动故障转移和恢复特性,其任意节点都可以是主节点,并能实现读写分离,提供高负载“。官方建议副本集最低配置三个节点。关于副本集的原理更多请参考这位小姐姐的博客
搭建步骤
制作mongodb镜像
首先需要做一个mongodb的docker镜像,这里我采用dockerfile进行制作,dockerfile内容如下:
# 指定镜像源
FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install gcc -y
RUN apt-get install g++ -y
RUN apt-get install make -y
RUN apt-get install wget -y
# Install MongoDB.
RUN \
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 && \
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' > /etc/apt/sources.list.d/mongodb.list && \