一 .环境:
#mongo1:
#172.31.100.97
?
#mongo2:
#172.31.100.81
?
#mongo3:
#172.31.100.82
?
#mongo1 and mongo2,mongo3
?
二 .基本安装
?
yum install ntp
#add
#restrict 172.31.100.0/24/etc/init.d/iptables stop && chkconfig iptables off
setenforce 0 && echo "SELINUX=disabled" >/etc/selinux/config
#edit /etc/crontab
*/10 * * * * root ntpdate 172.31.100.97
wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.7.tgz?_ga=1.235705353.941929558.1425604443
tar zxvf mongodb-linux-x86_64-2.6.7.tgz
mv mongodb-linux-x86_64-2.6.7 /usr/local/mongodb
ln -sf /usr/local/mongodb/bin/* /usr/sbin/
ln -sf /usr/local/mongodb/bin/mongod /usr/sbin/mongoc
ln -sf /usr/local/mongodb/bin/mongod /usr/sbin/mongod1
ln -sf /usr/local/mongodb/bin/mongod /usr/sbin/mongod2
ln -sf /usr/local/mongodb/bin/mongod /usr/sbin/mongod3
mkdir -p /data/mongodb/config/{data,log}
mkdir -p /data/mongodb/mongos/log
mkdir -p /data/mongodb/shard{1..3}/{data,log}
mkdir -p /etc/mongod
openssl rand -base64 753 >/etc/mongod/keyfile
chmod 600 /etc/mongod/keyfile
?
?
echo '#建立mongo1 and mongo2,mongo3配置服务'
cat >/etc/mongod/mongoc.conf </etc/mongod/mongos.conf</etc/mongod/mongod1.conf</etc/mongod/mongod2.conf</etc/mongod/mongod3.conf<
?
?
?
touch /etc/init.d/mongoc
touch /etc/init.d/mongos
touch /etc/init.d/mongod{1..3}
chmod 755 /etc/init.d/mongo*
?
?
?
?
#/etc/init.d/mongoc stop && \
/etc/init.d/mongos stop && \
/etc/init.d/mongod1 stop && \
/etc/init.d/mongod2 stop && \
/etc/init.d/mongod3 stop && \
netstat -ntlp|grep mongo
#/etc/init.d/mongoc start && \
/etc/init.d/mongos start && \
/etc/init.d/mongod1 start && \
/etc/init.d/mongod2 start && \
/etc/init.d/mongod3 start && \
netstat -ntlp|grep mongo
#/etc/init.d/mongoc restart && \
/etc/init.d/mongos restart && \
/etc/init.d/mongod1 restart && \
/etc/init.d/mongod2 restart && \
/etc/init.d/mongod3 restart && \
netstat -ntlp|grep mongo
?
?
三 .配置
?
?
?
?
[root@Centos ~]# mongo localhost:3100/admin
#复制集一(连到主节点上去操作)
> rs.initiate({"_id":"shard1",
"members":[
{"_id":1, "host":"172.31.100.97:3100",priority:2},
{"_id":2, "host":"172.31.100.82:3100"},
{"_id":3, "host":"172.31.100.81:3100"}
]
})
> rs.status()
#复制集二
[root@Centos ~]# mongo localhost:3200/admin
> rs.initiate({"_id":"shard2",
"members":[
{"_id":1, "host":"172.31.100.97:3200"},
{"_id":2, "host":"172.31.100.82:3200",priority:2},
{"_id":3, "host":"172.31.100.81:3200"}
]
})
> rs.status()
#复制集三
[root@Centos ~]# mongo localhost:3300/admin
> rs.initiate({"_id":"shard3",
"members":[
{"_id":1, "host":"172.31.100.97:3300"},
{"_id":2, "host":"172.31.100.82:3300"},
{"_id":3, "host":"172.31.100.81:3300", priority:2}
]
})
> rs.status()
#添加副本
shard1:PRIMARY> rs.remove("172.31.100.81:3100")
shard1:PRIMARY> rs.add("172.31.100.81:3100")
#移除分片
db.runCommand( { removeshard: "shard1" } )
#mongos加入分片主机
[root@Centos ~]# mongo localhost:27017/admin
mongos> db.runCommand({ addshard : "shard1/172.31.100.97:3100,172.31.100.82:3100,172.31.100.81:3100"});
mongos> db.runCommand({ addshard : "shard2/172.31.100.97:32