標籤:
前提: 分區伺服器不設定從服務和均衡服務,只有主伺服器;
當前測試為所有伺服器均在同一台物理機上。
1.測試環境:192.168.1.55.
2.測試模式:單機。
3.服務:分區伺服器1:192.168.1.55:10001
分區伺服器2:192.168.1.55:10002
設定管理員: 192.168.1.55:20001
路由伺服器: 192.168.1.55:30001
4.目錄設定:
分區伺服器1:/usr/mongodbtest/sd1,內含目錄data,log目錄,設定檔
分區伺服器2:/usr/mongodbtest/sd2,內含目錄data,log目錄,設定檔
設定管理員: /usr/mongodbtest/cfg1,內含目錄data,log目錄,設定檔
路由伺服器: /usr/mongodbtest/rout,內含log檔案
5.設定檔:
分區伺服器1:
systemLog:
destination: file
logAppend: true
path: /usr/mongodbtest/sd1/log/mg.log
storage:
dbPath: /usr/mongodbtest/sd1/data
journal:
enabled: true
engine: wiredTiger
processManagement:
fork: true
pidFilePath: /usr/mongodbtest/sd1/mongod.pid
net:
port: 10001
分區伺服器2:
類似1.
設定管理員:
多2個參數:
replication:
replSetName: set61
sharding:
clusterRole: configsvr
設定管理員:
暫用命令方式,見第8步。
6.啟動分區和設定管理員:
> ./mongod --config 實際的設定檔路徑
7.初始化設定管理員:
> ./mongo 192.168.1.55:20001
>rs.initiate({
_id:"set61",
configsvr: true,
members:[ { _id: 0, host:"192.168.1.55:20001"} //可設定多台
]
})
8. 啟動路由伺服器:
./mongos --port 30001 --configdb set61/192.168.1.55:20001 --logappend -- logpath
/usr/mongodbtest/rout/rt.log --fork
9. 增加分區
> ./mongo 192.168.1.55:30001
mongos> sh.addShard("192.168.1.55:10001");
mongos> sh.addShard("192.168.1.55:10002");
10.啟用分區
> ./mongo 192.168.1.55:30001
mongos>sh.enableSharding("你的資料庫")
11.增加片鍵
sh.shardCollection("gwgps.location", { "hostid": 1})
12.增加索引,插入資料等等步驟。
Linux下的mongodb分區部署