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

概要

このチュートリアルでは、1つの作成者​インスタンスと​1つの発行​インスタンスに対してMSRPを設定する方法を説明します。

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

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

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

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

MongoDB

MongoDB のインストール

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

    • OSの選択:

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

      • 少なくともバージョン2.6を使用してください
  • 基本設定

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

    • Mongod用の設定

      • Mongoや共有を設定する必要がない
    • インストールされたMongoDBフォルダは<mongo-install>と呼ばれます

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

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

MongoDB を起動します。

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

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

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

MongoDBが​AEMの後に​起動された場合、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に適している
    • バージョン4.10またはバージョン5を使用
    • Solr には Java 1.7 以降が必要です。
  • 基本設定

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

AEM Communities のための Solr の設定

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

  1. SolrをスタンドアロンまたはSolrCloudモードで実行
  2. standardまたはadvanced多言語検索(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開始.jar

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

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

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

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

テスト

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

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

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

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

    chlimage_1-191

  4. 作成者インスタンスに対するコメントを表示するだけです(管理者/管理者としてサインインしている可能性が高い)。

    chlimage_1-192

    注意:オーサーインスタンスの asipath の下には JCR ノードがありますが、これらは SCF フレームワーク用のものです。実際のUGCはJCRにはなく、MongoDBにあります。

  5. mongodb Communities/Collections/Content​にUGCを表示

    chlimage_1-193

  6. UGCをSolrで表示:

    • ソルダッシュボードを参照:http://localhost:8983/solr/
    • ユーザーcore selectorcollection1を選択
    • Query
    • Execute Query

    chlimage_1-194

トラブルシューティング

UGC が表示されない

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

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

    またはAEMリポジトリを確認します。

    • JCRで、/etc/socialconfig

      • srpcノードを含まない。ストレージプロバイダーがJSRPであることを意味する
      • srpcノードが存在し、ノードdefaultconfigurationを含む場合、デフォルトの構成のプロパティでMSRPをデフォルトプロバイダーとして定義する必要があります
  3. MSRPを選択した後にAEMが再起動されたことを確認します。

このページ

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now