debian

MongoDB在Debian上的集群搭建

小樊
33
2025-03-21 07:26:34
栏目: 云计算

在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
sudo systemctl enable mongod

二、配置MongoDB副本集

  1. 创建密钥文件
openssl rand -base64 756 > mongodb-keyfile
sudo chmod 600 mongodb-keyfile
  1. 复制密钥文件到所有节点
scp mongodb-keyfile username@remotehost:/path/to/mongodb-keyfile
  1. 配置MongoDB使用密钥文件: 编辑 /etc/mongod.conf 文件,添加或修改以下配置项:
security:
  keyFile: /path/to/mongodb-keyfile
  1. 初始化副本集: 在主节点上执行:
mongo
rs.initiate({
  _id: "rs0",
  members: [
    { _id: 0, host: "node1:27017" },
    { _id: 1, host: "node2:27017" },
    { _id: 2, host: "node3:27017", arbiterOnly: true }
  ]
})
  1. 添加其他节点: 在其他节点上执行:
mongo --host node2:27017
rs.add("node3:27017")

三、搭建高可用集群(可选)

  1. 配置复制集: 确保所有节点都已加入同一个复制集。

  2. 配置Config Server: 在任意一个节点上执行:

mongod --configsvr --replSet rs0 --dbpath /data/configdb --port 27019
  1. 搭建mongos: 在任意一个节点上执行:
mongos --configdb rs0/node1:27019,node2:27019,node3:27019 --port 27017
  1. 添加分片
mongos> sh.addShard("rs0/node1:27010,node2:27010,node3:27010")
  1. 验证集群状态
mongos> sh.status()

以上步骤提供了在Debian上搭建MongoDB副本集和高可用集群的基本流程。根据实际需求,您可能还需要进行更多的配置和优化。

0
看了该问题的人还看了