6.2.3. セルフホストエンジンマネージャーの手動復元


以下の手順では、バックアップされたセルフホストエンジンマネージャー仮想マシンの設定およびデータベースコンテンツを手動で復元する方法を説明します。

手順6.6 セルフホストエンジンマネージャーの復元

  1. 空のデータベースを手動で作成し、バックアップ内のデータベースコンテンツを復元できます。以下の手順は、データベースをホストするマシンで実行する必要があります。
    1. データベースを Manager 用仮想マシン以外のマシンでホストする場合は、postgresql-server パッケージをインストールします。このステップは、データベースが Manager 用仮想マシンでホストされる場合は不要です。これは、このパッケージは次のパッケージに含まれて いる ためです。
      # yum install postgresql-server
    2. postgresql データベースを初期化し、postgresql サービスを開始して、このサービスが起動時に開始されることを確認します。
      # postgresql-setup initdb
      # systemctl start postgresql.service
      # systemctl enable postgresql.service
    3. postgresql コマンドラインを入力します。
      # su postgres
      $ psql
    4. engine ユーザーを作成します。
      postgres=# create role engine with login encrypted password 'password';
      Data Warehouse も復元する場合は、該当するホストに ovirt_engine_history ユーザーを作成します。
      postgres=# create role ovirt_engine_history with login encrypted password 'password';
    5. 新しいデータベースを作成します。
      postgres=# create database database_name owner engine template template0 encoding 'UTF8' lc_collate 'en_US.UTF-8' lc_ctype 'en_US.UTF-8';
      Data Warehouse も復元する場合は、該当するホストにデータベースを作成します。
      postgres=# create database database_name owner ovirt_engine_history template template0 encoding 'UTF8' lc_collate 'en_US.UTF-8' lc_ctype 'en_US.UTF-8';
    6. postgresql コマンドラインを終了し、postgres ユーザーからログアウトします。
      postgres=# \q
      $ exit
    7. 以下のように /var/lib/pgsql/data/pg_hba.conf ファイルを編集します。
      • 各ローカルデータベースについて、ファイルの下部にある local で始まる セクションの既存のディレクティブを、以下のディレクティブに置き換えます。
        host    database_name    user_name    0.0.0.0/0  md5
        host    database_name    user_name    ::0/0      md5
      • リモートデータベースごとに以下を行います。
        • ファイルの下部にある Local で始まる行のすぐ下に以下の行を追加します。X.X.X.X は Manager の IP アドレスに置き換えます。
          host    database_name    user_name    X.X.X.X/32   md5
        • データベースへの TCP/IP 接続を許可します。/var/lib/pgsql/data/postgresql.conf ファイルを編集し、以下の行を追加します。
          listen_addresses='*'
          この例では、postgresql サービスがすべてのインターフェイスの接続をリッスンするように設定します。IP アドレスを指定してインターフェイスを指定できます。
        • PostgreSQL データベースの接続に使用するデフォルトのポートを開放して、更新したファイアウォールルールを保存します。
          # iptables -I INPUT 5 -p tcp -s Manager_IP_Address --dport 5432 -j ACCEPT
          # service iptables save
    8. postgresql サービスを再起動します。
      # systemctl restart postgresql.service
  2. バックアップファイルを新しい Manager 仮想マシンへセキュアにコピーします。この例では、「セルフホストエンジンマネージャー仮想マシンのバックアップ」 でファイルがコピーされたネットワークストレージサーバーからファイルをコピーします。この例では、Storage.example.com はストレージサーバーの完全修飾ドメイン名で、/backup/EngineBackupFiles はストレージサーバー上のバックアップファイルの指定のファイルパスで、/backup/ は新しい Manager でファイルをコピーするパスです。
    # scp -p Storage.example.com:/backup/EngineBackupFiles /backup/
  3. --change-db-credentials パラメーターを使用して完全バックアップまたはデータベースのみのバックアップを復元し、新しいデータベースの認証情報を渡します。Manager にローカルなデータベースの database_locationlocalhost です。
    注記
    以下の例では、パスワードを指定せずにデータベースごとに --*password オプションを使用します。これにより、各データベースのパスワードの入力が求められます。コマンド自体でこれらのオプションにパスワードを指定できますが、パスワードはシェル履歴に保存されるため、この方法は推奨されません。または、各データベースに --*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
      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
    • 設定ファイルとデータベースのバックアップを復元するデータベースのみのバックアップを復元します。
      # engine-backup --mode=restore --scope=files --scope=db --file=file_name --log=file_name --change-db-credentials --db-host=database_location --db-name=database_name --db-user=engine --db-password
      上記の例では、Manager データベースのバックアップを復元します。
      # engine-backup --mode=restore --scope=files --scope=dwhdb --file=file_name --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
      上記の例では、Data Warehouse データベースのバックアップを復元します。
    成功すると、次の出力が表示されます。
    You should now run engine-setup.
    Done.
  4. 復元された Manager 仮想マシンを設定します。このプロセスは、既存の設定設定およびデータベースの内容を特定します。設定を確認します。設定が完了すると、SSH フィンガープリントと内部認証局ハッシュが提供されます。
    # engine-setup
    [ INFO  ] Stage: Initializing
    [ INFO  ] Stage: Environment setup
    Configuration files: ['/etc/ovirt-engine-setup.conf.d/10-packaging.conf', '/etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf']
    Log file: /var/log/ovirt-engine/setup/ovirt-engine-setup-20140304075238.log
    Version: otopi-1.1.2 (otopi-1.1.2-1.el6ev)
    [ INFO  ] Stage: Environment packages setup
    [ INFO  ] Yum Downloading: rhel-65-zstream/primary_db 2.8 M(70%)
    [ INFO  ] Stage: Programs detection
    [ INFO  ] Stage: Environment setup
    [ INFO  ] Stage: Environment customization
             
              --== PACKAGES ==--
             
    [ INFO  ] Checking for product updates...
    [ INFO  ] No product updates found
             
              --== NETWORK CONFIGURATION ==--
             
    Setup can automatically configure the firewall on this system.
    Note: automatic configuration of the firewall may overwrite current settings.
    Do you want Setup to configure the firewall? (Yes, No) [Yes]: 
    [ INFO  ] iptables will be configured as firewall manager.
             
              --== DATABASE CONFIGURATION ==--
             
             
              --== OVIRT ENGINE CONFIGURATION ==--
             
              Skipping storing options as database already prepared
             
              --== PKI CONFIGURATION ==--
             
              PKI is already configured
             
              --== APACHE CONFIGURATION ==--
             
             
              --== SYSTEM CONFIGURATION ==--
             
             
              --== END OF CONFIGURATION ==--
             
    [ INFO  ] Stage: Setup validation
    [ INFO  ] Cleaning stale zombie tasks
             
              --== CONFIGURATION PREVIEW ==--
             
              Database name                      : engine
              Database secured connection        : False
              Database host                      : X.X.X.X
              Database user name                 : engine
              Database host name validation      : False
              Database port                      : 5432
              NFS setup                          : True
              Firewall manager                   : iptables
              Update Firewall                    : True
              Configure WebSocket Proxy          : True
              Host FQDN                          : Manager.example.com
              NFS mount point                    : /var/lib/exports/iso
              Set application as default page    : True
              Configure Apache SSL               : True
             
              Please confirm installation settings (OK, Cancel) [OK]:
  5. 復元された環境からのホストの削除

    復元されたセルフホストエンジンのデプロイメントがバックアップエンジンに一意の名前を持たない新しいハードウェア上にある場合は、この手順を省略します。この手順は、フェイルオーバーホスト hosted_engine_1 で発生したデプロイメントにのみ適用されます。このホストはバックアップの作成時に環境に存在していたため、復元されたエンジンで存在を維持し、最終的な同期が行われる前に環境から最初に削除する必要があります。
    1. 管理ポータルにログインします。
    2. Hosts タブをクリックします。フェイルオーバーホスト hosted_engine_1 は、バックアップの準備方法であったため、メンテナーンスモードと仮想負荷のない状態になります。
    3. 削除 をクリックします。
    4. OK をクリックし ます。
  6. ホストと Manager の同期

    ホストに戻り、オプション 1 を選択して hosted-engine デプロイメントスクリプトを続行します。
    (1) Continue setup - engine installation is complete
    [ INFO  ] Engine replied: DB Up!Welcome to Health Status!
    [ INFO  ] Waiting for the host to become operational in the engine. This may take several minutes...
    [ INFO  ] Still waiting for VDSM host to become operational...
    この時点で、hosted_engine_1 が管理ポータルに表示され、Non Operational 状態になる前に Installing および Initializing 状態が表示されます。ホストは、最終的にタイムアウトするまで VDSM ホストが動作しなくなるのを待機します。これは、SPM ホストが Non Responsive 状態であるため、環境内の別のホストが Storage Pool Manager (SPM)のロールと hosted_engine_1 がストレージドメインと対話できないために発生します。このプロセスがタイムアウトすると、デプロイメントを完了するために仮想マシンをシャットダウンするように求められます。デプロイメントが完了すると、ホストは手動でメンテナーンスモードに切り替え、管理ポータルからアクティベートできます。
    [ INFO  ] Still waiting for VDSM host to become operational...
    [ ERROR ] Timed out while waiting for host to start. Please check the logs.
    [ ERROR ] Unable to add hosted_engine_2 to the manager
              Please shutdown the VM allowing the system to launch it as a monitored service.
              The system will wait until the VM is down.
  7. 新しい Manager 仮想マシンをシャットダウンします。
    # shutdown -h now
  8. ホストに戻り、Manager 用仮想マシンが停止していることを検出していることを確認します。
    [ INFO  ] Enabling and starting HA services
              Hosted Engine successfully set up
    [ INFO  ] Stage: Clean up
    [ INFO  ] Stage: Pre-termination
    [ INFO  ] Stage: Termination
    
  9. ホストをアクティブ化します。
    1. 管理ポータルにログインします。
    2. Hosts タブをクリックします。
    3. hosted_engine_1 を選択し、Maintenance ボタンをクリックします。ホストがメンテナーンスモードに移行するまでに数分かかる場合があります。
    4. Activate ボタンをクリックします。
    アクティブになると、SPM の hosted_engine_1 がすぐに処理され、ストレージドメインとデータセンターがアクティブになります。
  10. Non Responsive ホストを手作業でフェンシングして、仮想マシンをアクティブなホストに移行します。管理ポータルでホストを右クリックし、Confirm 'Host has been Rebooted' を選択します。
    バックアップ時にそのホストで実行されていた仮想マシンはそのホストから削除され、Unknown 状態から Down 状態に移行します。これらの仮想マシンは hosted_engine_1 で実行できるようになりました。フェンシングされたホストは、REST API を使用して強制的に削除できるようになりました。
環境は hosted_engine_1 がアクティブであり、復元された環境で仮想マシンを実行できるポイントに復元されました。Non operational 状態の残りのセルフホストエンジンノードは、「復元されたセルフホストエンジン環境からの非操作ホストの削除」 の手順に従い、7章追加ホストのセルフホストエンジンへのインストール の手順にしたがって環境に再度インストールすることで削除できるようになりました。
注記
Manager データベースが正常に復元されたものの、Manager 用仮想マシンが Down であると表示され、別のセルフホスト型エンジンノードに移行できない場合は、に記載 https://access.redhat.com/solutions/1517683 の手順に従って、新しい Manager 仮想マシンを有効にし、環境からデッド Manager 仮想マシンを削除できます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.