117.info
人生若只如初见

centos mongodb复制集配置教程

在CentOS系统上配置MongoDB复制集的步骤如下:

1. 安装MongoDB

首先,在所有参与复制集的服务器上安装MongoDB。

# 创建并配置MongoDB的yum仓库
cat < /etc/yum.repos.d/mongodb-org-5.0.repo
[mongodb-org-5.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc
EOF

# 安装MongoDB
yum install -y mongodb-org

2. 配置MongoDB实例

为每个服务器创建一个配置文件,例如:

mongod_1.conf

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

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

processManagement:
  fork: true

net:
  bindIp: 0.0.0.0
  port: 27017

对其他服务器重复上述步骤,确保每个实例使用不同的端口和数据目录。

3. 创建key文件

为副本集之间做通信认证,生成一个key文件:

openssl rand -base64 756 > /opt/mongodb/mongodb.key
chmod 400 /opt/mongodb/mongodb.key
chown mongod:mongod /opt/mongodb/mongodb.key

4. 修改MongoDB配置文件

在每个实例的配置文件中添加以下内容:

security:
  keyFile: /opt/mongodb/mongodb.key
replication:
  replSetName: "rs0"
net:
  bindIp: 0.0.0.0

5. 启动MongoDB实例

使用不同的配置文件启动每个实例:

mongod --config /etc/mongod_1.conf

对其他服务器重复上述步骤。

6. 初始化复制集

连接到主节点并初始化复制集:

mongo --port 27017

在Mongo shell中执行以下命令:

rs.initiate({
  _id: "rs0",
  members: [
    { _id: 0, host: "192.168.0.1:27017" },
    { _id: 1, host: "192.168.0.2:27017" },
    { _id: 2, host: "192.168.0.3:27017" }
  ]
})

7. 验证复制集状态

使用以下命令检查复制集的状态:

rs.status()

8. 添加从节点和仲裁节点(可选)

如果需要添加从节点或仲裁节点,可以使用rs.add()rs.addArb()命令:

rs.add("192.168.0.4:27017")  // 添加从节点
rs.addArb("192.168.0.5:27017")  // 添加仲裁节点

9. 配置特殊角色(可选)

可以为节点设置特殊角色,如隐藏节点或延迟节点:

cfg = rs.conf()
cfg.members[1].priority = 0
cfg.members[1].hidden = true
rs.reconfig(cfg)

通过以上步骤,你就可以在CentOS系统上成功配置MongoDB复制集。更多详细信息和高级配置,请参考MongoDB官方文档

未经允许不得转载 » 本文链接:https://www.117.info/ask/feb96AzsKAA9QBlI.html

推荐文章

  • 如何在 CentOS 上部署 K8s 集群

    在CentOS上部署K8s集群可以通过kubeadm工具来实现。以下是详细的步骤: 环境准备: 确保所有节点(至少一个Master节点和多个Worker节点)满足硬件要求,建议配置...

  • CentOS 与 Kubernetes 的集成方案有哪些

    CentOS与Kubernetes的集成方案主要包括以下步骤: 安装Docker:
    在每台服务器上安装Docker作为容器运行时环境。
    sudo yum install -y yum-utils devic...

  • 安装 CentOS K8s 后如何进行性能优化

    安装 CentOS K8s 后进行性能优化可以通过以下几个方面来实现: 硬件/网络/存储/架构等层面的优化: 虚拟机或物理服务器层面的优化: 使用较新的服务器,并根据类...

  • CentOS K8s 安装是否需要购买额外服务

    CentOS 上安装 Kubernetes (K8s) 不一定需要购买额外服务,但根据具体需求,可能会需要一些额外的配置和服务。 云主机配置:官方建议最低云主机配置为2核4G内存,...

  • centos mongodb故障排查指南

    在CentOS上排查MongoDB故障时,可以按照以下步骤进行:
    1. 检查MongoDB服务状态 使用命令 systemctl status mongod.service 检查MongoDB服务是否正在运行。...

  • centos mongodb日志管理方法

    在CentOS上管理MongoDB日志,通常涉及以下几个关键步骤:
    日志文件位置和查看 MongoDB的日志文件通常位于 /var/log/mongodb/ 目录下,主日志文件名为 mongo...

  • centos mongodb内存配置技巧

    在CentOS上配置MongoDB的内存涉及多个方面,包括操作系统设置、MongoDB软件配置以及数据库设计和查询优化等。以下是一些具体的配置技巧和优化建议:
    基本配...

  • centos mongodb版本选择建议

    在CentOS上安装MongoDB时,选择合适的版本非常重要。以下是一些建议,帮助你做出明智的选择:
    推荐版本 稳定版:对于大多数用户来说,推荐使用MongoDB的最新...