debian

Debian MongoDB集群搭建教程

小樊
57
2025-07-16 09:23:13
栏目: 云计算

在Debian上搭建MongoDB集群涉及多个步骤,包括安装MongoDB、配置副本集(Replica Set)以及设置高可用性。以下是一个基本的指南:

安装MongoDB

  1. 更新系统
sudo apt update && sudo apt upgrade -y
  1. 导入MongoDB公钥
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
  1. 创建MongoDB列表文件
echo "deb [ archamd64,arm64 ] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
  1. 更新包列表并安装MongoDB
sudo apt update
sudo apt install -y mongodb-org
  1. 启动MongoDB服务
sudo systemctl start mongod
  1. 设置MongoDB服务开机自启
sudo systemctl enable mongod
  1. 验证安装
mongo --eval 'db.runCommand({ connectionStatus: 1 })'

配置MongoDB副本集

  1. 启动MongoDB实例

    • 主节点(Primary):
      mongod --port 27017 --dbpath /data/db1 --replSet myReplicaSet
      
    • 从节点(Secondary):
      mongod --port 27018 --dbpath /data/db2 --replSet myReplicaSet
      
  2. 初始化副本集: 连接到主节点(Primary):

    mongo --port 27017
    

    在mongo shell中执行以下命令初始化副本集:

    rs.initiate(
      {
        _id: "myReplicaSet",
        members: [
          { _id: 0, host: "192.168.1.100:27017" },
          { _id: 1, host: "192.168.1.101:27017" },
          { _id: 2, host: "192.168.1.102:27017" }
        ]
      }
    )
    
  3. 验证副本集状态

    rs.status()
    

配置高可用性(可选)

  1. 启用复制集仲裁者(可选): 如果需要仲裁者,可以启动一个仲裁节点:

    mongod --port 27019 --dbpath /data/db3 --replSet myReplicaSet --arbiterOnly
    
  2. 配置优先级: 在主节点上设置优先级,以确保在主节点故障时能够自动选举新的主节点:

    cfg = rs.conf()
    cfg.members[0].priority = 2
    rs.reconfig(cfg)
    
  3. 启用自动故障转移: 确保副本集成员支持自动故障转移,这通常在副本集初始化时已经默认启用。

  4. 监控和管理: 使用MongoDB的监控工具,如mongostatmongotop,来监控集群的健康状况和性能。

0
看了该问题的人还看了