在CentOS上配置MongoDB复制集涉及几个步骤。以下是一个基本的指南,帮助你设置一个三节点的复制集。
首先,确保你已经安装了MongoDB。如果没有,可以使用以下命令安装:
sudo yum install -y mongodb-org
启动MongoDB服务并设置开机自启动:
sudo systemctl start mongod
sudo systemctl enable mongod
编辑MongoDB配置文件 /etc/mongod.conf
,确保以下配置项存在:
net:
port: 27017
bindIp: 0.0.0.0
replication:
replSetName: rs0
replSetName
是复制集的名称,你可以根据需要更改。
保存配置文件并重启MongoDB服务:
sudo systemctl restart mongod
连接到MongoDB shell:
mongo
在MongoDB shell中,初始化复制集:
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "mongo1.example.com:27017" },
{ _id: 1, host: "mongo2.example.com:27017" },
{ _id: 2, host: "mongo3.example.com:27017" }
]
})
将 mongo1.example.com
, mongo2.example.com
, 和 mongo3.example.com
替换为你的MongoDB服务器的实际主机名或IP地址。
在MongoDB shell中,运行以下命令来验证复制集的状态:
rs.status()
你应该看到复制集中所有节点的状态都是 SECONDARY
或 PRIMARY
。
确保防火墙允许MongoDB端口27017的流量。你可以使用以下命令打开端口:
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
通过以上步骤,你应该能够在CentOS上成功配置一个MongoDB复制集。