第12章 バックアップと移行
12.1. Red Hat Virtualization Manager のバックアップと復元
12.1.1. Red Hat Virtualization Manager のバックアップ
engine-backup ツールを使用して、Red Hat Virtualization Manager を定期的にバックアップします。このツールは、ovirt-engine サービスを中断せずに、engine データベースと設定ファイルを単一のファイルにバックアップすることができます。
12.1.2. engine-backup コマンドの構文
engine-backup コマンドは、2 つの基本モードのいずれかで機能します。
# engine-backup --mode=backup
# engine-backup --mode=restore
これらの 2 つのモードは、バックアップのスコープや engine データベースの異なる認証情報を指定することができる一連のパラメーターにより、さらに拡張されます。パラメーターとその機能の完全な一覧については、engine-backup --help を実行します。
基本オプション
--mode-
コマンドがバックアップ操作と復元操作のどちらを実行するかを指定します。
backupとrestoreの 2 つのオプションが利用可能です。これは必須のパラメーターです。 --file- バックアップモードでは、バックアップ対象ファイルのパスと名前を指定します。リストアモードでは、バックアップデータの読み取り先ファイルのパスと名前を指定します。これは、バックアップモードとリストアモードの両方で必須のパラメーターです。
--log- バックアップまたは復元操作のログの書き込み先ファイルのパスと名前を指定します。このパラメーターはバックアップモードとリストアモードの両方で必須のパラメーターです。
--scopeバックアップおよび復元操作のスコープを指定します。
all(全データベースと設定データをバックアップ/復元)、files(システム上のファイルのみをバックアップ/復元)、db(Manager データベースのみをバックアップ/復元)、dwhdb(Data Warehouse データベースのみをバックアップ/復元) の 4 つのオプションがあります。デフォルトのスコープはallです。--scopeパラメーターは、同じengine-backupコマンドで複数回指定することができます。
Manager データベースのオプション
以下のオプションは、engine-backup コマンドを restore モードで使用する場合にのみ利用可能です。以下に示したオプションの構文は、Manager データベースの復元に適用します。Data Warehouse データベースの復元では同じオプションがあります。Data Warehouse オプションの構文は engine-backup --help を参照してください。
--provision-db- Manager データベースのバックアップをリストアする先の PostgreSQL データベースを作成します。リモートホストの場合や新規インストールをして PostgreSQL データベースがまだ設定されていない場合にバックアップを復元する時に、このパラメーターは必要です。
--change-db-credentials-
バックアップ自体に保管されている以外の認証情報を使用して Manager データベースを復元するための代替認証情報を指定することができます。このパラメーターに必要なその他のパラメーターについては、
engine-backup --helpを参照してください。 --restore-permissionsまたは--no-restore-permissionsデータベースユーザーのパーミッションを復元します (--no-restore-permissions の場合は復元させません)。バックアップの復元の際には、いずれかのパラメーターが必要です。
注記追加のデータベースユーザーのアクセス許可がバックアップに含まれている場合には、
--restore-permissionsおよび--provision-db(または--provision-dwh-db) のオプションを指定してそのバックアップを復元すると、追加のユーザーが作成され、無作為なパスワードが設定されます。復元したシステムに追加のユーザーがアクセスする必要がある場合には、これらのパスワードを変更する必要があります。「How to grant access to an extra database user after restoring Red Hat Virtualization from a backup」の記事を参照してください。
12.1.3. engine-backup コマンドを使用したバックアップの作成
Red Hat Virtualization Manager は、engine-backup コマンドを使用して Manager がアクティブな状態の時にバックアップすることができます。--scope に以下のオプションのいずれかを追加して、実行するバックアップを指定します。
-
all: Manager 上の全データベースと設定ファイルの完全なバックアップ -
files: システム上のファイルのみのバックアップ -
db: Manager データベースのみのバックアップ -
dwhdb: Data Warehouse データベースのみのバックアップ
Red Hat Virtualization Manager の新規インストールにデータベースを復元するには、データベースのバックアップだけでは不十分です。Manager は設定ファイルにもアクセスする必要があります。デフォルトの all 以外の範囲を指定するバックアップは、files の範囲または filesystem バックアップと共に復元する必要があります。
engine-backup コマンドの使用例
- Red Hat Virtualization Manager を実行しているマシンにログインします。
バックアップを作成します。
例12.1 完全バックアップの作成
# engine-backup --scope=all --mode=backup --file=file_name --log=log_file_name
例12.2 Manager データベースのバックアップの作成
# engine-backup --scope=files --scope=db --mode=backup --file=file_name --log=log_file_name
Data Warehouse データベースまたは Reports データベースをバックアップするには、
dbオプションをdwhdbに置き換えます。指定したパスとファイル名で、バックアップが含まれた
tarファイルが作成されます。
バックアップが含まれた tar ファイルを環境の復元に使用できるようになりました。
12.1.4. engine-backup コマンドを使用したバックアップの復元
engine-backup コマンドを使用したバックアップの復元では、復元先によっては、バックアップの作成以外のステップも必要となります。たとえば、engine-backup コマンドを使用して、ローカルまたはリモートのデータベースを使用する既存の Red Hat Virtualization インストール上に、Red Hat Virtualization の新規インストールを復元することが可能です。
バックアップは、そのバックアップと同じメジャーリリースの環境に対してのみ復元することが可能です。たとえば、Red Hat Virtualization バージョン 4.2 環境のバックアップは、別の Red Hat Virtualization バージョン 4.2 環境に対してのみ復元することができます。バックアップファイルに格納されている Red Hat Virtualization のバージョンを確認するには、そのバックアップファイルを展開し、そのファイルの root ディレクトリーにある version ファイルの値を読み取ってください。
12.1.5. 新規インストールへのバックアップ復元
engine-backup コマンドを使用して、Red Hat Virtualization Manager の新規インストールにバックアップを復元することができます。以下の手順は、ベースオペレーティングシステムと Red Hat Virtualization Manager の必須パッケージがインストール済みで、かつ engine-setup コマンドがまだ実行されていないマシンで実行する必要があります。この手順は、バックアップを復元するマシンからバックアップファイル (単一または複数) にアクセスできることを前提としています。
新規インストールへのバックアップ復元
- Manager マシンにログインします。engine データベースをリモートのホストに復元する場合には、そのホストにログオンして、適切な操作を実行する必要があります。また同様に、Data Warehouse をリモートホストに復元する場合には、そのホストにログインして、適切な操作を行う必要があります。
完全なバックアップまたはデータベースのみのバックアップを復元します。
完全なバックアップを復元する場合:
# engine-backup --mode=restore --file=file_name --log=log_file_name --provision-db --restore-permissions
Data Warehouse も全バックアップの一部として復元する場合には、追加のデータベースをプロビジョニングします。
engine-backup --mode=restore --file=file_name --log=log_file_name --provision-db --provision-dwh-db --restore-permissions
データベースのみのバックアップを復元する場合 (設定ファイルとデータベースのバックアップを復元):
# engine-backup --mode=restore --scope=files --scope=db --file=file_name --log=log_file_name --provision-db --restore-permissions
上記の例では、Manager データベースのバックアップが復元されます。
# engine-backup --mode=restore --scope=files --scope=dwhdb --file=file_name --log=log_file_name --provision-dwh-db --restore-permissions
上記の例では、Data Warehouse データベースのバックアップが復元されます。
正常に終了すると、以下のような出力が表示されます。
You should now run engine-setup. Done.
以下のコマンドを実行してプロンプトに従い、Manager を復元します。
# engine-setup
Red Hat Virtualization Manager がバックアップに保存されていたバージョンに復元されました。新しい Red Hat Virtualization システムの完全修飾ドメイン名を変更するには「ovirt-engine-rename ツール」を参照してください。
12.1.6. バックアップの復元による既存インストールの上書き
engine-backup コマンドで Red Hat Virtualization Manager がすでにインストール/設定されているマシンにバックアップを復元することができます。この方法は、インストールのバックアップを取得済みで、そのインストールに対して変更を加えた後にバックアップからインストールを復元する場合に有用です。
バックアップを復元して既存インストールを上書きする場合は、engine-backup コマンドを使用する前に engine-cleanup コマンドを実行して既存インストールをクリーンアップしておく必要があります。engine-cleanup コマンドは、engine データベースをクリーンアップするのみで、データベースをドロップしたり、データベースを所有するユーザーを削除したりはしません。このため、ユーザーとデータベースはすでに存在しているので、新規データベース作成やデータベース認証情報の指定は必要ありません。
バックアップの復元による既存インストールの上書き
- Red Hat Virtualization Manager マシンにログインします。
設定ファイルを削除し、Manager に関連付けられているデータベースをクリーンアップします。
# engine-cleanup
- 完全なバックアップまたはデータベースのみのバックアップを復元します。
完全なバックアップを復元する場合:
# engine-backup --mode=restore --file=file_name --log=log_file_name --restore-permissions
データベースのみのバックアップを復元する場合 (設定ファイルとデータベースのバックアップを復元):
# engine-backup --mode=restore --scope=files --scope=db --file=file_name --log=log_file_name --restore-permissions
上記の例は、Manager データベースのバックアップを復元します。必要な場合には、Data Warehouse のデータベースも復元します。
# engine-backup --mode=restore --scope=dwhdb --file=file_name --log=log_file_name --restore-permissions
正常に終了すると、以下のような出力が表示されます。
You should now run engine-setup. Done.
以下のコマンドを実行し、プロンプトに従ってファイアウォールを再設定して、
ovirt-engineサービスを正しく設定します。# engine-setup
12.1.7. 異なる認証情報を使用したバックアップの復元
バックアップ内のデータベースの認証情報がバックアップの復元先となるマシンのデータベースの認証情報と異なる場合でも、engine-backup コマンドを使用して、Red Hat Virtualization Manager がすでにインストール/設定済みのマシンにバックアップを復元することができます。この方法は、インストールのバックアップを作成済みで、そのインストールをバックアップから別のシステムに復元する必要がある場合に有用です。
バックアップを復元して既存インストールを上書きする場合は、engine-backup コマンドを使用する前に engine-cleanup コマンドを実行して既存インストールをクリーンアップしておく必要があります。engine-cleanup コマンドは、engine データベースをクリーンアップするのみで、データベースをドロップしたり、データベースを所有するユーザーを削除したりはしません。このため、ユーザーとデータベースはすでに存在しているので、新規データベース作成やデータベース認証情報の指定は必要ありません。ただし、engine データベースの所有者の認証情報が不明の場合には、バックアップを復元する前に変更しておく必要があります。
異なる認証情報を使用したバックアップの復元
- Red Hat Virtualization Manager マシンにログインします。
以下のコマンドを実行し、プロンプトに従って Manager の設定ファイルを削除し、Manager に関連付けられているデータベースをクリーンアップします。
# engine-cleanup
engineデータベースの所有者の認証情報が不明の場合には、そのユーザーのパスワードを変更します。postgresql のコマンドラインに入ります。
# su - postgres -c 'scl enable rh-postgresql95 -- psql'
以下のコマンドを実行して、
engineデータベースを所有するユーザーのパスワードを変更します。postgres=# alter role user_name encrypted password 'new_password';
必要な場合には、
ovirt_engine_dwhのデータベースを所有するユーザーにも上記のコマンドを実行します。
--change-db-credentialsパラメーターを使用して新しいデータベースの認証情報を渡し、完全なバックアップまたはデータベースのみのバックアップを復元します。Manager のローカルに設定されているデータベースの database_location はlocalhostです。注記以下の例では、パスワードは指定せずに、各データベースに
--*passwordオプションを使用するため、このコマンドを実行すると、データベースごとにパスワードを入力するように要求されます。コマンド内でこれらのオプションにパスワードを指定することも可能ですが、パスワードが shell の履歴に保存されてしまうため推奨しません。別の方法として、各データベースに--*passfile=password_fileオプションを使用して、対話型プロンプトの必要なくパスワードをセキュアにengine-backupツールに渡すことができます。完全なバックアップを復元する場合:
# engine-backup --mode=restore --file=file_name --log=log_file_name --change-db-credentials --db-host=database_location --db-name=database_name --db-user=engine --db-password --no-restore-permissions
Data Warehouse も全バックアップの一部として復元する場合には、追加のデータベースの変更後の認証情報を含めるようにしてください。
engine-backup --mode=restore --file=file_name --log=log_file_name --change-db-credentials --db-host=database_location --db-name=database_name --db-user=engine --db-password --change-dwh-db-credentials --dwh-db-host=database_location --dwh-db-name=database_name --dwh-db-user=ovirt_engine_history --dwh-db-password --no-restore-permissions
データベースのみのバックアップを復元する場合 (設定ファイルとデータベースのバックアップを復元):
# engine-backup --mode=restore --scope=files --scope=db --file=file_name --log=log_file_name --change-db-credentials --db-host=database_location --db-name=database_name --db-user=engine --db-password --no-restore-permissions
上記の例では、Manager データベースのバックアップが復元されます。
# engine-backup --mode=restore --scope=files --scope=dwhdb --file=file_name --log=log_file_name --change-dwh-db-credentials --dwh-db-host=database_location --dwh-db-name=database_name --dwh-db-user=ovirt_engine_history --dwh-db-password --no-restore-permissions
上記の例では、Data Warehouse データベースのバックアップが復元されます。
正常に終了すると、以下のような出力が表示されます。
You should now run engine-setup. Done.
以下のコマンドを実行し、プロンプトに従ってファイアウォールを再設定して、
ovirt-engineサービスを正しく設定します。# engine-setup
12.1.8. リモートサーバーデータベースへの engine データベースの移行
Red Hat Virtualization Manager の初期設定の後に、engine データベースをリモートのデータベースサーバーに移行することができます。データベースのバックアップの作成や、新規データベースサーバーへのバックアップの復元には、engine-backup を使用します。以下の手順は、新規データベースサーバーに Red Hat Enterprise Linux 7 がインストールされており、適切なサブスクリプションが設定されていることを前提としています。『インストールガイド』の「必要なエンタイトルメントのサブスクライブ」を参照してください。
データベースの移行
Red Hat Virtualization Manager のマシンにログインし、engine のバックアップと干渉しないように
ovirt-engineサービスを停止します。# systemctl stop ovirt-engine.service
engineデータベースのバックアップを作成します。# engine-backup --scope=files --scope=db --mode=backup --file=file_name --log=log_file_name
バックアップファイルを新規データベースサーバーにコピーします。
# scp /tmp/engine.dump root@new.database.server.com:/tmp
新規データベースにログインして
engine-backupをインストールします。# yum install ovirt-engine-tools-backup
新規データベースサーバーにデータベースを復元します。file_name は、Manager からコピーしたバックアップファイルに置き換えてください。
# engine-backup --mode=restore --scope=files --scope=db --file=file_name --log=log_file_name --provision-db --no-restore-permissions
データベースが移行されたので、
ovirt-engineサービスを起動します。# systemctl start ovirt-engine.service

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.