MongoDB をデモ用に設定する方法

はじめに

このチュートリアルでは、MSRPを​1つのオーサー​インスタンスと​1つのパブリッシュ​インスタンス用に設定する方法について説明します。

このセットアップを終えると、ユーザー生成コンテンツ(UGC)のフォワードまたはリバースレプリケーションをおこなわずに、オーサー環境とパブリッシュ環境の両方からコミュニティコンテンツにアクセスできるようになります。

この設定は、開発用やデモ用の環境など、非実稼動​環境に適しています。

実稼動環境では、以下のことが必要です。​**

  • レプリカセットでMongoDBを実行する
  • SolrCloudを使用
  • 複数のパブリッシャーインスタンスを含む

MongoDB

MongoDB のインストール

  • https://www.mongodb.org/からMongoDBをダウンロードします

    • OSの選択:

      • Linux
      • Mac 10.8
      • Windows 7
    • バージョンの選択:

      • 少なくともバージョン2.6を使用する
  • 基本設定

    • MongoDBのインストール手順に従います。

    • mongod用に設定:

      • モンゴや共有を設定する必要はありません。
    • インストールされたMongoDBフォルダーは、<mongo-install>と呼ばれます。

    • 定義されたデータディレクトリのパスは、<mongo-dbpath>と呼ばれます。

  • MongoDBは、AEMと同じホスト上で実行するか、リモートで実行できます。

MongoDB を起動します。

  • <mongo-install>/bin/mongod --dbpath <mongo-dbpath>

すると MongoDB サーバーが起動します。使用されるデフォルトポートは 27017 です。

  • Mac では、起動引数「ulimit -n 2048」を使用して ulimit を増やします。
メモ

AEM *の後にMongoDBが起動された場合、restart​すべての​AEM*​インスタンスがMongoDBに正しく接続されるようにします。

実稼動デモのオプション:MongoDB レプリカセットのセットアップ

以下のコマンドは、ローカルホストに 3 つのノードを持つレプリカセットの設定例です。

  • bin/mongod --port 27017 --dbpath data --replSet rs0&

  • bin/mongo

    • cfg = {"_id": "rs0","version": 1,"members": [{"_id": 0,"host": "127.0.0.1:27017"}]}
    • rs.initiate(cfg)
  • bin/mongod --port 27018 --dbpath data1 --replSet rs0&

  • bin/mongod --port 27019 --dbpath data2 --replSet rs0&

  • bin/mongo

    • rs.add("127.0.0.1:27018")
    • rs.add("127.0.0.1:27019")
    • rs.status()

Solr

Solr のインストール

  • Apache LuceneからSolrをダウンロードします。

    • 任意のOSに適しています。
    • Solrバージョン7.0。
    • SolrにはJava 1.7以降が必要です。
  • 基本設定

    • 「例」のSolr設定に従います。
    • サービスは不要です。
    • インストールされたSolrフォルダーは、<solr-install>と呼ばれます。

AEM Communities のための Solr の設定

MSRP のための Solr コレクションをデモ目的で設定するには、以下の 2 点を決定する必要があります(詳しくは、主なドキュメントへのリンクを選択してください)。

  1. Solrをスタンドアロンで、またはSolrCloudモードで実行します。
  2. 標準のまたは高度な多言語検索(MLS)をインストールします。

スタンドアロンの Solr

Solr を実行する方法は、バージョンとインストール方法によって異なる場合があります。詳しくは、公式ドキュメントである Solr リファレンスガイドを参照してください。

ここでは簡単に、バージョン 4.10 を使用して、Solr をスタンドアロンモードで起動します。

  • cd to <solrinstall>/example
  • java -jar start.jar

これにより、Solr HTTP サーバーが起動します。使用されるデフォルトポートは 8983 です。Solr コンソールを参照し、Solr コンソールを試しに開くことができます。

メモ

Solr コンソールが使用できない場合は、<solrinstall>/example/logs にあるログを確認します。SOLRが解決できない特定のホスト名にバインドしようとしているかどうかを確認します(例:"user-macbook-pro")です。
その場合、このホスト名の新しいエントリ(127.0.0.1 user-macbook-pro など)を使用して etc/hosts ファイルを更新します。すると Solr が適切に起動します。

SolrCloud

非常に基本的な(実稼動用ではない)solrCloud のセットアップを実行するには、以下のコマンドで Solr を起動します。

  • java -Dbootstrap_confdir=./solr/collection1/conf -Dbootstrap_conf=true -DzkRun -jar start.jar

MongoDB を共通ストアとして指定

AEM オーサーインスタンスとパブリッシュインスタンスを起動します(必要な場合)。

AEM が MongoDB を起動する前に実行されている場合、AEM インスタンスを再起動する必要があります。

詳しくは、MSRP - MongoDB 共通ストアの手順に従ってください。

テスト

MongoDB 共通ストアをテストおよび検証するために、パブリッシュインスタンスにコメントを投稿して、オーサーインスタンスでそのコメントを表示し、さらに MongoDB と Solr で UGC を表示します。

  1. パブリッシュインスタンスで、コミュニティコンポーネントガイドページを参照し、コメントコンポーネントを選択します。

  2. ログインしてコメントを投稿する:

  3. コメントテキスト入力ボックスにテキストを入力し、「投稿」をクリックします。

    コメント後

  4. オーサーインスタンスでコメントを表示するだけです(通常はadmin / adminとしてサインインしています)。

    view-comment

    注意:オーサー環境の​asipath​の下にJCRノードがありますが、これらはSCFフレームワーク用です。 実際のUGCはJCRには含まれず、MongoDBに含まれます。

  5. mongodb Communities > コレクション > コンテンツ​でUGCを表示します。

    ugc-content

  6. SolrでUGCを表示します。

    • Solrダッシュボードを参照します。http://localhost:8983/solr/.
    • ユーザーcore selectorcollection1を選択します。
    • Query.
    • Execute Query.

    ugc-solr

トラブルシューティング

UGC が表示されない

  1. MongoDBがインストールされ、正しく動作していることを確認します。

  2. MSRPがデフォルトのプロバイダーに設定されていることを確認します。

    • すべてのオーサーインスタンスとパブリッシュAEMインスタンスで、ストレージ設定コンソールに再度アクセスするか、AEMリポジトリを確認します。

    • JCRで、/etc/socialconfigsrpcノードが含まれていない場合、ストレージプロバイダーがJSRPであることを意味します。

    • srpcノードが存在し、ノードdefaultconfigurationが含まれる場合は、defaultconfigurationのプロパティでMSRPがデフォルトのプロバイダーとして定義されている必要があります。

  3. MSRPを選択した後でAEMが再起動されたことを確認します。

このページ