LCS事前設定

Liferay DXPサーバーのアクティベートをし、 Liferay Connected Services (LCS)を最大限活用するには、まず以下の方法でサーバーをLCSに登録する必要がありますが、その前に設定する項目がいくつかあります。この資料はそれらの手順を説明しています。

  1. LCSクライアントアプリケーションをダウンロード

  2. プロキシを介したLCS接続の事前設定

  3. LCSのアクセス確保

  4. NTPサーバー同期

  5. パッチングツールの設定

  6. WebSphereの設定: Liferay DXPをWebSphereで稼働させている場合のみこの手順が必要です。

  7. LCSクライアントアプリケーションのインストール

この記事の最後のセクションで、Liferay DXPインスタンスの登録を行い、LCSをアクティベートした後の、LCSクライアントアプリケーションのアップグレード方法を説明しています。このアップグレードは最新版アプリケーションをリリースする際に、毎回行う必要があります。

LCSクライアントアプリケーションをダウンロード

LCS クライアントアプリケーションはLiferay DXP各バンドルに付属されており、バンドルを開始すると自動でデプロイされますが、付属のアプリケーションは最新版ではない可能性があります。 よってLCSクライアントアプリケーションの最新版をLiferayマーケットプレイスからダウンロード、インストールする必要があります。

下記の手順で、アプリケーションの購入とダウンロードを行います。 (既に、アプリケーションを購入したことがあるお客様は、手順3のダウンロードへ進みます。)

  1. Liferayマーケットプレイス内のLCS クライアントアプリケーションへ行きます。 マーケットプレイスにサインインをして、LCSクライアントアプリケーションの*[無料]*ボタンをクリックします。

    図1: 購入プロセス開始時のアプリケーションの無料ボタン(右上)

  2. アプリケーションを使用するプロジェクトを選び、免責事項に同意して、画面左下にある*[購入]*をクリックします。領収書が表示されます。領収書が表示されます。

    図2: LCS クライアントアプリケーションのレシート表示画面

  3. レシートに表示される*[購入済みを見る]をクリックすると、LCSクライアント アプリケーションをダウンロードするページに行くことができます。ダウンロードするアプリケーション*のバージョンの横にあるアプリケーションをクリックします。

    図3: アプリケーションのダウンロード画面

これで、LCS クライアントアプリケーションのダウンロードが完了しました。次はインストールをする前に追加で行う事前準備について説明をします。

プロキシを介したLCS接続の事前設定

プロキシ経由でサーバーを接続している場合は、Liferay DXPインスタンスにアプリケーションをデプロイする前に、サーバー又はLCSクライアントアプリケーションのプロパティの一部を設定する必要があります。設定方法は、サーバー又はLCSクライアントアプリケーションで設定するかによって決定します。

  1. JVMアプリケーションサーバー アーギュメント内にこれらのプロパティを以下のように適切なプロキシ値に設定します。 これらのプロパティを、適切なプロキシ値に設定します:

    -Dhttp.proxyHost=
    -Dhttp.proxyPort=
    -Dhttp.proxyUser=
    -Dhttp.proxyPassword=
    -Dhttps.proxyHost=
    -Dhttps.proxyPort=
    

    プロキシの認証が必要な場合のみ、userpasswordhttpsプロパティーを使用します。

  2. LCS クライアントアプリケーションのWARファイル 内のプロパティの設定は、WARファイルはLiferayマーケットプレイスからダウンロード済みのアプリケーションLPKG ファイルにあります。LPKG ファイルを開き、 クライアントのWARファイルlcs-portlet-[version].warに行きます。

    WARにある、portlet-ext.propertiesファイルのプロパティを そうするには以下の手順に従ってください:

    a. LCSクライアントのWARファイルに、WEB-INF/classes/portlet-ext.propertiesファイルを作成 (ファイルが既にある場合は開く)する。

    b. portlet-ext.propertiesの末尾に下記プロパティを追加し、プロキシに合わせて適切な値にします:

    proxy.host.name=
    proxy.host.port=
    

    プロキシの認証が必要な場合は、下記のプロパティを追加し、プロキシに合わせた値にします。

    proxy.host.login=
    proxy.host.password=
    

    プロキシにNTLM認証が必要な場合は下記のプロパティを追加します。

    proxy.auth.type=ntlm
    proxy.domain=
    proxy.workstation=
    

    proxy.domain及びproxy.workstationをプロキシに合わせた適切な値にするのを忘れずに行ってください。proxy.workstationの部分は必要が無い場合は空欄にします。

    c. 変更を加えたportlet-ext.propertiesファイルを含めて、LPKGファイルをLCSクライアントと一緒にrepackageします。RepackageしたLPKGファイルがLiferayマーケットプレイスからダウンロードしたLPKGファイルと同じ名前であることを確かめてください。

次の手順は、LCSクライアントをLCSに接続するアクセス確保の説明です。

LCSのアクセス確保

