ポータルのバックアップ

Edge for Private Cloud v4.18.05

このセクションでは、オンプレミスでインストールした Apigee Developer Services ポータル(略して「ポータル」)を、Postgres の pg_dump コマンドと pg_restore コマンドを使ってバックアップあるいは復元する方法を説明します。

また、Drupal の Backup and Migrate モジュールを使って、ローカル、クラウド、FTP ストレージへの定期バックアップのスケジュールを設定することもできます。Backup and Migrate モジュールを使用するには、Drupal のメニューで [Configuration] > [System] > [Backup and Migrate] に移動します。詳細については、バックアップと移行をご覧ください。

バックアップの前に

ポータルをバックアップする前に、ポータルのデータベースの名前を知っておく必要があります。

ポータル インストール設定ファイルの PG_NAME プロパティは、ポータルのデータベースの名前を指定します。ポータルのインストール手順における構成ファイルの例では、devportal という名前を使います。データベース名がわからない場合、構成ファイルを確認するか、次のように psql コマンドでデータベースのリストを表示します。

psql -h localhost -d apigee -U postgres -l

-U は、データベースへのアクセスにポータルが使う Postgres のユーザー名を指定します。これは、ポータル インストール構成ファイルの DRUPAL_PG_USER プロパティの値です。データベースのパスワードを入力するよう求められます。

上記のコマンドは、以下のようにデータベースのリストを表示します。

        Name     | Owner  | Encoding |   Collate   |    Ctype    |  Access privileges
    -------------+--------+----------+-------------+-------------+---------------------
     apigee      | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/apigee         +
                 |        |          |             |             | apigee=CTc/apigee  +
                 |        |          |             |             | postgres=CTc/apigee
     devportal   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
     newportaldb | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
     postgres    | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
     template0   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/apigee          +
                 |        |          |             |             | apigee=CTc/apigee
     template1   | apigee | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/apigee          +
                 |        |          |             |             | apigee=CTc/apigee
    

ポータルのバックアップ

ポータルのバックアップの手順は、以下のとおりです。

  1. 次のように、Drupal のディレクトリ(デフォルトは /opt/apigee/apigee-drupal)に移動します。
    cd /opt/apigee/apigee-drupal
  2. 次のように、pg_dump コマンドで Drupal のデータベース インスタンスをバックアップします。
    pg_dump --dbname=portal_db --host=host_IP_address --username=drupaladmin
          --password --format=c > /tmp/portal.bak

    各パラメータの意味は、次のとおりです。

    • portal_db は、データベースの名前です。これはポータル インストール構成ファイルの PG_NAME プロパティです。データベース名がわからない場合は、バックアップする前にをご覧ください。
    • host_IP_address は、ポータルノードの IP アドレスです。
    • drupaladmin は、ポータルがデータベースにアクセスするのに使う Postgres のユーザー名です。ポータル インストール構成ファイルの DRUPAL_PG_USER プロパティで定義しています。

    pg_dump が、Postgres のユーザー パスワードを要求したときは、ポータル インストール構成ファイルの DRUPAL_PG_PASS プロパティで指定したパスワードを使います。

    pg_dump コマンドは、データベースのコピーを作成します。

  3. Drupal のウェブルート ディレクトリ全体をバックアップします。デフォルトのウェブルートは /opt/apigee/apigee-drupal/wwwroot です。
  4. 公開ファイルをバックアップします。デフォルトでは、/opt/apigee/apigee-drupal/wwwroot/sites/default/files にあります。これが正しい場所であれば、ステップ 3 でバックアップされます。デフォルトの場所から移動した場合は、明示的にバックアップする必要があります。
  5. /opt/apigee/data/apigee-drupal-devportal/private にある非公開ファイルをバックアップします。

    このディレクトリの場所がわからない場合は、drush status コマンドで非公開ファイル システムの場所を確認します。

ポータルの復元

ポータルをバックアップすると、pg_restore コマンドを使ってバックアップから復元できます。

バックアップから既存のデータベースに復元する場合は、次のコマンドを使用します。

pg_restore --clean --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak

バックアップから復元して新しいデータベースを作成するには、次のコマンドを使用します。

pg_restore --clean --create --dbname=portal_db --host=localhost --username=apigee < /tmp/portal.bak

また、バックアップ ファイルを Drupal のウェブルート ディレクトリと非公開ファイルに復元することもできます。