Staging
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

リモート本番環境ステージングの設定

リモート ライブ ステージングでは、ステージング環境とライブ環境が別々の Liferay サーバーでホストされます。 有効にすると、ステージングを構成するために使用されるサイトまたはアセット ライブラリがステージング環境になり、リモート サーバーがライブ環境になります。

リモート ステージングでは、別の Liferay サーバー上で環境をホストします。

リモート ライブ ステージングを有効にする前に、ステージング環境とライブ環境に使用する Liferay サーバーを構成する必要があります。 また、リモート サーバーに新しい空のサイトまたはアセット ライブラリを作成し、ステージング構成中にその ID を使用する必要があります。

Liferayサーバーの準備

まだ行っていない場合は、次の手順に従って、Liferay サーバーをリモート ライブ ステージング用に設定します。

  1. 両方の Liferay サーバーの portal-ext.properties ファイルに次のプロパティを追加して、サーバーの共有認証キーを指定します。

    tunneling.servlet.shared.secret=[secret]
    tunneling.servlet.shared.secret.hex=[value]
    

    各プロパティ値は、選択した暗号化アルゴリズムと、16進エンコーディング(推奨)または印刷可能なASCII文字(安全性が低い)のどちらを使用するかによって異なります。 16進エンコーディングを使用しない場合は、tunneling.servlet.shared.secretの値がASCIIに準拠している必要があります。

    使用可能な暗号化アルゴリズムでは、次のキー長がサポートされています。

    AES: 128、192、256ビットのキー

    Blowfish: 32 - 448 ビットのキー

    DESede (トリプル DES): 112 ビットまたは 168 ビットのキー。 Liferayの最小キー長は、56ビットキーをサポートしていません。

  2. 各サーバーのportal-ext.propertiesファイルに次のプロパティを追加して、各サーバーを他の許可されたサーバーのリストに追加します。

    tunnel.servlet.hosts.allowed=127.0.0.1,SERVER_IP,[OTHER_SERVER_IP]
    

    サーバーに複数のIPアドレスがある場合は、各IPアドレスを追加する必要があります。

    Liferay PaaS の場合: 他の Liferay インスタンスの クラスター IP アドレスを入力します。 Cloud コンソールで Liferay サービスのシェル に移動し、 curl ifconfig.meを実行して、クラスターの IP アドレスを見つけます。

    重要

    IPv6アドレスを検証する場合は、IPv4アドレスの使用を強制しないようにアプリサーバーのJVMを構成する必要があります。 たとえば、Tomcat を使用している場合は、 -Djava.net.preferIPv4Stack=false 属性を $TOMCAT_HOME\bin\setenv.[bat|sh] ファイルに追加します。

  3. リモートインスタンスのトンネル認証検証設定を更新します。

    これを行うには、 コントロール パネル構成システム設定API 認証トンネル認証に移動します。

    /api/liferay/doをクリックし、使用している追加のIPアドレスを[Host Allowed]フィールドに挿入します。 完了したら、 更新をクリックします。

    コントロールパネルからリモートインスタンスのトンネル認証検証設定を更新します。

    デフォルトでは有効になっていますが、各 Liferay サーバーのトンネリングサーブレット 認証検証 が有効になっていることを確認してください。

    または、次の構成をLiferayインスタンスのOSGiファイルに書き込むこともできます(例 :osgi/configs/com.liferay.portal.security.auth.verifier.internal.tunnel.configuration.TunnelAuthVerifierConfiguration~default.config)。

    enabled=true
    hostsAllowed=127.0.0.1,SERVER_IP,[Local server IP address]
    serviceAccessPolicyName=SYSTEM_User_PASSWORD
    urlsIncludes=/api/liferay/do
    
  4. 両方のLiferayサーバーを再起動して、変更を実装します。

再起動すると、両方のサーバーでステージング構成の準備が整います。

重要

リモート ステージング環境にパッチを適用する場合は、すべてのサーバーに適用する必要があります。 サーバー間でパッチレベルが異なることは適切ではなく、インポートの失敗やデータの破損につながる可能性があります。 リモート ステージングが正しく機能するには、すべてのサーバーを同じパッチ レベルに更新する必要があります。

リモート本番環境ステージングの設定

