(1)一文搭建并通识MongoDB replica set核心姿势
副本集Replica Set是一个术语,定义具有多节点的数据库集群,这些节点 具有主从复制(master-slave replication) 且节点之间实现了自动故障转移 。 这样的结构通常需要具有奇数个成员的成员(无论是否带有Arbiter节点),以确保正确选出PRIMARY(主)数据库。 选定的DB将处理所有传入的写操作,并将有关它们的信息存储在其oplog,每个辅助(从属)副本成员都可以访问和复制oplog,以应用于它们的数据集。 前置 为创建一个Replica set, 至少需要三个MongoDB实例,请查看 官网安装 指南. 本文会始终使用sudo指令,一般情况请给MongoDB服务创建一个标准用户mongod。 配置网络 为达到数据一致性,每个实例节点需要与集群其他节点通信,以三实例数据传输为例: ① replica set每个成员都使用私有IP,部署在同一数据中心,这也是推荐方式。 ② replica set每个节点使用公网ip,节点部署在不同数据中心(在replication时有网络延迟),这种方式一般用于强灾备部署,如果采用这种方式,需要在主机之间配置SSL/TLS或通过vpn通信 replica set节点认证 本节你会使用openssl创建一个用于在集群成员之间认证的key文件,MongoDB推荐使用x.509证书加密连接。 ① 产生key文件