溫馨提示×

MongoDB在Debian上的復制配置

小樊
47
2025-08-06 04:32:14
欄目: 云計算

在Debian上配置MongoDB復制(Replication)涉及設置一個主節點(Primary)和一個或多個從節點(Secondary)。以下是詳細的步驟指南:

1. 安裝MongoDB

首先,確保你已經在所有節點上安裝了MongoDB。你可以使用以下命令來安裝:

sudo apt update
sudo apt install -y mongodb-org

2. 配置主節點

編輯主節點的MongoDB配置文件 /etc/mongod.conf

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

net:
  port: 27017
  bindIp: 0.0.0.0  # 允許所有IP訪問,生產環境中應限制為特定IP

replication:
  replSetName: rs0  # 復制集名稱

重啟MongoDB服務以應用更改:

sudo systemctl restart mongod

3. 初始化復制集

連接到主節點并初始化復制集:

mongo --host <主節點IP> --port 27017

在Mongo shell中執行以下命令:

rs.initiate(
  {
    _id: "rs0",
    members: [
      { _id: 0, host: "<主節點IP>:27017" }
    ]
  }
)

4. 添加從節點

連接到主節點并添加從節點:

rs.add("<從節點IP>:27017")

5. 驗證復制集狀態

在Mongo shell中執行以下命令來驗證復制集的狀態:

rs.status()

你應該看到所有節點都列在復制集中,并且有一個節點被標記為 PRIMARY,其他節點被標記為 SECONDARY。

6. 配置從節點

確保從節點的配置文件 /etc/mongod.conf 中有以下設置:

replication:
  replSetName: rs0  # 復制集名稱

重啟從節點的MongoDB服務:

sudo systemctl restart mongod

7. 配置優先級(可選)

你可以配置節點的優先級來控制哪個節點成為主節點。編輯節點的配置文件 /etc/mongod.conf

replication:
  replSetName: rs0
  priority: 2  # 默認值為1,數值越高優先級越高

重啟MongoDB服務:

sudo systemctl restart mongod

8. 配置隱藏節點(可選)

如果你需要隱藏某些節點,可以在初始化復制集時設置 hidden 屬性:

rs.initiate(
  {
    _id: "rs0",
    members: [
      { _id: 0, host: "<主節點IP>:27017", priority: 2 },
      { _id: 1, host: "<從節點IP>:27017", priority: 1, hidden: true }
    ]
  }
)

9. 監控復制集

你可以使用MongoDB的監控工具來監控復制集的狀態和性能。例如,使用 mongostatmongotop 工具:

sudo apt install -y mongodb-clients
mongostat
mongotop

通過以上步驟,你應該能夠在Debian上成功配置MongoDB復制集。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女