LCSクライアントアプリケーションが正常に動くには、下記のDNS名がアクセスする必要があります。サーバーがプロキシや、ファイアーウォールの背後にある時は、下記にアクセスします。

  • lcs.liferay.com
  • lcs-gateway.liferay.com

追加のセキュリティ対策として、トラフィックをHTTPSに制限することもできます。

次のセクションでは、NTPサーバーの同期について説明します。

NTPサーバー同期

セキュリティー強化のために、HTTPSのトラフィックを制限する事も出来ます。もし同期が正常に行われていないと、以下のようなログエラーが出る可能性があります。

ERROR [pool-6-thread-3][HandshakeTask:68] java.lang.RuntimeException: Handshake expired.
Check that the server is synchronized with an NTP server.

WARN [liferay/hot_deploy-1][LCSHotDeployMessageListener:186] LCS portlet is not connected
java.lang.RuntimeException: com.liferay.jsonwebserviceclient.JSONWebServiceInvocationException:
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'oauth_problem': was expecting
('true', 'false' or 'null')_ at [Source: oauth_problem=timestamp_refused&oauth_acceptable_timestamps=1477311475-1477312075;
line: 1, column: 14] [Sanitized]

アプリケーションサーバーと時刻サーバーの同期をするには、アプリケーションサーバーの書類を参照してください。

次に、Liferay DXPのパッチ適用ツールの設定方法を学びます。

パッチングツールの設定

Liferay DXPのパッチングツールを使いLCSのアップデートをします。パッチングツールは、Liferay DXPのバンドルに事前インストールされています。バンドルを稼働していない場合は、パッチングツールのダウンロードおよびインストールを個別にしてください。

パッチングツールのインストール後、LCSがパッチングツールを使用できるように、設定する項目があります。下記コマンドはLinux、Unix、Macで使用可能です。Windowsをお使いの場合は、.shをコマンドから削除してください。

  1. コマンドラインのpatching-toolディレクトリに行きます。大抵の場合、Liferay Homeフォルダにあります。Liferay Homeは、たいていアプリケーションサーバのフォルダの親フォルダです。

  2. Liferay DXPインストールをパッチングツールに検知させるため下記コマンドを起動します。

    patching-tool.sh auto-discovery
    
  3. パッチングツール設定するために、下記コマンドを起動します。

    patching-tool.sh setup
    
  4. サーバー起動時に、パッチングツールがLCSからダウンロードしたアップデートパッチをインストールします。パッチングツールがサーバーに接続するには、JVMオプションのjavaagentプロパティをインストールしたパッチングツール内のpatching-tool-agent.jarに指定する必要があります。 以下のファイルに正しいファイルパスの指定をしてください。

    -javaagent:../../patching-tool/lib/patching-tool-agent.jar
    
  5. Liferay Homeフォルダ以外の場所に、パッチングツールをインストールした場合は、patching-toolフォルダパスをJVMの設定に合わせて適切なパスに指定します。patching.tool.homeを下記のように特定します。

    -Dpatching.tool.home=/opt/liferay-dxp-7.1/patching-tool/
    

パッチングツールの使用時に考慮する点がいくつかあります。クラスローディングの関係で、パッチングツールは別JVMで動作します。patching.tool.agent.jvm.optsプロパティを使ってJVMオプションの指定をすることも可能です。

-Dpatching.tool.agent.jvm.opts="-Xmx1024m -Xms512m -Dfile.encoding=UTF8"

Windowsをお使いの場合で、ユーザーにアドミニストレータ権限が無い場合は、 問題が生じる場合もあります。下記はエラーの例です。

java.nio.file.FileSystemException: ..\webapps\ROOT\WEB-INF\lib\util-java.jar: Not a file!
java.io.FileNotFoundException: java.io.IOException: Access refused

これを解決するには、 patching.tool.agent.jvm.optsプロパティの java.io.tmpdirシステムプロパティを以下のように設定します。

-Dpatching.tool.agent.jvm.opts="-Xmx1024m -Xms512m -Dfile.encoding=UTF8 -Djava.io.tmpdir=%TMP%"

パッチングツールには、フラッグ機能でどのように作動するか設定を変えることも可能です。

  • debug: コンソルに冗長アウトプットを提供します。
  • nohalt: エージェントが問題に遭遇した場合でもポータルを開始します。

下記のように、指定できます。

-Dpatching.tool.agent.properties=debug,nohalt

WebSphereの設定方法

BM ® WebSphere ®は、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。

