MongoDB最新4.2.7版本三分片集群修改IP实操演练
背景
重新組網,需要對現有MongoDB分片集群服務器的IP進行更改,因此也需要對MongoDB分片集群的IP也進行相應的更新,而MongoDB分片集群的IP修改不能單純的通過配置來進行,需要一番折騰后才能正常更新,這里對整個MongoDB集群的IP修改過程做下記錄,希望對有同樣需求的小伙伴有所幫助。
作者:依樂祝
原文地址:https://www.cnblogs.com/yilezhu/p/13536628.html
原有集群配置如下
| mongos | mongos | mongos |
| config server | config server | config server |
| shard server1 主節點 | shard server1 副節點 | shard server1 仲裁 |
| shard server2 仲裁 | shard server2 主節點 | shard server2 副節點 |
| shard server3 副節點 | shard server3 仲裁 | shard server3 主節點 |
這里的端口分配如下所示:
| config server | 21000 |
| shard server1 | 27001 |
| shard server2 | 27002 |
| shard server3 | 27003 |
IP修改對應關系如下:
| 172.168.7.16 | 172.168.7.16 |
| 172.168.7.21 | 172.168.7.21 |
更改IP步驟
升級過程是先升級?Config?服務,再分別升級三個?Shard?配置,最后修改一個?mongos?的路由。當然了,在開始之前需要確保MongDB分片集群都已經停掉了。
停掉的步驟也很簡單。?ps -ef | grep mongo?找到對應的線程id,然后?kill?掉即可。
修改config 節點的IP
用如下命令,以?standlone? 模式啟動一個?Config?服務
新打開一個shell,連接上這個config服務
進入到?local?數據庫查看?replset?集合,并修改對應的host
上面最后一行是把修改好的內容查出來以便于查看下修改是否成功。
按照同樣的步驟以?standlone?模式啟動啟動另外兩個config節點,并修改另外兩個config服務節點的信息。
停掉這三個以?standlone?模式啟動的config服務節點
分別按照正常集群模式啟動這三個config節點
看到如下所示,說明選舉成功了。
登錄到?primary?節點,修改分片信息
至此config服務節點的修改完成,接下來進行shard節點的修改
修改shard分片的IP信息
以?standlone?模式啟動分片1,然后登錄進去
切換到?admin?數據庫的?version?集合查看下?config?配置信息,如果有?_id:shardIdentity?的數據則進行下更新,當然這里如果有?_id:minOpTimeRecovery?的數據也需要更新
修改復制集的配置信息,復制集的配置信息都保存再?local?庫的?system.replset?集合中
重復上述步驟分別對shaed2,shard3進行ip的更改
最后按照集群的模式啟動你的三個分片即可。
修改mongos服務的路由信息
用vim打開mongos的配置文件,修改對應的?configserver?配置項為最新的configderver地址
按集群模式啟動mongos服務即可
登錄驗證下即可
至此,MongoDB分片集群IP修改結束。
往期精彩回顧
【推薦】.NET Core開發實戰視頻課程?★★★
.NET Core實戰項目之CMS 第一章 入門篇-開篇及總體規劃
【.NET Core微服務實戰-統一身份認證】開篇及目錄索引
Redis基本使用及百億數據量中的使用技巧分享(附視頻地址及觀看指南)
.NET Core中的一個接口多種實現的依賴注入與動態選擇看這篇就夠了
10個小技巧助您寫出高性能的ASP.NET Core代碼
用abp vNext快速開發Quartz.NET定時任務管理界面
在ASP.NET Core中創建基于Quartz.NET托管服務輕松實現作業調度
現身說法:實際業務出發分析百億數據量下的多表查詢優化
關于C#異步編程你應該了解的幾點建議
C#異步編程看這篇就夠了
給我好看 您看此文用??·?秒,轉發只需1秒呦~ 好看你就點點我總結
以上是生活随笔為你收集整理的MongoDB最新4.2.7版本三分片集群修改IP实操演练的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NET5.0 Preview 8 开箱
- 下一篇: 做权限认证,还不了解IdentitySe