在Ubuntu上配置MongoDB集群(復制集)涉及幾個步驟。以下是一個基本的指南,幫助你在Ubuntu上設置一個MongoDB復制集。
MongoDB安裝:確保你已經在所有節點上安裝了MongoDB。你可以使用以下命令安裝MongoDB:
sudo apt update
sudo apt install -y mongodb-org
防火墻設置:確保防火墻允許MongoDB的默認端口(27017)通信。
在每個節點上編輯MongoDB配置文件(通常位于/etc/mongod.conf
),確保以下配置:
net:
port: 27017
bindIp: <節點IP地址>
replication:
replSetName: <復制集名稱>
例如,如果你有三個節點,IP地址分別是192.168.1.1
, 192.168.1.2
, 和 192.168.1.3
,并且你想將復制集命名為rs0
,那么配置如下:
節點1 (192.168.1.1
):
net:
port: 27017
bindIp: 192.168.1.1
replication:
replSetName: rs0
節點2 (192.168.1.2
):
net:
port: 27017
bindIp: 192.168.1.2
replication:
replSetName: rs0
節點3 (192.168.1.3
):
net:
port: 27017
bindIp: 192.168.1.3
replication:
replSetName: rs0
重啟MongoDB服務以應用更改:
sudo systemctl restart mongod
連接到任意一個MongoDB實例并初始化復制集:
mongo --host <節點IP地址> --port 27017
在mongo shell中運行以下命令:
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "<節點IP地址>:27017" },
{ _id: 1, host: "<節點IP地址>:27017" },
{ _id: 2, host: "<節點IP地址>:27017" }
]
})
例如,對于節點1:
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "192.168.1.1:27017" },
{ _id: 1, host: "192.168.1.2:27017" },
{ _id: 2, host: "192.168.1.3:27017" }
]
})
在mongo shell中運行以下命令來驗證復制集的狀態:
rs.status()
你應該看到所有節點都正常運行并且狀態為SECONDARY
或PRIMARY
。
通過以上步驟,你應該能夠在Ubuntu上成功配置一個MongoDB復制集。