mongo 集群 搭建与测试结果

2018-08-10  本文已影响0人  一切都女子

注:mongo实例 没有用副本集 直接用的mongod

  1. 搭建环境
    目录 : /data/db
    cd /data/db
    mkdir 10001 20001 27017 27018 keyfile
    10001 config配置目录
    20001 mongos配置目录
    27017 mongod 实例配置目录
    27018 mongod 实例配置目录
    keyfile 放openssl生成的key

     1. 启动mongoldb config    
     /data/home/user00/playcrab/usr/mongodb/bin/mongod --smallfiles --fork --port 
     10001 --dbpath=10001 --logpath=10001/mongo.log --configsvr
     2.启动mongoldb  mongos
     /data/home/user00/playcrab/usr/mongodb/bin/mongos  --fork --port 20001          --logpath=20001/mongo.log --configdb=192.168.5.207:10001
     3.启动mongoldb   mongo    
     /data/home/user00/playcrab/usr/mongodb/bin/mongod --fork --port 27017  
     --logpath=27017/mongo.log --dbpath=27017
     /data/home/user00/playcrab/usr/mongodb/bin/mongod --fork --port 27018  
     --logpath=27018/mongo.log --dbpath=27018/
    
    
     进入mongos 创建管理权限
     /data/home/user00/playcrab/usr/mongodb/bin/mongo  192.168.5.207:20001
     命令
     db.createUser({user:"qxy",pwd:"qxy",roles:[{role:"root",db:"admin"}]})
     db.createUser({user:”testUser",pwd:"testUser",
     roles:      [{role:"readWrite",db:”war_9991"}]})
    
    
     进入两个mongo 创建管理权限
     /data/home/user00/playcrab/usr/mongodb/bin/mongo  192.168.100.7:27017
     db.createUser({user:"qxy",pwd:"qxy",roles:[{role:"root",db:"admin"}]})
     db.createUser({user:”testUser",pwd:"testUser",
     roles:  [{role:"readWrite",db:”war_9991"}]})
     /data/home/user00/playcrab/usr/mongodb/bin/mongo  192.168.100.7:27018
     db.createUser({user:"qxy",pwd:"qxy",roles:[{role:"root",db:"admin"}]})
     db.createUser({user:”testUser2",pwd:"testUser2",
     roles:  [{role:"readWrite",db:”war_9992"}]})
    
     将mongod,mongos 进程全部杀掉
    
     开启鉴权
     openssl rand -base64 755 > keyfile/mongodb-keyfile
     chmod 600  keyfile/mongodb-keyfile
    
     启动开启鉴权的命令
    
     /data/home/user00/playcrab/usr/mongodb/bin/mongod --smallfiles --fork 
     --port 10001 --dbpath=10001 --logpath=10001/mongo.log --configsvr 
     --keyFile=keyfile/mongodb-keyfile --auth
    
     /data/home/user00/playcrab/usr/mongodb/bin/mongos  --fork --port 20001  
     --logpath=20001/mongo.log --configdb=192.168.5.207:10001 
     --keyFile=keyfile/mongodb-keyfile
    
    
     /data/home/user00/playcrab/usr/mongodb/bin/mongod  --fork --port 27017  
     --logpath=27017/mongo.log --dbpath=27017 --keyFile=keyfile/mongodb-keyfile
    
     /data/home/user00/playcrab/usr/mongodb/bin/mongod  --fork --port 27018  
     --logpath=27018/mongo.log --dbpath=27018 --keyFile=keyfile/mongodb-keyfile
    
    
     命令行连接:
     /data/home/user00/playcrab/usr/mongodb/bin/mongo  192.168.5.207:20001 -uqxy 
     -pqxy --authenticationDatabase admin
    

测试:

两台机器  php-fpm各开500个进程   192.168.100.6   192.168.100.7
8.php程序文件  里面执行的程序是  对数据库读一次写一次
通过ab压测
压测直连mongo
 ab -c 2000 -n 2000 http://192.168.100.6:8001/demo/8.php   连续压测3次  300左右处理
image.png
压测连接mongos
ab -c 2000 -n 2000 http://192.168.100.7:8001/demo/8.php   连续压测3次   600左右测试
image.png
正常2台机器的所有php-fpm去连接mongos   下面的连接数
mongos的连接数
image.png
mongod的连接数
image.png
在高并发的压测下
mongos的连接数
image.png
mongod的连接数  反复压测  这个值不变的
image.png
20分钟左右,mongod的连接数  会降下去
image.png
上一篇 下一篇

猜你喜欢

热点阅读