码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MongoDB副本集群节点扩容和收缩


    MongoDB节点扩容和收缩

    下面我们来就举例MongoDB库的副本集群节点扩容和收缩

    文章目录

    • MongoDB节点扩容和收缩
      • 1.副本集节点扩容
        • 1.1.创建新的节点目录
        • 1.2.修改文件端口
        • 1.3.启动新的节点
        • 1.4.登录节点
        • 1.5.在主节点执行扩容命令
        • 1.6.在子节点进行查看
        • 1.7.测试集群
      • 2.集群剔除操作
        • 2.1.使用住节点执行剔除操作
        • 2.2.被剔除集群的状态
        • 2.3.关闭被剔除的集群
        • 2.4.查看集群状态
      • 3.增加仲裁节点
        • 3.1.删除数据文件
        • 3.2.启动节点
        • 3.3.创建仲裁节点

    1.副本集节点扩容

    1.1.创建新的节点目录

    [root@localhost mongo_clusetr]# cp -rp mongodb_28017/ mongodb_28010
    
    [root@localhost mongo_clusetr]# cp  -rp /data/mongo_clusetr/mongodb_27017/ /data/mongo_clusetr/mongodb_28010
    
    • 1
    • 2
    • 3

    1.2.修改文件端口

    [root@localhost mongo_clusetr]# sed -i 's#28017#28010#g' mongodb_28010/conf/mongodb.yml
    
    • 1

    1.3.启动新的节点

    [root@localhost mongo_clusetr]# mongodb/bin/mongod -f mongodb_28010/conf/mongodb.yml
    
    • 1

    1.4.登录节点

    [root@localhost mongo_clusetr]# mongodb/bin/mongo db:28010
    
    • 1

    1.5.在主节点执行扩容命令

    dba1:PRIMARY> rs.add("192.168.40.4:28010")
    
    • 1

    在这里插入图片描述

    1.6.在子节点进行查看

    可以看到很快就切换到了集群的状态

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c4WSFi6L-1669217576532)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122160034865.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-onNOM4S1-1669217576533)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122160216731.png)]

    1.7.测试集群

    在主库插入数据在新增加的从库查询

    dba1:PRIMARY> db.test.insert({"name":"zhangsan","age":12})
    WriteResult({ "nInserted" : 1 })
    dba1:PRIMARY> 
    
    • 1
    • 2
    • 3

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3lK92xqY-1669217576534)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122160514055.png)]

    dba1:SECONDARY> db.test.find()
    { "_id" : ObjectId("637c826c7e632a69cc9d80c3"), "name" : "zhangsan", "age" : 11 }
    { "_id" : ObjectId("637c828d7e632a69cc9d80c4"), "name" : "zhangsan", "age" : 12 }
    
    
    • 1
    • 2
    • 3
    • 4

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LnkrH3Oh-1669217576534)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122160538841.png)]

    2.集群剔除操作

    剔除和扩容都是非常简单,只要注意一些命令不要操作失误

    2.1.使用住节点执行剔除操作

    dba1:PRIMARY> rs.remove("192.168.40.4:28010")
    {
    	"ok" : 1,
    	"operationTime" : Timestamp(1669104604, 1),
    	"$clusterTime" : {
    		"clusterTime" : Timestamp(1669104604, 1),
    		"signature" : {
    			"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
    			"keyId" : NumberLong(0)
    		}
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lVuHmUWm-1669217576535)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122161029708.png)]

    2.2.被剔除集群的状态

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qgUcWJj6-1669217576536)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122161056874.png)]

    被剔除的集群默认还是会占用资源,我们把他给关闭掉

    2.3.关闭被剔除的集群

    [root@localhost mongo_clusetr]# mongodb/bin/mongod -f mongodb_28010/conf/mongodb.yml --shutdown
    
    • 1

    2.4.查看集群状态

    可以看到id_3的端口已经消失了,节点被剔除

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9lU3VwvB-1669217576537)(D:\linux笔记总结\mongoDB\MongoDB节点扩容和收缩.assets\image-20221122161322930.png)]

    3.增加仲裁节点

    3.1.删除数据文件

    删除数据文件添加仲裁节点,仲裁节点不参与选举只会投票

    [root@localhost mongodb_28010]# rm -fr /data/mongo_clusetr/mongodb_28010/data/
    
    • 1

    3.2.启动节点

    [root@localhost mongo_clusetr]# mongodb/bin/mongod -f mongodb_28010/conf/mongodb.yml
    
    • 1

    3.3.创建仲裁节点

    在主库操作

    rs.addArb("192.168.40.4:28010")
    
    • 1

    再次登陆之后可以看到已经变成了仲裁节点

    dba1:ARBITER> 
    
    • 1
  • 相关阅读:
    什么是交互设计?大神总结
    IDEA插件开发(25)--Color Scheme Management
    【NLP】自然语言处理的语料库与词库
    Dorkish:一款针对OSINT和网络侦查任务的Chrome扩展
    使用Jekyll + GitHub Pages搭建个人博客
    千帆SDK开源到GitHub,开发者可免费下载使用!
    游戏开发者应该了解的小游戏变现逻辑
    【Flink源码】Flink心跳机制
    数据库管理工具,你可以用Navicat,但我选DBeaver!
    Python 迭代器与生成器
  • 原文地址:https://blog.csdn.net/qq_46020071/article/details/128010000
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号