AEM 6.4 のストレージ要素 storage-elements-in-aem

CAUTION
AEM 6.4 の拡張サポートは終了し、このドキュメントは更新されなくなりました。 詳細は、 技術サポート期間. サポートされているバージョンを見つける ここ.

この記事では、以下について説明します。

AEM 6 のストレージの概要 overview-of-storage-in-aem

AEM 6 で最も重要な変更の 1 つは、リポジトリレベルでのイノベーションです。

現在、AEM6 には 2 つのノードストレージ実装が使用できます。Tar ストレージと MongoDB ストレージ。

Tar ストレージ tar-storage

新規にインストールした AEM インスタンスと Tar ストレージの実行 running-a-freshly-installed-aem-instance-with-tar-storage

CAUTION
セグメントノードストアの PID は、以前のバージョンの AEM 6 の org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStoreService から、AEM 6.3 では org.apache.jackrabbit.oak.segment.SegmentNodeStoreService に変更されました。この変更が反映されるように、必要な設定を調整してください。

デフォルトでは、AEM 6 は Tar ストレージを使用して、デフォルトの設定オプションを使用してノードとバイナリを保存します。 ストレージ設定を手動で構成するには、次の手順に従います。

  1. AEM 6 quickstart jar をダウンロードし、新しいフォルダーに配置します。

  2. 次を実行してAEMを解凍します。

    java -jar cq-quickstart-6.jar -unpack

  3. インストールディレクトリ内に crx-quickstart\install というフォルダーを作成します。

  4. 新しく作成したフォルダー内に org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.cfg というファイルを作成します。

  5. ファイルを編集し、設定オプションを設定します。 AEM Tar ストレージ実装の基盤となるセグメントノードストアでは、次のオプションを使用できます。

    • repository.home:リポジトリのホームのパスです。リポジトリ関連の様々なデータが格納されます。デフォルトでは、crx-quickstart/segmentstore ディレクトリにセグメントファイルが格納されます。
    • tarmk.size:セグメントの最大サイズ(MB 単位)です。デフォルトは 256MB です。
  6. AEM を起動します。

Mongo ストレージ mongo-storage

新規にインストールした AEM インスタンスと Mongo ストレージの実行 running-a-freshly-installed-aem-instance-with-mongo-storage

次の手順に従って、AEM 6 を MongoDB ストレージと共に実行するように設定できます。

  1. AEM 6 quickstart jar をダウンロードし、新しいフォルダーに配置します。

  2. 次のコマンドを実行してAEMを解凍します。

    java -jar cq-quickstart-6.jar -unpack

  3. MongoDB がインストールされていること、および mongod のインスタンスが実行されていることを確認します。詳しくは、MongoDB のインストールを参照してください。

  4. インストールディレクトリ内に crx-quickstart\install というフォルダーを作成します。

  5. ノードストアを設定します。使用する設定の名前を持つ設定ファイルを crx-quickstart\install ディレクトリに作成します。

    ドキュメントノードストア(AEM の MongoDB ストレージ実装の基盤)では、org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.cfg というファイルを使用します。

  6. ファイルを編集し、設定オプションを設定します。 以下のオプションが利用できます。

    • mongouri:Mongo データベースに接続するために必要な MongoURI です。デフォルトは mongodb://localhost:27017 です
    • db:Mongo データベースの名前です。新しい AEM 6 のインストールでは、デフォルトのデータベース名として aem-author を使用します。
    • cache:キャッシュサイズ(MB 単位)です。これは DocumentNodeStore で使用される様々なキャッシュに分散されます。デフォルトは 256 です。
    • changesSize:Mongo で差分出力のキャッシュに使用される capped コレクションのサイズ(MB 単位)です。デフォルトは 256 です。
    • customBlobStore:カスタムデータストアが使用されることを示すブール値です。デフォルトは false です。
  7. 使用するデータストアの PID を持つ設定ファイルを作成し、そのファイルを編集して設定オプションを設定します。詳しくは、ノードストアとデータストアの設定を参照してください。

  8. 次のコマンドを実行して、AEM 6 jar を MongoDB ストレージバックエンドと共に起動します。

    code language-shell
    java -jar cq-quickstart-6.jar -r crx3,crx3mongo
    

    -r はバックエンドの実行モードです。この例では、MongoDB サポートを指定して起動します。

透明な巨大ページの無効化 disabling-transparent-huge-pages

Red Hat Linux は、Transparent Huge Pages(THP) と呼ばれるメモリ管理アルゴリズムを使用します。 AEMは詳細な読み取りと書き込みを実行しますが、THP は大規模な操作に最適化されています。 このため、Tar と Mongo ストレージの両方で THP を無効にすることをお勧めします。 アルゴリズムを無効にするには、次の手順に従います。

  1. /etc/grub.conf ファイルを任意のテキストエディターで開きます。

  2. grub.conf ファイルに次の行を追加します。

    code language-none
    transparent_hugepage=never
    
  3. 最後に、次のコマンドを実行して、設定が有効になったかどうかを確認します。

    code language-none
    cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
    

    THP が無効の場合、上記のコマンドの出力は次のようになります。

    code language-none
    always madvise [never]
    
NOTE
また、次のリソースも参照してください。
  • Red Hat Linux 上の Transparent Huge Pages について詳しくは、こちらの記事を参照してください。
  • Linux のチューニングのヒントについては、こちらの記事を参照してください。

リポジトリのメンテナンス maintaining-the-repository

リポジトリが更新されるたびに、新しいコンテンツのリビジョンが作成されます。その結果、更新のたびにリポジトリのサイズが大きくなります。制御できないリポジトリの増加を避けるには、古いリビジョンをクリーンアップして、ディスクリソースを解放する必要があります。 このメンテナンス機能は、リビジョンクリーンアップと呼ばれます。リビジョンクリーンアップのメカニズムによって、ディスク領域を再利用するために、リポジトリから古いデータが削除されます。リビジョンクリーンアップについて詳しくは、リビジョンクリーンアップのページを参照してください。

recommendation-more-help
6a71a83d-c2e0-4ce7-a6aa-899aa3885b56