Pages

2011/05/11

Mongodb ShardのためにUpstart起動スクリプト

Ubuntu向け。

10-genのリポジトリからmongodb(mongodb-10gen)を入れた場合、普通のMongoDB起動スクリプトがはいります。

Shardingするなら必須のConfig, Router用は別途必要なのでUpstart用に作成した。

init.dのことは忘れなさい。
 


概要


設定はコンフィグファイルへ。
Upstartからstart-stop-daemonで起動する。
操作はinitctl、識別用・monit用にpidの作成も。
 

mongo_config


2つのファイルを作成しよう。

confファイル作成


cat >/etc/mongo_config.conf<<'EOFEOF'
# mongo_config.conf
dbpath=/var/lib/mongo_config

#where to log
logpath=/var/log/mongo_config/mongo_config.log

logappend=true

port = 27019

# verbose = true
# cpu = true
# rest = true
EOFEOF

initctl配下に


cat >/etc/init/mongo_config.conf<<'EOFEOF'
# Ubuntu upstart file at /etc/init/mongo_config.conf

limit nofile 20000 20000

pre-start script
mkdir -p /var/lib/mongo_config/
chown mongodb:mongodb /var/lib/mongo_config/
mkdir -p /var/log/mongo_config/
chown mongodb:mongodb /var/log/mongo_config/
end script

start on runlevel [2345]
stop on runlevel [06]

script
ENABLE_MONGODB="yes"
PIDFILE=/var/run/mongo_config.pid
if [ "x$ENABLE_MONGODB" = "xyes" ]; then exec start-stop-daemon --start --quiet --chuid mongodb -m --pidfile $PIDFILE --exec /usr/bin/mongod -- --configsvr --config /etc/mongo_config.conf; fi
end script
EOFEOF

起動/終了/再起動


initctl start mongo_config
initctl stop mongo_config
initctl restart mongo_config

 
 

mongo_router


こちらもファイル2つ。

confファイル作成


configdb の所は各自の環境に合わせて編集します。

cat >/etc/mongo_router.conf<<'EOFEOF'
# mongo_router.conf
# dbpath=/var/lib/mongo_router

configdb={1 or 3 comma separated config servers}

#where to log
logpath=/var/log/mongo_router/mongo_router.log

logappend=true

port = 27017

# verbose = true
EOFEOF

 

initctl配下に


cat >/etc/init/mongo_router.conf<<'EOFEOF'
# Ubuntu upstart file at /etc/init/mongo_router.conf

limit nofile 20000 20000

pre-start script
mkdir -p /var/log/mongo_router/
chown mongodb:mongodb /var/log/mongo_router/
end script

start on runlevel [2345]
stop on runlevel [06]

script
ENABLE_MONGODB="yes"
PIDFILE=/var/run/mongo_router.pid
if [ "x$ENABLE_MONGODB" = "xyes" ]; then exec start-stop-daemon --start --quiet --chuid mongodb -m --pidfile $PIDFILE --exec /usr/bin/mongos -- --config /etc/mongo_router.conf; fi
end script
EOFEOF

 

起動/終了/再起動


initctl start mongo_router
initctl stop mongo_router
initctl restart mongo_router

 
 

0 件のコメント:

コメントを投稿