WebSphereアプリケーションサーバーを実行している場合は、LCSクライアントアプリケーションを展開する前に、以下の構成手順を実行してください。

  1. アプリケーションサーバーをシャットダウンします。

  2. portal-ext.propertiesファイルに次の行を追加します。追加するプロパティは、お使いのLiferay DXPフィックスパックのバージョンによって変わります。Fix Pack 5以降をお使いの場合は、下記のプロパティを追加します。

    module.framework.properties.org.osgi.framework.bootdelegation=\
    __redirected,\
    com.sun.ccpp,\
    com.sun.ccpp.*,\
    com.liferay.aspectj,\
    com.liferay.aspectj.*,\
    com.liferay.portal.servlet.delegate,\
    com.liferay.portal.servlet.delegate*,\
    com.sun.crypto.*,\
    com.sun.image.*,\
    com.sun.jmx.*,\
    com.sun.jna,\
    com.sun.jndi.*,\
    com.sun.mail.*,\
    com.sun.management.*,\
    com.sun.media.*,\
    com.sun.msv.*,\
    com.sun.org.*,\
    com.sun.syndication,\
    com.sun.tools.*,\
    com.sun.xml.*,\
    com.yourkit.*,\
    com.ibm.crypto.*,\
    sun.*,\
    javax.validation,\
    javax.validation.*,\
    jdk.*,\
    weblogic.jndi,\
    weblogic.jndi.*\
    

    Fix Pack 5以降をお使いの場合は、下記のプロパティを追加します。

    module.framework.properties.org.osgi.framework.bootdelegation=\
    __redirected,\
    com.sun.ccpp,\
    com.sun.ccpp.*,\
    com.liferay.aspectj,\
    com.liferay.aspectj.*,\
    com.liferay.portal.servlet.delegate,\
    com.liferay.portal.servlet.delegate*,\
    com.sun.crypto.*,\
    com.sun.image.*,\
    com.sun.jmx.*,\
    com.sun.jna,\
    com.sun.jndi.*,\
    com.sun.mail.*,\
    com.sun.management.*,\
    com.sun.media.*,\
    com.sun.msv.*,\
    com.sun.org.*,\
    com.sun.syndication,\
    com.sun.tools.*,\
    com.sun.xml.*,\
    com.yourkit.*,\
    com.ibm.*,\
    sun.*
    
  3. Liferay DXPのインストールの際、osgi/stateフォルダを削除します。

  4. アプリケーションサーバーを起動します。

  5. ブラウザでWebSphereコンソールを開きます。

  6. サーバーを選択し、[Javaおよびプロセス管理] >[プロセス定義]>*[追加のプロパティ]*に行きます。

  7. [Java仮想マシン]>*[カスタム・プロパティー]*を選択します。

  8. *[新規]*をクリックし、次のように入力します。

    • Name: com.ibm.crypto.provider.DoRSATypeChecking
    • Value: false
  9. [保存]、そして*[OK]*をクリックして、マスター構成に変更を適用します

5.0.0より前のバージョンのLCSクライアントアプリケーションでは、アプリののportlet.propertiesファイル内のdigital.signature.algorithm.providerプロパティ値をIBMJCEに変更する必要があります。

digital.signature.algorithm.provider=IBMJCE

LCSクライアントアプリケーションのインストール

上記の事前設定で、LCS クライアントアプリケーションをインストールする準備が整いました。 次は、下記の手順でアプリケーションをインストールします。

  1. Liferay DXPバンドルのLiferay Homeフォルダ(アプリケーションパッチングツールのルートフォルダ内)の下記ファイルを削除します。

    osgi/marketplace/Liferay Connected Services Client.lpkg
    
  2. osgi/marketplaceに新しく作成したLiferay Connected Services Client.lpkgを配置します。

Liferay DXPインスタンスをLCSに登録する準備が整いました。

次のセクションはLCS クライアントアプリケーションのアップグレードについてです。このステップはLiferayがアプリケーションの最新版リリース時に毎回行います。

LCSクライアントアプリケーションのアップグレード

Liferay DXPインスタンスには、最新版のLCSクライアントアプリケーションが起動していることが必須です。 どの手順でLCSの事前設定を行ったかによって、二通りアップデートの方法があります。

  1. 稼働しているLiferay DXPインスタンスにあるLiferayマーケットプレイスを通して行う方法:デプロイ前にLCS クライアントアプリケーションを設定(プロキシ設定等)をする必要がない場合はこの方法で行います。

    アップグレードは、[Control Panel]>[アプリケーション(Apps)]>*[購入されたアプリケーション]*の順にアクセスします。アップデートが必要なアプリケーションが先に表示されます。 LCSクライアントアプリケーションの隣に表示される *[アップデート]*をクリックします。アップグレードを完了するには、 パッチングツールを再起動する必要があるかもしれません。

  2. LCSクライアントアプリケーションの LPKG ファイルをダウンロードした後にマニュアルで行う方法: LCS クライアントアプリケーションをプロキシ接続するための事前設定はこの方法で行います。

    TLCS クライアントアプリケーションをマニュアルでアップデートする場合には、 この記事前半の手順にそってダウンロード、事前設定を行います。その後[Liferay Home]/deploy、他のアプリと同じように配置します。

アップグレードに関するサポートが必要な場合は、Liferayサポートへご連絡ください。

« まず初めにLiferay DXPサーバーをLCSに登録する »
この記事は役に立ちましたか?
3人中1人がこの記事が役に立ったと言っています