mongodbコピーセットを構築する


1.mongodbをダウンロードする

wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.8.4.tgz
2.monode 1を取り付けます。

tar -zxvf mongodb-linux-x86_64-1.8.4.tgz
mv mongodb-linux-i686-1.8.4 /opt/mongodb/node1/monmongodb-linux-i686-1.8.4
3.dbの作成

mkdir /data/mongodb/dbs/node1 -p
4.ログの作成

mkdir /data/mongodb/logs/node1 -p
touch /data/mongodb/logs/node1/log
4.スタートスクリプトを作成するinitConfig

dbpath=/data/mongodb/dbs/node1
fork=true
logpath=/data/mongodb/logs/node1/log
logappend=true
rest=true
port=27001
# replSet=replSet/192.168.1.254:27002,replSet/192.168.1.253:27001
# auth=true
5.起動スクリプトを修正する:startup.sh

/opt/mongodb/node1/mongodb-linux-i686-1.8.4/bin/mongod --config /opt/mongodb/node1/mongodb-linux-i686-1.8.4/config/initConfig
6.シャットダウンスクリプトを作成する(一般的なマシンルームは電源を切らない):shutdown.sh

PIDS=$(ps aux | grep mongo | tr -s '     ' '|' | cut -d '|' -f 2)
for PID in $PIDS
do
    kill -2 $PID
    echo shutdown mongodb process
done
7.モンゴルドを起動する

/opt/mongodb/node1/mongodb-linux-i686-1.8.4/bin/mongod --config /opt/mongodb/node1/mongodb-linux-i686-1.8.4/config/initConfig
8.対外開放ポート27001,28001

sudo vi /etc/sysconfig/iptables
sudo /sbin/service iptables restart
9.上記の方法に従って、2つのmongodbサービスを追加し、起動する。
10.replSetを構築する

/opt/mongodb/node1/mongodb-linux-i686-1.8.4/bin/mongo $host:$port/admin
rs.initiate()
rs.add("$anotherHost:$port");
10.mongodb管理者と一般ユーザーを追加する

use admin
db.addUser("root", "xxxx")

use appdb
db.addUser("admin", "xxxx")
db.addUser("readonly", "xxxx", true)