摘要:學習筆記安裝沒什么好說的主從復制參照這個地址創建證書并給各個服務器主要命令開啟副本集驗證初始化副本集添加備節點添加仲裁者節點啟動時需要增加的參數指定鏈接的關鍵密匙統一集合名稱從服務器可查參照這個地址分片分片就是將數據
Docker 學習筆記. Mongodb 安裝
沒什么好說的 = =!
Mongodb 主從復制參照這個地址 : http://dockone.io/article/181
創建證書并 copy 給各個服務器.
root@node *:/# mkdir -p /home/core root@node *:/# cd /home/core root@node *:/# openssl rand -base64 741 > mongodb-keyfile root@node *:/# chmod 600 mongodb-keyfile root@node *:/# sudo chown 999 mongodb-keyfile
主要命令: rs.initiate() 開啟副本集, rs.conf() 驗證初始化副本集, rs.add("node2.example.com") 添加備節點, rs.add("node3.example.com",{arbiterOnly: true}) 添加仲裁者節點.
--smallfiles --keyFile /opt/keyfile/mongodb-keyfile --replSet "rs0"
mongodb啟動時需要增加的參數, keyFile 指定鏈接的關鍵密匙, replSet 統一集合名稱.
Mongodb 從服務器可查參照這個地址 : http://docs.mongodb.org/manual/reference/method/rs.slaveOk/
Mongodb 分片分片就是將,數據分成幾個碎片來進行管理,提升性能.
主從(集群)可以作為一個片進入.
需要 config 服務, mongos 分配服務, 和片(mongod).
如果所有服務都不在同一主機, 那么需要配置 keyFile 與 主從一樣.
config:
docker --icc=true run -it --privileged=true -v /my/db/core/:/opt/keyfile -v /my/db/config/:/data/configdb -v /etc/localtime:/etc/localtime:ro -d --name config -p 20000:27017 centos-mongodb mongod --configsvr --port 27017 --keyFile /opt/keyfile/mongodb-keyfile --smallfiles
--icc=true 是為了讓 container 之間互通, -v /etc/localtime:/etc/localtime:ro 是為了同步時區,這樣mongodb 添加 config 的時候就不會出現時區不同步無法連接的情況了.
mongos:
docker --icc=true run -it --privileged=true -v /my/db/core/:/opt/keyfile -v /etc/localtime:/etc/localtime:ro -p 27017:27017 -d --name mongos --add-host config.example.com:10.174.35.78 centos-mongodb mongos --configdb config.example.com:27017 --keyFile /opt/keyfile/mongodb-keyfile
mongos 需要配置好 config 后再配置, 配置好后 , 登陸可能會沒有權限, 所以先創建 root 用戶.
use admin db.createUser({user:"root",pwd:"passwd",roles:[{role:"root",db:"admin"}]}) db.auth("root","passwd")
其他工具登陸也使用這個用戶名和密碼.
shard1:
docker --icc=true run -it --privileged=true -v /my/db/core/:/opt/keyfile -v /my/db/shard1/:/data/db -v /etc/localtime:/etc/localtime:ro -d -p 10001:27017 --name shard1 centos-mongodb mongod --shardsvr --port 27017 --keyFile /opt/keyfile/mongodb-keyfile --smallfiles
shard2:
docker --icc=true run -it --privileged=true -v /home/core/:/opt/keyfile -v /home/core/shard/shard2/:/data/db -v /etc/localtime:/etc/localtime:ro -d -p 10002:27017 --name shard2 centos-mongodb mongod --shardsvr --port 27017 --keyFile /opt/keyfile/mongodb-keyfile --smallfiles
回到 mongos
sh.addShard("shard1.example.com:10001") sh.addShard("shard2.example.com:10002")
同上選一種
db.runCommand({addShard:"shard1.example.com:10001"}) db.runCommand({addShard:"shard2.example.com:10002"})
查看分片結果
db.printShardingStatus()
刪除片
db.runCommand({removeshard:"shard1.example.com:10001"})
為數據和表指定分片模式, 好像建議不選擇 _id 為分片 key.
db.runCommand({enablesharding:"myTest"}) db.runCommand({shardcollection:"myTest.test",key:{_id:1}})
至此分片完成, 可以進行實際操作.
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26426.html
摘要:運行容器意外的官方參考地址,多次嘗試命令最終無法運行,帶項時后是狀態,修改配置沒反應日志無報錯退出。目前容器整體情況是主從,個相同一個。后續運行的容器數視情況而定。接下來計劃針對,一些實際應用場景進行實踐驗證。 目標需求: 密碼登錄+容器數據共享,主從復制 1.配置啟動 添加配置文件夾,組織容器命令。 a.官方未提供相關信息 從測試容器中匹配搜索得到 mongod.conf.orig,...
摘要:學習筆記安裝沒什么好說的主從復制參照這個地址創建證書并給各個服務器主要命令開啟副本集驗證初始化副本集添加備節點添加仲裁者節點啟動時需要增加的參數指定鏈接的關鍵密匙統一集合名稱從服務器可查參照這個地址分片分片就是將數據 Docker 學習筆記. Mongodb 安裝 沒什么好說的 = =! Mongodb 主從復制 參照這個地址 : http://dockone.io/artic...
摘要:已經發布到,只要在環境下安裝即可。下面通過來構建開發環境,提高開發體驗。容器容器的實質是進程,但與直接在宿主執行的進程不同,容器進程運行于屬于自己的獨立的命名空間。部署開發環境部署開發環境其實很簡單,只需要配置和即可。 前言 本次博文依然是對 multi-spa-webpack-cli 的擴充和完善。 集成 mongoose。 集成 Docker 開發環境。 multi-spa-w...
閱讀 1148·2021-11-24 10:43
閱讀 3102·2021-11-22 09:34
閱讀 3549·2021-10-08 10:04
閱讀 3932·2021-09-23 11:58
閱讀 3115·2019-08-30 15:44
閱讀 484·2019-08-30 13:01
閱讀 1155·2019-08-28 18:07
閱讀 1448·2019-08-26 13:42