Documentation

Liferay DXPインスタンスのアップグレード

Liferayは定期的にLiferay DXPの新しいマイナーバージョンとメジャーバージョンをリリースします。 このバージョンには、セキュリティとバグ修正、および拡張機能が含まれています。 Liferay DXPの新しいメジャーバージョンの増分にアップグレードするには、DXPデータベースをアップグレードする必要があります。

注釈

運用中の大規模なデータセットの場合、スムーズなアップグレードを行うためには、さらにいくつかの考慮事項があります。 例えば、カスタムコードやマーケットプレイスアプリは、正常に動作し続けるために追加のアップデートが必要な場合があります。 コアアップグレードの包括的な概要については、 Liferay DXP アップグレードの手引き を参照してください。

注釈

新しいマイナーバージョンやサービスパックに更新するには、代わりに Liferay DXP の新しいバージョンへの更新 をご覧ください。

重要

DXP Cloudの環境をアップグレードするには、アップグレードしたデータベースを復元する必要があるため、Liferayサービスの再起動にダウンタイムが発生します。 本番環境では、このようなダウンタイムが発生することを想定して、計画的に対処してください。

次の手順を確認して、データベースのアップグレードを実行します。

  1. 前提条件をインストールする

  2. バックアップをダウンロード

  3. データを抽出してインポートする

  4. データのアップグレードを実行する

  5. ドキュメントライブラリとデータベースの圧縮

  6. ドキュメントライブラリとデータベースのアップロード

  7. バックアップを復元する

前提条件をインストールする

アップグレードの手順を開始する前に、以下の前提条件を満たしてください。

重要

古いものを再利用するのではなく、アップグレード用の新しいバンドルをダウンロードしてください。 過去に使用したデータが、データアップグレードの妨げになる場合があります。

バックアップをダウンロード

次の手順を実行して、現在 prd 環境で実行されているDXPインスタンスのバックアップ(データベースとデータボリュームの両方で設定される)をダウンロードします。

  1. DXP Cloudコンソール にログインします。

  2. 本番環境に移動し、メニューから[バックアップ]を選択します。

    運用環境の[バックアップ]ページに移動します。

  3. リストされているバックアップの1つを選択し、[アクション]メニューから[ダウンロード]を選択します。 データボリュームとデータベースのzipファイルをダウンロードします。

    各オプションをクリックすると、データボリュームとデータベースアーカイブの両方がダウンロードされます。

データの抽出とインポート

次のステップは、ダウンロードしたアーカイブからデータを抽出し、アップグレードに必要な場所にデータを移動することです。

データ量を抽出する

バックアップからデータボリュームを抽出するには、次の手順を実行します:

  1. ダウンロードした .tgz データボリュームのアーカイブ(名前は backup-lfr-<PROJECT_NAME>-prd-<BACKUP_ID>.tgz)に先ほど展開したLiferayバンドル中の LIFERAY_HOME/data フォルダーに移動させます。

  2. 以下のコマンドを実行して、アーカイブを抽出します:

    tar -xvzf ARCHIVE_NAME.tgz
    

データベースの抽出とインポート

ダウンロードしたデータベースアーカイブ(名前は backup-db-<PROJECT_NAME>-prd-<BACKUP_ID>.tgz)の場所でコマンドプロンプトを開き、以下の手順を実行してMySQLにインポートします:

  1. データベースアーカイブを抽出します:

    tar -xvzf ARCHIVE_NAME.tgz
    
  2. ローカルシステムのMySQLクライアントにログインします:

    mysql -u root -ppassword
    
  3. ファイル名(拡張子を除く)をデータベース名として使用して、データをインポートするデータベースを作成します:

    create database DATABASE_NAME;
    
  4. 抽出された .sql ダンプからデータベースをインポートします:

    use DATABASE_NAME;
    
    source DATABASE_NAME.sql;
    
  5. 最後に、MySQLクライアントから切断します:

    exit
    

データベースとドキュメントライブラリが配置され、データのアップグレードを実行する準備が整いました。

データアップグレードの実行

DXPバンドルは、データのアップグレードに使用されるアップグレードツールを提供します。 このツールは、バンドルに含まれるスクリプト db_upgrade.shを介して呼び出されます。

注釈

データベースのアップグレードツールを事前に設定しておくことで、実行時の柔軟性を高めることができます。 高度な使い方については、 データベースアップグレードツールの使い方 を参照してください。

あなたの LIFERAY_HOME/tools/portal-tools-db-upgrade-client フォルダ内でコマンドプロンプトを開いてください。 次に、以下のコマンドを実行します:

db_upgrade.sh -j "-Dfile.encoding=UTF-8 -Duser.timezone=GMT -Xmx2048m" -l "output.log"

アップグレードツールは、データのアップグレードを開始する前に、インストールに関する情報を要求します。 Tomcatを含むLiferayバンドルをダウンロードした場合は、一部のディレクトリがデフォルト値として自動的に検出されます。

以下は、この情報を入力するアップグレードツールとの相互作用の例です:

Please enter your application server (tomcat):
tomcat

Please enter your application server directory (../../tomcat-9.0.17):

