在CentOS上搭建MongoDB集群,通常指的是部署一個MongoDB副本集(Replica Set)。副本集是MongoDB的高可用性解決方案,它包含多個節點,其中一個節點為主節點(Primary),其他節點為從節點(Secondary)。當主節點發生故障時,從節點可以自動選舉出一個新的主節點,以保證集群的高可用性。
以下是在CentOS上搭建MongoDB副本集的基本步驟:
準備環境: 確保所有CentOS服務器上都安裝了相同版本的MongoDB??梢詮腗ongoDB官方網站下載并安裝適合CentOS的MongoDB版本。
配置MongoDB: 在每個服務器上創建MongoDB配置文件(例如:/etc/mongod.conf),并進行相應的配置。以下是一個基本的配置示例:
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
net:
port: 27017
bindIp: 0.0.0.0
replication:
replSetName: myReplSet
其中,replSetName參數用于設置副本集的名稱,確保所有節點上的副本集名稱相同。
sudo systemctl start mongod
sudo systemctl enable mongod
mongo shell初始化副本集。例如,連接到第一個節點:mongo --host <node1_ip> --port 27017
在mongo shell中執行以下命令:
rs.initiate({
_id: "myReplSet",
members: [
{ _id: 0, host: "<node1_ip>:27017" },
{ _id: 1, host: "<node2_ip>:27017" },
{ _id: 2, host: "<node3_ip>:27017" }
]
})
將<node1_ip>、<node2_ip>和<node3_ip>替換為實際的節點IP地址。
mongo shell中執行以下命令查看副本集狀態:rs.status()
如果一切正常,你應該能看到副本集中各個節點的狀態信息。
至此,你已經成功在CentOS上搭建了一個MongoDB副本集。在實際生產環境中,你可能需要根據實際需求調整配置參數,例如數據存儲路徑、日志路徑、網絡端口等。同時,為了保證集群的高可用性,建議至少部署3個節點。