この記事はレガシー記事です。 Liferay製品の旧バージョンにも適用されます。 記事のメンテナンスは終了していますが、情報はまだ通用する可能性があります。
最新のLiferay Portalにアップグレードする場合、考慮しなければならないことがたくさんあります。 本ガイドは、アップグレードのお手伝いをするためのものです。 アップグレードを実行する前に、必ずお読みいただき、環境が整っていることを確認してください。
解決策
注:時間を節約するために、今回のアップグレードの進捗状況に記載されている全項目をハイレベルにまとめました。 これには、アップグレードによって実際に何が変更され、何が起こっているのかの詳細が含まれており、自分でソースコードから答えを探すという手間を省くことができるはずです。 もご覧ください: データベースアップグレードの概要.
アップグレードプロセスを完了するためには、各コンポーネントに対応する必要があります。 以下は、最初に完成させるべきものから順に並べています。
1. バックアップ-以下の説明で言及されている各コンポーネントが、先に進む前にバックアップされていることを確認する。
2. Liferay Portal-
- 最新のEE Portal WAR、EE Portal Dependencies、EE Pluginsをダウンロードします。
- レガシーEE Portal WAR、EE Portal Dependencies、EE Pluginsを削除します。
- 最新のEE Portal WAR、EE Portal Dependencies、EE Pluginsをデプロイします。
3. 修正パック-パッチツールを使用して、すべての 修正パック をインストールし、既知の問題を排除します。 アップグレードフィックスパックは、ポータルの「シームレス」アップグレード機能を実現し、設定オプションを最小化するとともに、アップグレードプロセスを高速化する機能を多数含んでいます。 また、Liferayはアップグレード時にパーミッションを含むクエリを減らすために、'hotfix-1285-6012' をリリースしました。
- データベース-レガシー環境からデータを含むソースを指すデータベース(JDBC)設定を配置します。
-
Permissions-レガシー環境で使用されるパーミッションのアルゴリズム設定を含みます:
permissions.user.check.algorithm=
このプロパティは、ユーザーのパーミッションをチェックするためにポータル全体で使用するアルゴリズムを設定します。 このプロパティを設定することで、アップグレード処理中にパーミッションが保持されるようになります。 Liferayの将来のバージョンではアルゴリズム6が必要となるため、ユーザーは最終的にパーミッションを移行することが推奨されます。 Liferay 5.2 SP4以降をご利用の方は、アップグレード前に権限アルゴリズムの移行が可能ですので、ユーザーガイドの指示に従ってください。 - Document Library / Image Gallery-ポータルが同じDocument LibraryとImage Galleryフックを使用していること、およびファイルが以前保存されていた場所を指していることを確認してください(image.hook.impl, image.hook.file.system.root.dir, dl.hook.impl, dl.hook.file.system.root.dir).
- Legacy Properties-メジャーアップグレードを行う場合は、portal-legacy.x.x.propertiesの設定も確認してください。 後方互換性を確保するために、適切なプロパティをコピーする。 これらのファイルは、/WEB-INF/classesの下にあります。
5. チェックポイント-一時停止して、上記のコンポーネントが正常にアップグレードされたことを確認します。
6. ライセンス-バージョン6.0EEへのアップグレードには、新しいライセンスが必要です。 ヘルプセンターのチケット、または アクティベーションキーリクエスト フォームから、ライセンスリクエストを送信してください。
必ず以下の内容を記載してください:
- MACアドレス
- IPアドレス
- ホスト名
7. カスタマイズ-最新リリースのPlugins SDKをダウンロードしてご利用ください。 カスタムコード(カスタマイズ、ポートレット、フック、テーマ、レイアウトテンプレートなど)は、6.0 EE SP2 Plugins SDKを使用してリビルドする必要があります。 すべてのエラーとAPIの変更が調整された後に、カスタマイズをデプロイします。
注: 6.0EE+ は、古いEXT環境をサポートしていません。新しいext-pluginへの移行方法については、 Extension Environment Migration Tips を参照してください。
ベストプラクティス
- レガシー環境に問題がない場合にアップグレードを試みる。 レガシー環境での問題は、アップグレードを試みた際にさらなる問題を引き起こす可能性があります。 すべての問題をまず解決する。
- アップグレードに失敗した場合、同じデータベースで再度アップグレードを試みないでください。 その代わりに、データベースをアップグレード前の状態にロールバックし、アップグレードの問題を解決した後、そのデータベースで再度アップグレードを試みてください。
- まず別のテスト環境内でアップグレードプロセスをテストしてください。
- テストせずに本番に変更を加えないでください。 アップグレードを行う環境を別に(クローン)作成することができます。 これらの環境は、その後、本番への移行に利用することができます。 この手法を用いることで、ダウンタイムを最小化し、本番環境のリスクを低減することができます。
追加アップグレードの注意点
5.1 EE SP5(5.1.8)~6.0 EE SP2
Liferay 5.1 EE SP5 (5.1.8) をお使いの方は、Liferay 6.0 EE SP2 に移行する前に、パーミッションのアルゴリズムを移行(5以上へ)するため、2段階のアップグレードをお勧めします。 Liferay 6.0 EE SP2への移行を行う前に、まずLiferay 5.2.8へアップグレードし、必要なアップグレード手順を実行してください。
5.2.3 CE~6.0 EE SP2
Liferay 5.2.3 CEとサンプルデータを含むデータベース(ポータルにバンドルされていたもの)を使用しているユーザーは、Liferay 6.0 EE SP2に移行する前に、SevenCogsフックのアップグレード処理を無効化する必要があるようです。
- 5.2.3.のアプリケーションサーバーをシャットダウンします。
-
/webapps/sevencogs-hook/WEB-INF/classes/portal.propertiesこの行を削除してください:upgrade.processes=\
com.liferay.sevencogs.hook.upgrade.UpgradeProcess_1_0_0 - 5.2.3アプリケーションサーバーを起動し、問題が発生しないことを確認する。
- 5.2.3アプリケーションサーバーをシャットダウンします。
- Liferay 6.0 EE SP2へのアップグレード手順を続行します。
6.0.5 CE~6.0 EE SP2
6.0.5 CE以前のLiferay 6.0 CEをお使いのお客様は、Liferay 6.0 EE SP2へのアップグレードを行う前に6.0.5 CEにアップグレードしてください。