6.3. MongoDB¶
MongoDBはスケーラビリティに優れたドキュメントベースのデーバベースシステムです。 ICE BackendではEdgeから受け取ったメッセージをMongoDBに格納しています。 また、WebベースのMongoDBの管理コンソールであるMongo-Expressを同梱しています。
6.3.1. サービス¶
6.3.1.2. Mongo-Express¶
- サービス開始(CentOSの場合)
$ service ice-mongo-express start
- サービス停止(CentOSの場合)
$ service ice-mongo-express stop
6.3.2. 管理コンソール¶
管理画面を表示するには以下のURLにアクセスします。
http://<ホスト名>/mongo-express/
ログイン画面では以下を入力してください。
Usernam e | ad mi n |
Passwor d | pa ss |
6.3.3. 設定ファイル¶
/opt/nec/pf/ice/config/mongod.conf MongoDBの設定ファイル
/opt/nec/pf/ice/config/mongo-express.config.js Mongo-Expressの設定ファイル
6.3.5. その他チューニング¶
6.3.5.1. スレッド数制限の緩和¶
MongoDBではパフォーマンスを確保するために必要なリソースとしてスレッド数を少なくとも32,000必要とします。 しかし、一部のLinuxディストリビューションでは一般ユーザが使用できるスレッド数が制限されています。 この制限されたスレッド数が極端に少ない場合、mongodbは起動時に以下のメッセージをログファイルに出力します。
20XX-XX-XXTXX:XX:XX.XXX-XXXX I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files.
ICEでは、このようなMongoDBのパフォーマンス問題を回避するために、 MongoDB用にスレッド数の制限を既定で32,000に設定します。
この値を変更する場合は、以下のいずれかの手順を実施してください。
インストール前の場合
ansible playbookのconf-default.ymlを開き、
ice.mongo.limit.nproc
の値を変更します。インストール後の場合
/etc/security/limits.confを開き、次の行の
32000
の値を変更します。
mongod soft nproc 32000
mongod hard nproc 32000
ファイルを保存したら、mongodユーザに切り替えてulimitを再読込します。
$ sudo su mongod
$ ulimit -n
6.3.6. 公式サイト¶
MongoDBに関するその他の情報は公式サイト( https://www.mongodb.com/ )をご参照ください。 また、Mongo-Expressに関する情報は公式サイト( https://github.com/mongo-express/mongo-express )をご参照ください。