ubuntu

如何在Ubuntu上部署MongoDB副本集

小樊
44
2025-07-26 01:06:07
栏目: 云计算

在Ubuntu上部署MongoDB副本集涉及几个步骤,包括安装MongoDB、配置副本集以及启动服务。以下是一个详细的指南:

1. 安装MongoDB

首先,确保你的Ubuntu系统是最新的:

sudo apt update
sudo apt upgrade

然后,添加MongoDB官方APT仓库:

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list

更新APT包列表并安装MongoDB:

sudo apt update
sudo apt install -y mongodb-org

2. 配置MongoDB

编辑MongoDB配置文件 /etc/mongod.conf,确保以下配置项正确设置:

# MongoDB Configuration File

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访问,生产环境中请根据需要修改

replication:
  replSetName: rs0  # 副本集名称

3. 启动MongoDB服务

启动MongoDB服务并设置为开机自启:

sudo systemctl start mongod
sudo systemctl enable mongod

4. 初始化副本集

连接到MongoDB实例并初始化副本集:

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><secondary_ip> 替换为你的主节点和从节点的IP地址。

5. 验证副本集状态

在Mongo shell中执行以下命令来验证副本集的状态:

rs.status()

你应该看到所有节点都处于 SECONDARYPRIMARY 状态,并且副本集已经成功初始化。

6. 配置防火墙

确保防火墙允许MongoDB的端口(默认是27017):

sudo ufw allow 27017

7. 监控和维护

定期监控副本集的健康状况,并根据需要进行维护。你可以使用MongoDB自带的工具或第三方监控工具来监控副本集的状态。

通过以上步骤,你就可以在Ubuntu上成功部署一个MongoDB副本集。

0
看了该问题的人还看了