新しいblogに移行しました

新ブログ "All Yout Bugs Are Belong To Ass" に移行しました!

2011-04-14

[Linux]さくらVPSにてMongoDBを一般ユーザ権限で動かす

MongoDBにすこし興味が出たので、このページを参考に、さくらVPS(CentOS 5.5)で動かしてみました。root無くても動かせそうだったので、ユーザ権限で動かすことにしました。

ユーザ権限で動かすので、その用意。

$HOMEにいろいろどっ散らかるのはイヤなので、$HOME/srcを作って、そこにMongoDBを置くことにしました。
~ $ mkdir ~/src

MongoDBの入手

こちらのサイトにLinux 64-bit向けのtarボールがあるので、おすすめ(recommended)と書かれてるバージョンのをwgetで引っ張ってきます。
~ $ wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.8.1.tgz

インストール

$HOME/srcにtarボールを移動して、そこで解凍します。
~ $ mv mongodb-linux-x86_64-1.8.1.tgz ~/src/
~ $ cd ~/src
~/src $ tar zxvf mongodb-linux-x86_64-1.8.1.tgz
~/src $ ln -s ~/src/mongodb-linux-x86_64-1.8.1.tgz ./mongodb
以上でインストール自体は完了です。なまら簡単だべ?

データストアの置き場所を用意する

MongoDBでは、デーモンプログラム"mongod"の起動オプション"--dbpath"で、データストアのパスを設定できます。
今回は、$HOME/src/mongodb/data/db をデータストアにします。
~ $ mkdir ~/src/mongodb/data/db -p
これだけです。

mongodを起こす

ではmongodを起こします。
~ $ ~/src/mongodb/bin/mongod --dbpath ~/src/mongodb/data/db
フォアグラウンドで起き上がってきて、ログをだくだく吐き出したら、無事に起動できています。止めるときはCtrl+Cすれば止まります。

mongod起こした状態でweb管理インターフェースを見てみる

mongodを起こすと、ログの中に
Thu Apr 14 11:14:40 [websvr] web admin interface listening on port 28017
のような記述が見受けられます。見ての通り、「Web管理インターフェースがポート28017で待ち受けている」ということです。試しにブラウザでVPSの28017番ポートにアクセスしてみると、以下のようなページを見ることが出来ます。
セキュリティ的にはこんなのを外部から見れるようにしておきたくないので、mongod起動時のオプション"--nohttpinterface"を付加して、この機能を止めておきましょう。
あとはdaemontools経由で起こすなりしてやれば良いというわけですね。

0 件のコメント: