5.3. RHEL ベースのセルフホストエンジンを Red Hat Enterprise Linux 6 ホストから 7 ホストにアップグレードする手順

Red Hat Enterprise Virtualization 3.6 の全機能を活用するには、Red Hat Enterprise Linux 6 ホストから Red Hat Enterprise Linux 7 にアップグレードしてください。ホストをバージョン 7 にアップグレードしない場合は、データセンターとクラスターの互換性バージョンは現在のバージョンのままにしておく必要があります。互換性バージョンを 3.6 にアップグレードした場合には、Red Hat Enterprise Linux 7 のホストのみがサポートされます。以下の手順に従って、Red Hat Enterprise Linux 6 ホスト上の Red Hat Enterprise Virtualization 3.5 セルフホストエンジン環境を Red Hat Enterprise Linux 7 ホスト上の Red Hat Enterprise Virtualization 3.6 セルフホストエンジン環境にアップグレードしてください。
アップグレードのプロセスは、以下の主要なステップで構成されます。
  • Red Hat Enterprise Virtualization 3.5 環境で、バージョン 6 のホストをすべてバージョン 7 にアップグレードします。全セルフホストエンジンのホスト上で hosted-engine --deploy をもう一度実行します。同じクラスター内でバージョン 6 と 7 のホストを混在させる構成はサポートされていないため、バージョン 7 をホストするために別のクラスターを作成してください。
  • Manager 仮想マシンとセルフホストエンジンホストを Red Hat Enterprise Virtualization 3.6 にアップグレードします。
  • クラスター内のすべてのホストと Manager 仮想マシンが更新されたら、クラスターの互換性バージョンを 3.6 に変更します。

注記

既知の問題および回避策の一部は、https://access.redhat.com/articles/2188461 の記事に記載しています。

前提条件

  • Red Hat Enterprise Virtualization 3.5 環境に、バージョン 6 のセルフホストエンジンホストを 2 台以上用意する必要があります。
  • Red Hat Enterprise Linux 7 インストールメディアを用意する必要があります。

