在Linux上實現MongoDB復制集(Replica Set)的步驟如下:
首先,確保你已經在所有節點上安裝了MongoDB。你可以從MongoDB官方網站下載并安裝適合你Linux發行版的MongoDB版本。
sudo apt-get update
sudo apt-get install -y mongodb-org
在每個節點上編輯MongoDB配置文件(通常是/etc/mongod.conf
),添加或修改以下內容:
net:
port: 27017
storage:
dbPath: /var/lib/mongodb
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
replication:
replSetName: rs0
net:
port: 27017
storage:
dbPath: /var/lib/mongodb
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
replication:
replSetName: rs0
在每個節點上啟動MongoDB服務:
sudo systemctl start mongod
sudo systemctl enable mongod
連接到主節點并初始化復制集。你可以使用mongo
shell來執行這些命令。
mongo --host <primary_ip> --port 27017
在mongo
shell中執行以下命令:
rs.initiate(
{
_id: "rs0",
members: [
{ _id: 0, host: "<primary_ip>:27017" },
{ _id: 1, host: "<secondary_ip>:27017" },
{ _id: 2, host: "<secondary_ip>:27017" }
]
}
)
將<primary_ip>
替換為主節點的IP地址,將<secondary_ip>
替換為從節點的IP地址。
在mongo
shell中執行以下命令來驗證復制集的狀態:
rs.status()
你應該看到所有節點都列在復制集中,并且有一個節點被標記為PRIMARY
,其他節點被標記為SECONDARY
。
如果你需要添加更多的節點,可以使用以下命令:
rs.add("<new_node_ip>:27017")
將<new_node_ip>
替換為新節點的IP地址。
定期監控復制集的狀態,并根據需要進行維護。你可以使用MongoDB提供的工具和命令來監控復制集的健康狀況。
通過以上步驟,你應該能夠在Linux上成功實現MongoDB復制集。