sudo apt update && sudo apt install -y mongodb-org
sudo vi /etc/yum.repos.d/mongodb-org.repo # 添加官方repo
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
sudo yum install -y mongodb-org
sudo mkdir -p /var/lib/mongodb/{data,log}
sudo chown -R mongodb:mongodb /var/lib/mongodb # 授权MongoDB用户
/etc/mongod.conf,添加/修改以下关键配置(所有节点配置一致):storage:
dbPath: /var/lib/mongodb/data # 数据存储路径
journal:
enabled: true # 启用日志(确保数据持久化)
systemLog:
destination: file
logAppend: true
path: /var/lib/mongodb/log/mongod.log # 日志路径
net:
port: 27017 # 实例端口
bindIp: 0.0.0.0 # 绑定所有IP(允许远程访问)
replication:
replSetName: rs0 # 副本集名称(所有节点必须一致)
sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod # 检查服务状态(确保为"active (running)")
mongo命令连接其中一个节点(如node1的27017端口)。mongo --host <node1_ip> --port 27017
rs.initiate({
_id: "rs0", // 副本集名称(与配置文件一致)
members: [
{ _id: 0, host: "<node1_ip>:27017" },
{ _id: 1, host: "<node2_ip>:27017" },
{ _id: 2, host: "<node3_ip>:27017" }
]
})
rs.status()
"stateStr": "PRIMARY",说明初始化成功,其中一个节点成为主节点,其余为从节点。sudo systemctl stop mongod # 在主节点上执行
mongo --host <node2_ip> --port 27017
rs.status()
"stateStr": "PRIMARY"),验证了高可用性。若需添加新节点,重复二、配置MongoDB实例步骤(使用相同副本集名称rs0),然后在任意节点上执行:
rs.add("<new_node_ip>:27017") // 添加新节点
rs.status() # 验证新节点状态(应为SECONDARY)
注意事项:
security.authorization: enabled)和加密(net.ssl.mode: requireSSL),提升安全性。