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 アドレス を入力してください。 クラウド コンソールで Liferay サービスのシェル に移動し、 curl ifconfig.me を実行して、クラスタ IP アドレスを見つけます。

    重要

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

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

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

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

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

    注記

    デフォルトでは有効になっていますが、各 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,[ローカルサーバーIPアドレス]
    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は一度に大量のデータを転送するのではなく、データを分割して転送します。 portal-ext.properties ファイルで次のポータルプロパティを設定することにより、データトランザクションのサイズを制御できます。

ステージング.リモート.転送.バッファサイズ

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

リモートライブステージングの無効化

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

警告

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

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

リモートライブステージングを無効にするには、以下の手順に従ってください。

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

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

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

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