Drupal をアップグレードする

Apigee Developer Services ポータル(略して「ポータル」)の Edge for Private Cloud インストールで、Drupal の新しいバージョンが利用可能になったという通知が表示されることがあります。新しいバージョンとは、Drupal の機能リリース、パッチ、セキュリティ アップデート、その他のタイプの Drupal アップデートを意味します。セキュリティ アップデートの場合は、サイトのセキュリティを確保するために、できるだけ早く Drupal のインストールをアップグレードする必要があります。

Drupal コアをアップグレードする

以下の手順では、Drupal 7.x.y のプライベート クラウド インストールを別のマイナー バージョン(Drupal 7.54 から 7.59 など)に更新する方法について説明します。

次の点にご注意ください。

  • この手順では、Drupal のインストールのみが更新されます。ポータルの一部として提供される Apigee ソフトウェアは更新されません。Apigee ポータル ソフトウェアのアップグレードについては、ポータルのアップグレードをご覧ください。

    Private Cloud のアップグレード中(4.18.05 から 4.19.01 など)に、Apigee アップデート ユーティリティが Drupal のバージョンをダウングレードした場合は、Drupal アップグレード ユーティリティを再度実行する必要があります。詳細については、Drupal のアップグレードを再実行するをご覧ください。

  • Drush(Drupal Shell)コマンドは、ポータルサイトのルート ディレクトリから実行する必要があります。デフォルトでは、ポータルは次のディレクトリにインストールされます。
    • /opt/apigee/apigee-drupal/wwwroot(Nginx)
    • /var/www/html(Apache)
    以下の手順では、Nginx サーバーが上記のデフォルトの場所にインストールされていることを前提とします。

Drupal の現在のバージョンの確認

Drupal の更新を開始する前に、Drupal のインストール フォルダから次のコマンドを実行して、Drupal の現在のバージョンを確認できます。デフォルトでは、Drupal は /opt/apigee/apigee-drupal/wwwroot にインストールされます。

cd /opt/apigee/apigee-drupal/wwwroot
drush status | grep 'Drupal version'

出力は次の形式のようになります。

Drupal version          :  7.54

/opt/apigee/apigee-drupal/wwwroot 以外のディレクトリに Drupal をインストールした場合は、drush コマンドを実行する前にそのディレクトリに移動してください。

Drupal のバージョンを更新する

このセクションでは、コマンドラインから Drush コマンドを使用して Drupal のバージョンを更新する方法について説明します。Drush を使用した Drupal の更新(Drupal.org)もご覧ください。

Drupal のインストールを更新するには:

  1. /opt/apigee/apigee-drupal/wwwroot ディレクトリ、またはポータルをインストールしたディレクトリに移動します。
  2. すべてのファイル、ディレクトリ、データベースのフル バックアップを作成します。バックアップは、Drupal のインストール場所とは別の場所に保存します。詳しい手順については、ポータルをバックアップするをご覧ください。

    .htaccess、robots.txt、defaults.settings.php(sites ディレクトリ内)などのファイルに変更を加えた場合は、更新後に変更を再適用する必要があります。また、sites/all ディレクトリで行ったカスタマイズを再度適用する必要があります。

  3. サイトをメンテナンス モードにします。
    drush vset --exact maintenance_mode 1
    drush cache-clear all
  4. 次のコマンドを使用して、必要なバージョンの Drupal をインストールします。
    drush pm-update drupal-version

    ここで、version は目的のバージョンです。

    または、drush pm-update drupal を実行して、最新の Drupal コア バージョンに更新することもできます。drush pm-updatestatus を実行すると、Drupal コアおよび関連するプロジェクトで利用可能なマイナー アップデートを一覧表示できます。

  5. .htaccess、robots.txt、defaults.settings.php(sites ディレクトリ内)に加えた変更を再度適用します。
  6. sites/all ディレクトリに加えた変更を再度適用します。
  7. サイトのメンテナンス モードを解除します。
    drush vset --exact maintenance_mode 0
    drush cache-clear all

PHP と Drupal contrib モジュールをアップグレードする

このセクションの上記の手順で Drupal をアップグレードすると、Drupal で使用されるモジュール(contrib や PHP など)もアップグレードされます。ただし、プライベート クラウドのリリース間では、最新の Drupal モジュールを常に把握しておく必要があります。

モジュールが /profiles/apigee/modules/contrib にある場合は、新しいバージョンを /sites/all/modules/contrib に保存することで、そのモジュールの新しいバージョンに置き換えることができます。Edge for Private Cloud は、/profiles/apigee/modules/contrib の古いバージョンではなく、/sites/all/modules/contrib の新しいバージョンを使用します。詳細については、モジュールの更新(Drupal.org)をご覧ください。

以前に /sites/all/modules/contrib に保存したモジュールの新しいバージョンを含む新しいプライベート クラウド バージョンをインストールする場合は、/sites/all/modules/contrib からモジュールを削除します。詳細については、モジュールとテーマの移動(Drupal.org)をご覧ください。

更新中に問題が発生した場合はどうすればよいですか?

作成したバックアップ ファイルを使用して、サイトを元の状態に復元します。Apigee Edge サポートに連絡し、アップデート中に報告されたエラー メッセージを知らせます。