Please enter your extra library directories (../../tomcat-9.0.17/bin):

Please enter your global library directory (../../tomcat-9.0.17/lib):

Please enter your portal directory (../../tomcat-9.0.17/webapps/ROOT):

[ db2 mariadb mysql oracle postgresql sqlserver sybase ]
Please enter your database (mysql):
mysql

Please enter your database host (localhost):

(etc.)

必要な情報を入力すると、アップグレードツールによってデータのアップグレードが実行されます。 次のメッセージがコンソールに表示されたら、アップグレードは完了です:

Completed Liferay core upgrade and verify processes in 64 seconds
Checking to see if all upgrades have completed... done.

バンドルをローカルでテストして、アップグレードがスムーズに完了したことを確認します。 LIFERAY_HOME/tomcat-9.x.x/bin/から以下のコマンドを実行すれば、ローカルでインスタンスをテストすることができます。

./catalina.sh run

アップグレードが完了し、検証されると、データベースとデータ量がDXP Cloudにアップロードされる準備が整います。

ドキュメントライブラリを圧縮する

Liferayのインストールがアップグレードされたので、以下の手順で バックアップ サービスにアップロードする準備をします。

ドキュメントライブラリの圧縮

  1. あなたの LIFERAY_HOME/data フォルダ内でコマンドプロンプトを開きます。

  2. 次のコマンドを使用して、このファイルを .tgz アーカイブに圧縮します:

    tar -czvf volume.tgz document_library
    

    重要

    もし、ダウンロードしたデータボリュームに他のフォルダ(例えば、 license/ フォルダ)が含まれていた場合は、 document_library の後に追加の引数としてそれらを追加してください。

データベースアップグレードツールの使用

  1. 次のコマンドを実行して、データベースダンプを実行します:

    mysqldump -uroot -ppassword --databases --add-drop-database lportal | gzip -c | cat > database.gz
    
  2. このファイルを以下のコマンドで .tgz のアーカイブに圧縮します:

    tar zcvf database.tgz database.gz
    

データベースとLiferayデータボリュームは、 backup サービスにアップロードするための準備が整いました。

ドキュメントライブラリとデータベースのアップロード

コンソールから backup サービスにドキュメントライブラリとデータベースのアーカイブをアップロードします。

  1. まだログインしていない場合は、 DXP Cloudコンソール にログインします。

  2. 該当する環境の Backups ページに移動します。

  3. 画面上部の 「バックアップをアップロード...」をクリックします。画面上部の をクリックします。

    Upload Backup ボタンをクリックすると、アップロードのページにアクセスできます。

  4. Upload Backup ページで、該当する環境を展開し、データベースとドキュメントライブラリの両方で `` アイコンをクリックし、アップロードしてください。

    アイコンをクリックすると、データベースとドキュメントライブラリの両方が.gz形式のアーカイブとしてアップロードされます。

  5. データベース・ダンプとドキュメント・ライブラリの両方がアップロードされたら、 [アップロードの開始] をクリックします。

注釈

また、アップロードAPIにより、データベースダンプやドキュメントライブラリのアップロードも可能です。 詳細は、 Backup Service API をご覧ください。

アップロードが完了すると、新しいバックアップが「バックアップ」ページのリストの最上部に表示されます。

プロジェクトのLiferayイメージのバージョンを更新する

アップグレードされたデータベースが正しく動作するように、あなたの環境で使用している Liferay イメージのバージョンを更新する必要があります。

Liferay DXP の新バージョンを反映させるために、必要に応じてこれらの場所を更新してください。

  • 画像 プロパティ liferay/LCP.json にある. Services Changelogs で更新されたイメージを確認し、アップグレードされたDXPのバージョンがイメージ内のバージョンと一致していることを確認します(例: 7.2 in liferaycloud/liferay-dxp:7.2-4.0.7)。

  • ```の` プロパティ。 Liferay DXP Docker Hub ページ から、アップグレードしたDXPのバージョンに合ったイメージを確認してください。

これらの両方のイメージ バージョンが更新されたら、 変更を 選択した環境にデプロイしてください。 これは、アップロードしたバックアップを復元するためのLiferayサービスを準備するものです。

バックアップを復元する

次の手順に従って、選択した環境にバックアップを復元します:

  1. まだログインしていない場合は、DXP Cloudコンソールにログインします。

  2. バックアップをアップロードした 環境に移動し、サイドメニューから [バックアップ] をクリックします。

  3. リストからバックアップを選択し、そのバックアップのアクションメニューから [復元] をクリックします。

    アップロードしたバックアップの[アクション]メニューから[復元先...]を選択します。

  4. ドロップダウンリストから復元先の環境の1つを選択します(たとえば、 dev 環境)。

    バックアップを展開する環境を選択します。

  5. 環境への復元] をクリックします。

    注釈

    選択した環境は、バックアップがデプロイされている間は利用できなくなります。

これでDXPデータベースを新しいバージョンにアップグレードし、選択した環境にデプロイできました。 また、必要に応じて、 同じバックアップ を他の環境に再度リストアすることもできます。