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

リモート ライブ ステージングを有効にする前に、ステージング環境とライブ環境に使用する Liferay サーバーを構成する必要があります。 また、リモート サーバーに新しい空のサイトまたはアセット ライブラリを作成し、ステージング構成中にその ID を使用する必要があります。
Liferayサーバーの準備
まだ行っていない場合は、次の手順に従って、Liferay サーバーをリモート ライブ ステージング用に設定します。
-
両方の 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ビットキーをサポートしていません。
-
各サーバーの
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]ファイルに追加します。 -
リモートインスタンスのトンネル認証検証設定を更新します。
これを行うには、 コントロール パネル → 構成 → システム設定 → 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 -
両方のLiferayサーバーを再起動して、変更を実装します。
再起動すると、両方のサーバーでステージング構成の準備が整います。
リモート ステージング環境にパッチを適用する場合は、すべてのサーバーに適用する必要があります。 サーバー間でパッチレベルが異なることは適切ではなく、インポートの失敗やデータの破損につながる可能性があります。 リモート ステージングが正しく機能するには、すべてのサーバーを同じパッチ レベルに更新する必要があります。
リモート本番環境ステージングの設定
Liferay サーバーを準備したら、次の手順に従って、サイトまたはアセット ライブラリのリモート ライブ ステージングを設定します。
-
サイトまたはアセット ライブラリでステージング アプリケーションを開きます。
サイトの場合は、 サイト メニュー (
) → 公開 → ステージングに移動します。アセット ライブラリについては、 グローバル メニュー (
) → アプリケーション タブ → アセット ライブラリに移動します。 次に、目的のアセット ライブラリを開き、[公開] の下の ステージング をクリックします。 -
リモートライブを選択します。 追加の設定フィールドが表示されます。

-
次のリモート本番環境接続の詳細を入力します。
リモートホスト/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 アドレスに設定して、公開プロセスの可用性を高めることができます。 詳細については、「 クラスター環境でのリモート ステージングの構成 」を参照してください。
-
ステージングからライブにページを公開するために、安全なネットワーク接続 (HTTPS など) を使用するかどうかを決定します。
-
サイトまたはアセット ライブラリに使用するリモート URL を手動で定義するかどうかを決定します。
-
(サイトのみ) ページのバージョン管理 を有効にするかどうかを選択します。

-
ステージングする データ と コンテンツ タイプを選択します。
アセット ライブラリは、ドキュメントとメディアおよび Web コンテンツ アプリケーションのステージング データのみをサポートします。
サイトを使用すると、次のいずれかのアプリケーションのデータをステージングできます。
警告アプリケーションをチェックすると、そのデータがコピーされ、ライブサイトで直接編集できなくなる可能性があります。 アプリケーションのチェックを外すときは、ステージングでの変更が失われる可能性があるため、まずステージングでの変更が公開されていることを確認してください。 詳細については、 ステージングでのデータとコンテンツタイプの管理 を参照してください。
-
ステージングプロセスを開始するには、 [保存] をクリックします。 このプロセスの所要時間は、サイトまたはアセット ライブラリのサイズによって異なります。
注リモート ライブ ステージングを有効にできなかった場合は、サーバーが適切に準備されていることを確認してください。
プロセスが完了すると、リモート ライブ ステージングを使用する準備が整います。 ステージング環境の公開機能の操作方法については、 サイト ステージング UI リファレンス を参照してください。
リモート本番環境ステージングの権限設定
ユーザーがステージングからライブに変更を公開しようとすると、Liferay はユーザーの電子メール アドレス、スクリーン名、またはユーザー ID をリモート サーバーに渡して、権限チェックを実行します。 成功するには、公開ユーザーは両方のサーバー上で同一の資格情報と権限を持っている必要があります。
ステージングから本番/ライブへの変更を公開する権限をローカル ユーザーに付与するには、リモート サーバー上のユーザーと同じ権限を持つ同一のユーザー アカウントを作成します。
このプロセスを簡素化するために、LDAP を使用して、選択したユーザー アカウントをローカル サーバーからリモート サーバーにコピーできます。 詳細については、「 LDAP ディレクトリへの接続 」を参照してください。
リモートステージングのバッファサイズの設定
リモート本番環境ステージングを使用していて、大量のコンテンツを公開している場合、このプロセスは遅くなり、大量のネットワークトラフィックが発生する可能性があります。 そのため、Liferay DXPは、1つの大きなデータダンプではなく、データを段階的に転送します。 portal-ext.propertiesファイルで次のポータルプロパティを設定することにより、データトランザクションのサイズを制御できます。
staging.remote.transfer.buffer.size
このプロパティは、リモートステージングのファイルブロックサイズを設定します。 リモートステージングに使用されるLARファイルがこのサイズを超える場合、ファイルは送信前に複数のファイルに分割されてから、リモートサーバーで再構築されます。 デフォルトのバッファサイズは10メガバイトです。
リモート本番環境ステージングの無効化
リモート ライブ ステージングを無効にすると、データは削除されずに環境間の接続が無効になります。 データは消去されず、プロセスも開始されないため、リモート ライブ ステージングの無効化はほぼ瞬時に行われます。
リモート ステージングを無効にする場合は、双方が通信できるように、ライブ サイトまたはアセット ライブラリに引き続きアクセスできることを確認する必要があります。 ライブ環境をシャットダウンしないでください。 環境間でネットワーク接続が失われた場合は、エラーメッセージが表示され、ステージングを強制的に無効にするように指示されます。
ステージングを強制的に無効にすると、コンテンツではなく、ステージングサーバーからステージング情報が消去されます。 ライブ環境はロックされた状態のままです。 回避策としては、新しいライブ サイトまたはアセット ライブラリを作成し、必要に応じてそこにコンテンツをインポートすることが考えられます。
リモート本番環境ステージングを無効にするには、次の手順に従います。
-
サイトまたはアセット ライブラリでステージング アプリケーションを開きます。
-
アプリケーション バーで オプション (
) をクリックし、 ステージング構成を選択します。![アプリケーションバーのアクションボタンをクリックし、[ステージング設定]を選択します](https://resources.learn.liferay.com/images/dxp/latest/en/sites/publishing-tools/staging/configuring-remote-live-staging/images/06.png)
-
設定に なし を選択し、 保存をクリックします。