手順5.2 Red Hat Enterprise Virtualization 3.5 環境での Red Hat Enterprise Linux 6 ホストから 7 ホストへのアップグレード

  1. バージョン 6 のクラスターと同じ設定および構成の新しいクラスターを作成します。新しいクラスターは、バージョン 7 のホストをグループ化するために使用します。仮想マシンをバージョン 6 のクラスターから新しいクラスターに、ダウンタイムなしでライブマイグレーションするには、新しいクラスターがライブマイグレーションの要件を満たしていることを確認してください。ライブマイグレーションの要件については、『仮想マシン管理ガイド』の「ライブマイグレーションの前提条件」を参照してください。新規クラスターの作成については、『管理ガイド』の「新規クラスターの作成」を参照してください。
  2. セルフホストエンジンホストをメンテナンスモードに設定します。ホストで実行中の仮想マシンは、環境内の他のホストに移行されます。
    1. セルフホストエンジンホストの 1 つにログインします。
    2. 管理ポータルにログインします。
    3. ホスト タブをクリックします。
    4. 結果一覧からホストを選択して、メンテナンス を押して、Ok クリックします。このアクションにより、仮想マシンがホストされないようにホストがメンテナンスモードに設定され、Manager 仮想マシンがホストされないように高可用性エージェントがローカルメンテナンスモードに指定されます。
    5. 20 秒後に、高可用性エージェントがローカルメンテナンスモードに設定されたことを確認します。
      # hosted-engine --vm-status
  3. セルフホストエンジンの全ホスト上にある高可用性エージェントを無効化します。管理ポータルで、仮想マシン タブをクリックします。Manager 仮想マシンを右クリックして、グローバル HA メンテナンスを有効にする を選択し、すべてのホストをグローバルメンテナンスモードに設定します。
  4. ホスト タブをクリックします。結果一覧からホストを選択して、削除 を押してから OK をクリックします。
  5. ホストで Red Hat Enterprise Linux 7 オペレーティングシステムを再インストールする場合は Red Hat Enterprise Linux 7 インストールガイド を参照してください。Red Hat Enterprise Linux 6 ホストを Red Hat Enterprise Linux 7 にアップグレードするには https://access.redhat.com/solutions/637583 を参照してください。
  6. Red Hat Enterprise Linux 7 リポジトリーを有効にします。
    # subscription-manager repos --enable=rhel-7-server-rpms
    # subscription-manager repos --enable=rhel-7-server-supplementary-rpms
    # subscription-manager repos --enable=rhel-7-server-rhev-mgmt-agent-rpms
  7. 現在インストールされている全パッケージを最新の状態にします。
    # yum update

    注記

    カーネル関連のパッケージを更新した場合には、マシンを再起動してください。
  8. セルフホストエンジン (Self-Hosted Engine) のパッケージをインストールします。
    # yum install ovirt-hosted-engine-setup
  9. hosted-engine スクリプトを実行します。ネットワークや端末が切断された場合などにセッションが失われないように、screen ウィンドウマネージャーを使用してスクリプトを実行することを推奨します。このウィンドウマネージャーがインストールされていない場合は、標準の Red Hat Enterprise Linux に含まれている screen パッケージをインストールしてください。CTRL+D のキーボードの組み合わせを使用してデプロイメントを中断し、スクリプトをいつでも終了することができます。
    # yum install screen
    # screen hosted-engine --deploy

    注記

    セッションのタイムアウトまたは接続の切断の際には、screen -d -r を実行して hosted-engine デプロイメントセッションを復元します。
  10. アップグレードするホストの設定の際に使用したストレージタイプを選択して、ストレージドメインの完全パスを指定します。次に、ホスト ID を指定するようにプロンプトが表示されます。ホスト ID には整数を指定してください。1 以外であればどの ID を再利用することもできます。
    The specified storage location already contains a data domain. Is this an additional host setup (Yes, No)[Yes]? 
    [ INFO  ] Installing on additional host
    Please specify the Host ID [Must be integer, default: 2]:
  11. hosted-engine スクリプトは、最初の hosted-engine 設定で作成された応答ファイルを使用します。これには、hosted-engine スクリプトにより応答ファイルにアクセスして追加ホストにセキュアコピーできるように、FQDN または IP アドレスと、ホストの root ユーザーパスワードが必要となります。スクリプトにより、first host の詳細を指定するようにプロンプトが表示されますが、解凍ファイルが全セルフホストエンジンホスト上に保存されているため、既存のセルフホストエンジンホストの詳細を指定しても構いません。
    [WARNING] A configuration file must be supplied to deploy Hosted Engine on an additional host.
    The answer file may be fetched from the first host using scp.
    If you do not want to download it automatically you can abort the setup answering no to the following question.
    Do you want to scp the answer file from the first host? (Yes, No)[Yes]:       
    Please provide the FQDN or IP of the first host:           
    Enter 'root' user password for host Host-HE1.example.com: 
    [ INFO  ] Answer file successfully downloaded
  12. Red Hat Enterprise Virtualization 環境で識別できるように、追加ホストの名前と admin@internal ユーザーのパスワードを指定します。
    Enter the name which will be used to identify this host inside the Administrator Portal [hosted_engine_2]:           
    Enter 'admin@internal' user password that will be used for accessing the Administrator Portal: 
    Confirm 'admin@internal' user password:
    
  13. Enter を押して設定を続行してください。最終的に、以下のエラーメッセージで失敗します。これは、同じクラスター内に Red Hat Enterprise Linux 6 と 7 のホストを混在させる構成は現在サポートされていないためです。クラスター内の最後のホストがアップグレードされると、このエラーが表示されなくなります。
    The host hosted_engine_1 is in non-operational state.
    Please try to activate it via the engine webadmin UI.
  14. 管理ポータルで ホスト タブをクリックして hosted_engine_1 を選択します。次に、メンテナンス を選び OK をクリックします。編集 を押して、この手順の最初で作成したバージョン 7 のクラスターにホストクラスターを変更して OK をクリックしてください。
  15. hosted-engine のデプロイメントスクリプトのターミナルに戻り、Enter を押して Retry オプションを確定します。
    Retry checking host status or ignore this and continue (Retry, Ignore)[Retry]?
  16. 設定が完了したら、必要に応じて仮想マシンをホストにライブマイグレーションすることができます。
    1. 管理ポータルで 仮想マシン タブをクリックして、実行中の仮想マシンを選択します。
    2. 移行 をクリックすると、仮想マシンの移行 ウィンドウが開きます。
    3. 詳細パラメーター ボタンをクリックして、ホストの詳細設定を展開し、移行先のクラスターを選択します。
    4. ラジオボタンで ホストを自動選択 を選択するか、移行先のホストを選択 を選択して、ドロップダウンリストでホストを指定します。
    5. OK をクリックして、移行を開始してウィンドウを閉じます。ライブマイグレーションする仮想マシンすべてに対して、このプロセスを繰り返します。
  17. すべてのセルフホストエンジンホストに対して、ステップ 2 以降のステップを繰り返します。最後のセルフホストエンジンホストをアップグレードし、設定が完了したら、ホストをバージョン 7 のクラスターに以降するか、他のホストすべてを Default クラスターに戻すことができます。