Liferay サーバーを準備したら、次の手順に従って、サイトまたはアセット ライブラリのリモート ライブ ステージングを設定します。

  1. サイトまたはアセット ライブラリでステージング アプリケーションを開きます。

    サイトの場合は、 サイト メニュー (Site Menu) → 公開ステージングに移動します。

    アセット ライブラリについては、 グローバル メニュー (Global Menu) → アプリケーション タブアセット ライブラリに移動します。 次に、目的のアセット ライブラリを開き、[公開] の下の ステージング をクリックします。

  2. リモートライブを選択します。 追加の設定フィールドが表示されます。

    リモートライブステージングを選択します。

  3. 次のリモート本番環境接続の詳細を入力します。

    リモートホスト/IP: リモートサーバーの IP アドレスを リモートホスト/IP フィールドに入力します (Liferay PaaS の場合は、クラスター IP アドレスを使用します)。 これは、portal-ext.propertiesファイルで指定したtunnel.servlet.hosts.allowedプロパティと一致する必要があります。

    リモート ポート: リモート DXP インスタンスのポート番号を リモート ポート フィールドに入力します。 Liferay PaaS の場合は、ポートとして 443 を入力します。

    リモート パス コンテキスト: リモート パス コンテキストを入力します。 これは、ルート以外のポータルサーブレットコンテクストパスがリモートLiferayサーバーで使用されている場合にのみ必要です。 このコンテキストへのアクセスは、プロキシまたはファイアウォールによってブロックされてはなりません。

    リモート サイト ID/リモート アセット ライブラリ ID: 目的のターゲットの サイト ID/アセット ライブラリ ID を入力します。

    IPv6 アドレスを構成する場合、 リモート ホスト/IP フィールドに入力するときに、アドレスを角括弧で囲む必要があります (例: [0:0:0:0:0:0:0:1])。

    リモート サーバーがクラスターの場合、リモート ホスト/IP をクラスターの負荷分散 IP アドレスに設定して、公開プロセスの可用性を高めることができます。 詳細については、「 クラスター環境でのリモート ステージングの構成 」を参照してください。

  4. ステージングからライブにページを公開するために、安全なネットワーク接続 (HTTPS など) を使用するかどうかを決定します。

  5. サイトまたはアセット ライブラリに使用するリモート URL を手動で定義するかどうかを決定します。

  6. (サイトのみ) ページのバージョン管理 を有効にするかどうかを選択します。

    ページバージョニングを有効にします。

  7. ステージングする データコンテンツ タイプを選択します。

    アセット ライブラリは、ドキュメントとメディアおよび Web コンテンツ アプリケーションのステージング データのみをサポートします。

    サイトを使用すると、次のいずれかのアプリケーションのデータをステージングできます。

    ステージングするデータとコンテンツのタイプを選択します。

    警告

    アプリケーションをチェックすると、そのデータがコピーされ、ライブサイトで直接編集できなくなる可能性があります。 アプリケーションのチェックを外すときは、ステージングでの変更が失われる可能性があるため、まずステージングでの変更が公開されていることを確認してください。 詳細については、 ステージングでのデータとコンテンツタイプの管理 を参照してください。

  8. ステージングプロセスを開始するには、 [保存] をクリックします。 このプロセスの所要時間は、サイトまたはアセット ライブラリのサイズによって異なります。

    リモート ライブ ステージングを有効にできなかった場合は、サーバーが適切に準備されていることを確認してください。

プロセスが完了すると、リモート ライブ ステージングを使用する準備が整います。 ステージング環境の公開機能の操作方法については、 サイト ステージング UI リファレンス を参照してください。

リモート本番環境ステージングの権限設定

ユーザーがステージングからライブに変更を公開しようとすると、Liferay はユーザーの電子メール アドレス、スクリーン名、またはユーザー ID をリモート サーバーに渡して、権限チェックを実行します。 成功するには、公開ユーザーは両方のサーバー上で同一の資格情報と権限を持っている必要があります。

ステージングから本番/ライブへの変更を公開する権限をローカル ユーザーに付与するには、リモート サーバー上のユーザーと同じ権限を持つ同一のユーザー アカウントを作成します。

このプロセスを簡素化するために、LDAP を使用して、選択したユーザー アカウントをローカル サーバーからリモート サーバーにコピーできます。 詳細については、「 LDAP ディレクトリへの接続 」を参照してください。

リモートステージングのバッファサイズの設定

リモート本番環境ステージングを使用していて、大量のコンテンツを公開している場合、このプロセスは遅くなり、大量のネットワークトラフィックが発生する可能性があります。 そのため、Liferay DXPは、1つの大きなデータダンプではなく、データを段階的に転送します。 portal-ext.propertiesファイルで次のポータルプロパティを設定することにより、データトランザクションのサイズを制御できます。

staging.remote.transfer.buffer.size

このプロパティは、リモートステージングのファイルブロックサイズを設定します。 リモートステージングに使用されるLARファイルがこのサイズを超える場合、ファイルは送信前に複数のファイルに分割されてから、リモートサーバーで再構築されます。 デフォルトのバッファサイズは10メガバイトです。

リモート本番環境ステージングの無効化

リモート ライブ ステージングを無効にすると、データは削除されずに環境間の接続が無効になります。 データは消去されず、プロセスも開始されないため、リモート ライブ ステージングの無効化はほぼ瞬時に行われます。

警告

リモート ステージングを無効にする場合は、双方が通信できるように、ライブ サイトまたはアセット ライブラリに引き続きアクセスできることを確認する必要があります。 ライブ環境をシャットダウンしないでください。 環境間でネットワーク接続が失われた場合は、エラーメッセージが表示され、ステージングを強制的に無効にするように指示されます。

ステージングを強制的に無効にすると、コンテンツではなく、ステージングサーバーからステージング情報が消去されます。 ライブ環境はロックされた状態のままです。 回避策としては、新しいライブ サイトまたはアセット ライブラリを作成し、必要に応じてそこにコンテンツをインポートすることが考えられます。

リモート本番環境ステージングを無効にするには、次の手順に従います。

  1. サイトまたはアセット ライブラリでステージング アプリケーションを開きます。

  2. アプリケーション バーで オプション (Options button) をクリックし、 ステージング構成を選択します。

    アプリケーションバーのアクションボタンをクリックし、[ステージング設定]を選択します

  3. 設定に なし を選択し、 保存をクリックします。