手順5.3 Manager 仮想マシンとセルフホストエンジンホストの Red Hat Enterprise Virtualization 3.6 へのアップグレード

  1. セルフホストエンジンの全ホスト上にある高可用性エージェントを無効化します。管理ポータルで、仮想マシン タブをクリックします。engine 仮想マシンを右クリックして、グローバル HA メンテナンスを有効にする を選択し、すべてのホストをグローバルメンテナンスモードに設定します。
  2. Manager の仮想マシンにログインして、Red Hat Enterprise Virtualization Manager をアップグレードします。
    1. Red Hat Enterprise Virtualization Manager がインストールされているシステムが、Red Hat Enterprise Virtualization Manager 3.6 パッケージを取得するために必要なエンタイトルメントにサブスクライブされていることを確認してください。
      # subscription-manager repos --enable=rhel-6-server-rhevm-3.6-rpms
    2. rhevm-setup パッケージを更新します。
      # yum update rhevm-setup
    3. engine-setup コマンドを実行してプロンプトに従い、Red Hat Enterprise Virtualization Manager をアップグレードします。
      # engine-setup
    4. Red Hat Enterprise Virtualization Manager 3.5 チャンネルを削除または無効にして、このシステムで Red Hat Enterprise Virtualization Manager 3.5 のパッケージが使用されないようにします。
      # subscription-manager repos --disable=rhel-6-server-rhevm-3.5-rpms
    5. ベースオペレーティングシステムを更新します。
      # yum update
  3. 管理ポータルでセルフホストエンジンホストを選択して、メンテナンス をクリックしてメンテナンスモードに設定します。ホストが Manager 仮想マシンをホストしている場合には、この仮想マシンは別のホストに移行されます。それ以外の仮想マシンは、仮想マシンの移行ポリシーに従って移行されます。高可用性エージェントは、自動的にローカルメンテナンスに設定されます。
  4. 必要なリポジトリーが有効になっていることを確認します。
    # subscription-manager repos --enable=rhel-7-server-rhev-mgmt-agent-rpms
  5. セルフホストエンジンホストを更新します。
    # yum update
  6. VDSM を再起動します。
    # systemctl restart vdsmd
  7. ovirt-ha-brokerovirt-ha-agent を再起動します。
    # systemctl restart ovirt-ha-broker
    # systemctl restart ovirt-ha-agent

    注記

    しばらくすると、以下のログメッセージが /var/log/ovirt-hosted-engine-ha/agent.log に表示されます。
    MainThread::INFO::2016-xx-xx 13:30:01,561::upgrade::957::ovirt_hosted_engine_ha.lib.upgrade.StorageServer::(upgrade) Upgrading to current version
    MainThread::INFO::2016-02-17 13:31:58,097::upgrade::987::ovirt_hosted_engine_ha.lib.upgrade.StorageServer::(upgrade) Successfully upgraded
  8. 管理ポータルで同じホストを選択して、アクティブ化 をクリックします。

    注記

    しばらくすると、セルフホストエンジンホストで hosted-engine –vm-status を実行した場合には、画面の出力として、ステータスが non-maintenance のアップグレード済みのホストがスコア 3400 として表示されます。
  9. ステップ 3 から 8 を繰り返し、すべてのセルフホストエンジンホストをアップグレードします。環境で標準のホストがある場合には、これらのホストもバージョン 7 にアップグレードされており、必要な 3.6 のリポジトリーが有効化されていることを確認してください。標準ホストをアップグレードするには、『アップグレードガイド』の「Red Hat Enterprise Linux 6 クラスタから Red Hat Enterprise Linux 7 へのアップグレード」のステップ 3 を参照してください。
  10. hosted-engine –vm-status を実行して、Manager 仮想マシンのステータスを確認します。ヘルスステータスが good の場合は、仮想マシンのステータスは up で、スコアが 3400 となります。その場合は次の手順に進んでください。
    --== Host 1 status ==--
    
    Status up-to-date                  : True
    Hostname                           : hypervisor.example.com
    Host ID                            : 1
    Engine status                      : {"health": "good", "vm": "up", "detail": "up"}
    Score                              : 3400
    stopped                            : False
    Local maintenance                  : False
    crc32                              : 99e57eba
    Host timestamp                     : 248542

手順5.4 クラスターの互換バージョンの更新

  1. 管理ポータルにアクセスします。Default クラスターを選択して 編集 をクリックし、クラスターの編集 ウィンドウを開きます。

    重要

    ホストの一部が non-operational にならないように、すべてのホストが Red Hat Enterprise Virtualization 3.6 に更新されている場合のみ、互換性バージョンを更新してください。
  2. 互換バージョン のドロップダウンメニューを使用して 3.6 を選択します。OK をクリックして変更を保存し、ウィンドウを閉じます。
ホストエンジンのストレージドメイン以外の既存のストレージドメインは、アップグレード後も利用できます。環境内で他のデータストレージドメインが有効化されていない場合には、追加してください。有効化されている既存のデータストレージドメインがある場合にのみ、ホストエンジンのストレージドメインに対して自動インポートプロセスが呼び出されます。ホストエンジンのストレージドメインが正常にインポートされると、以下のログメッセージが /var/log/ovirt-engine/engine.log に表示されます。
2016-xx-xx 23:10:30,728 INFO  [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (org.ovirt.thread.pool-6-thread-43) [36bc3d70] Correlation ID: xxxx, Call Stack: null, Custom Event ID: -1, Message: Hosted Engine storage domain imported successfully
2016-xx-xx 23:10:34,857 INFO  [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (org.ovirt.thread.pool-6-thread-47) [] Correlation ID: null, Call Stack: null, Custom Event ID: -1, Message: Hosted Engine VM was imported successfully
約 1 時間後に、Manager により、ホストエンジンのストレージドメインに OVF_STORE が作成され、以下のログメッセージが /var/log/ovirt-engine/engine.log に表示されます。
2016-xx-xx 00:22:41,598 INFO  [org.ovirt.engine.core.vdsbroker.irsbroker.CreateImageVDSCommand] (DefaultQuartzScheduler_Worker-19) [355787ea] START, CreateImageVDSCommand( CreateImageVDSCommandParameters:{runAsync='true', storagePoolId='00000002-0002-0002-0002-000000000068', ignoreFailoverLimit='false', storageDomainId='91d59062-f823-40b4-a27c-f58142b6423a', imageGroupId='4a7effab-e9d0-48e1-8111-cb3a173f15f7', imageSizeInBytes='134217728', volumeFormat='RAW', newImageId='bf2719c2-63f2-48a2-8245-475ef48255f4', newImageDescription='{"DiskAlias":"OVF_STORE","DiskDescription":"OVF_STORE"}', imageInitialSizeInBytes='0'}), log id: 13368b09
2016-xx-xx 00:23:13,006 INFO  [org.ovirt.engine.core.vdsbroker.irsbroker.SetVolumeDescriptionVDSCommand] (org.ovirt.thread.pool-6-thread-15) [1fe540ae] ++ description={"Updated":true,"Disk Description":"OVF_STORE","Storage Domains":[{"uuid":"91d59062-f823-40b4-a27c-f58142b6423a"}],"Last Updated":"xxx IST 2016","Size":20480}
OVF_STORE の作成前には、セルフホストエンジンホスト上の /var/log/ovirt-hosted-engine-ha/agent.log にエラーが表示されます。
MainThread::ERROR::2016-02-18 00:23:06,076::config::234::ovirt_hosted_engine_ha.agent.hosted_engine.HostedEngine.config::(refresh_local_conf_file) Unable to get vm.conf from OVF_STORE, falling back to initial vm.conf
OVF_STORE が作成されると、以下のログメッセージが /var/log/ovirt-hosted-engine-ha/agent.log に表示されます。
MainThread::INFO::2016-02-18 00:23:16,588::ovf_store::110::ovirt_hosted_engine_ha.lib.ovf.ovf_store.OVFStore::(getEngineVMOVF) Extracting Engine VM OVF from the OVF_STORE