Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

6.3. セルフホストエンジンの Red Hat Virtualization 4.1 から 4.2 へのアップグレード

セルフホストエンジン環境のバージョンを 4.1 から 4.2 にアップグレードするステップは、以下のとおりです。

6.3.1. グローバルメンテナンスモードへの切り替え

Manager 用仮想マシンで何らかのセットアップ/アップグレードタスクを実施する前に、セルフホストエンジン環境をグローバルメンテナンスモードに切り替える必要があります。

手順

  1. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードに切り替えます。

    # hosted-engine --set-maintenance --mode=global
  2. 次の手順に進む前に、環境がメンテナンスモードにあることを確認します。

    # hosted-engine --vm-status

6.3.2. Red Hat Virtualization Manager の更新

Red Hat Virtualization Manager の更新はコンテンツ配信ネットワーク (CDN) 経由でリリースされます。

手順

  1. Red Hat Virtualization Manager マシンで、更新パッケージが利用可能かどうかを確認します。

    # engine-upgrade-check
  2. setup のパッケージを更新します。

    # yum update ovirt\*setup\*
  3. Red Hat Virtualization Manager を更新します。engine-setup スクリプトにより、設定に関する質問への回答が求められます。その後、ovirt-engine サービスの停止、更新パッケージのダウンロード/インストール、データベースのバックアップ/更新、インストール後設定の実施を経てから、ovirt-engine サービスが起動します。

    # engine-setup
    注記

    engine-setup スクリプトは Red Hat Virtualization Manager のインストールプロセス中にも使用され、指定した設定値が保存されます。更新時には、設定のプレビューの際に保存された値が表示されますが、インストール後の設定変更に engine-config を使用している場合には、表示される値が最新のものではない可能性があります。たとえば、インストール後に engine-config を使用して SANWipeAfterDeletetrue に変更している場合、engine-setup による設定プレビューでは「Default SAN wipe after delete: False」と出力されますが、変更した値が engine-setup により上書きされるわけではありません。

    重要

    更新プロセスには時間がかかる場合があるため、更新プロセスが完了するまでの時間を計算に入れて、一旦更新を開始したらプロセスを停止しないようにしてください。

  4. Manager にインストールされているベースオペレーティングシステムと、オプションパッケージを更新します。

    # yum update
    重要

    いずれかのカーネルパッケージが更新された場合には、ホストを再起動して更新を完了してください。

6.3.3. Manager の 4.1 から 4.2 へのアップグレード

Red Hat Virtualization Manager を 4.1 から 4.2 にアップグレードします。

重要

アップグレードに失敗すると、engine-setup コマンドは Red Hat Virtualization Manager のインストール設定を以前の状態にロールバックするように試みます。そのため、アップグレードを完了するまで、前のバージョンのリポジトリーを削除するべきではありません。アップグレードに失敗した場合は、インストールの復元方法を詳しく説明した手順が表示されます。

手順

  1. Red Hat Virtualization Manager 4.2、Red Hat Virtualization Tools、および Ansible Engine のリポジトリーを有効にします。

    # subscription-manager repos --enable=rhel-7-server-rhv-4.2-manager-rpms
    # subscription-manager repos --enable=rhel-7-server-rhv-4-manager-tools-rpms
    # subscription-manager repos --enable=rhel-7-server-ansible-2-rpms
    重要

    Red Hat Virtualization Manager 4.2 では、Red Hat JBoss Enterprise Application Platform (JBoss EAP) 7.1 を Manager マシンにインストールする必要があります。jb-eap-7-for-rhel-7-server-rpms リポジトリーが有効であること、および jb-eap-7.0-for-rhel-7-server-rpms リポジトリーを無効であることを確認してください。どちらのリポジトリーが有効であるかを確認するには、subscription-manager repos --list を実行します。

  2. setup のパッケージを更新します。

    # yum update ovirt\*setup\*
  3. engine-setup コマンドを実行し、プロンプトに従って Red Hat Virtualization Manager をアップグレードします。

    # engine-setup
  4. Red Hat Virtualization Manager 4.1 のリポジトリーを削除または無効にして、このシステムで 4.1 のパッケージが使用されないようにします。

    # subscription-manager repos --disable=rhel-7-server-rhv-4.1-rpms
    # subscription-manager repos --disable=rhel-7-server-rhv-4.1-manager-rpms
    # subscription-manager repos --disable=rhel-7-server-rhv-4-tools-rpms
  5. ベースオペレーティングシステムを更新します。

    # yum update
    重要

    いずれかのカーネルパッケージが更新された場合には、システムを再起動して更新を完了してください。

6.3.4. グローバルメンテナンスモードの終了

手順

  1. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードを終了します。

    # hosted-engine --set-maintenance --mode=none
  2. 環境が稼働していることを確認します。

    # hosted-engine --vm-status

次に、セルフホストエンジンノードおよびすべての標準ホストの更新を行います。手順は、両方のホストタイプで同じです。

6.3.5. ホストの更新

ホストのアップグレードマネージャーを使用して、Red Hat Virtualization Manager から直接個別のホストを更新します。

注記

アップグレードマネージャーが確認するのは、ステータスが Up または Non-operational のホストだけです。ステータスが Maintenance のホストは確認されません。

重要

RHVH の更新時には、/etc および /var ディレクトリー内の変更データしか維持されません。他のパスに含まれる変更データは更新時に上書きされます。

前提条件

  • クラスターレベルで移行が有効化されている場合には、仮想マシンはそのクラスター内の別のホストに自動的に移行されるので、ホストの更新は、ホストの使用率が比較的に低い時間帯に実行することを推奨します。
  • 更新の前に、クラスターに複数のホストが含まれていることを確認します。全ホストを同時に更新しないようにしてください。Storage Pool Manager (SPM) のタスクを実行するために、ホストが 1 台使用可能である必要があります。
  • ホストが属するクラスターに、ホストがメンテナンスを実行するのに十分なメモリーが確保されていることを確認してください。クラスターに十分なメモリーがない場合には、仮想マシンの移行操作がハングして失敗してしまいます。ホストを更新する前に一部またはすべての仮想マシンをシャットダウンしておくと、この操作のメモリー使用量を低減することができます。
  • vGPU を使用している仮想マシンを別のホストに移行することはできません。ホストを更新する前に、vGPU がインストールされた仮想マシンを停止する必要があります。

手順

  1. 適切なリポジトリーを有効にします。yum repolist を実行して、現在有効なリポジトリーを確認することができます。

    • Red Hat Virtualization Host の場合:

      # subscription-manager repos --enable=rhel-7-server-rhvh-4-rpms
    • Red Hat Enterprise Linux ホストの場合:

      # subscription-manager repos --enable=rhel-7-server-rpms
      # subscription-manager repos --enable=rhel-7-server-rhv-4-mgmt-agent-rpms
      # subscription-manager repos --enable=rhel-7-server-ansible-2-rpms
  2. 管理ポータルで コンピュートホスト をクリックし、更新するホストを選択します。
  3. インストールアップグレードを確認 をクリックし、OK をクリックします。

    イベントおよびアラートの通知 アイコン ( EventsIcon ) をクリックし、イベント セクションを展開して結果を確認します。

  4. 更新が利用可能であれば、インストールアップグレード をクリックします。
  5. OK をクリックしてホストを更新します。実行中の仮想マシンは、その移行ポリシーに従って移行されます。いずれかの仮想マシンの移行が無効になっている場合は、シャットダウンするよう求められます。

    コンピュートホスト にホストの情報が更新され、ステータスが以下の順序で変わります。

    • Maintenance
    • Installing
    • Reboot
    • Up

      このホストから別のホストに移行していた仮想マシンがあれば、この時点で元に戻すことができます。

      注記

      更新が失敗すると、ホストのステータスは Install Failed に変わります。Install Failed の状態から インストールアップグレード を再度クリックすることができます。

Red Hat Virtualization 環境内のホストごとに同じ手順を繰り返してください。

6.3.6. クラスターの互換バージョンの変更

Red Hat Virtualization のクラスターには互換バージョンがあります。クラスターの互換バージョンは、そのクラスター内の全ホストがサポートする Red Hat Virtualization の機能を示します。クラスターの互換バージョンは、そのクラスター内で最も機能性の低いホストのバージョンに応じて設定されます。

重要

クラスターの互換バージョンを変更するには、まず、クラスター内の全ホストを更新して、必要な互換性レベルをサポートするレベルにする必要があります。更新が利用可能であることを示すアイコンがホストの横にあるかどうかを確認します。

手順

  1. コンピュートクラスター をクリックし、変更するクラスターを選択します。
  2. 編集 をクリックします。
  3. 互換バージョン を必要な値に変更します。
  4. OK をクリックして、クラスターの互換バージョンを変更 の確認ウィンドウを開きます。
  5. OK をクリックして確定します。
重要

一部の仮想マシンおよびテンプレートが不適切に設定されていることを警告するエラーメッセージが表示される場合があります。このエラーを修正するには、それぞれの仮想マシンを手動で編集します。仮想マシンの編集 ウィンドウには、修正すべき項目を確認することのできる新たな検証および警告が表示されます。問題が自動的に修正され、仮想マシンの設定を再度保存するだけで十分な場合もあります。それぞれの仮想マシンを編集したら、クラスターの互換バージョンを変更することができます。

クラスターの互換バージョンを変更したら、実行中またはサスペンド中のすべての仮想マシンについてクラスターの互換バージョンを変更する必要があります。そのためには、ゲストオペレーティングシステム内ではなく、Manager 内から、または REST API を使用して仮想マシンを再起動します。再起動するまで、仮想マシンは以前のクラスターの互換性レベルで動作を続けます。再起動が必要な仮想マシンには、変更が保留されていることを示すアイコン ( pendingchanges ) が付きます。プレビュー状態にある仮想マシンスナップショットについては、クラスター互換バージョンを変更することができません。まずコミットするか、プレビューを取り消す必要があります。

セルフホストエンジンの仮想マシンを再起動する必要はありません。

データセンター内の全クラスターの互換バージョンの更新が完了したら、次にデータセンター自体の互換バージョンも変更することができます。

6.3.7. データセンターの互換バージョンの変更

Red Hat Virtualization データセンターには、互換バージョンがあります。互換バージョンとは、データセンターと互換性のある Red Hat Virtualization のバージョンを指します。データセンター内のクラスターはすべて、指定の互換性レベルをサポートします。

重要

データセンターの互換バージョンを変更するには、まず、データセンター内の全クラスターを更新して、必要な互換性レベルをサポートするレベルにしておく必要があります。

手順

  1. コンピュートデータセンター をクリックし、変更するデータセンターを選択します。
  2. 編集 をクリックします。
  3. 互換バージョン を必要な値に変更します。
  4. OK をクリックして、データセンターの互換バージョンを変更 の確認ウィンドウを開きます。
  5. OK をクリックして確定します。

6.3.8. Red Hat Virtualization 4.1 にインストールされた OVN プロバイダーの更新

Red Hat Virtualization 4.1 に Open Virtual Network (OVN) プロバイダーをインストールしている場合は、Red Hat Virtualization 4.2 用にその設定を手動で編集する必要があります。

手順

  1. 管理プロバイダー をクリックし、OVN プロバイダーを選択します。
  2. 編集 をクリックします。
  3. ネットワークプラグイン のテキストフィールドをクリックし、ドロップダウンリストから OVN 向けの oVirt ネットワークプロバイダー を選択します。
  4. OK をクリックします。

6.3.9. SHA-1 証明書の SHA-256 証明書への置き換え

Red Hat Virtualization 4.2 では SHA-256 署名が使用され、SHA-1 よりセキュアに SSL 証明書に署名することができます。新たにインストールした 4.2 システムでは、Red Hat Virtualization の公開鍵インフラストラクチャー (PKI) が SHA-256 署名を使用できるようにするのに、特別な手順は必要ありません。ただし、アップグレードしたシステムでは、以下のオプションのどちらかを実施することを推奨します。

ブラウザーでの警告メッセージ表示の防止
  1. Manager マシンに root ユーザーとしてログインします。
  2. /etc/pki/ovirt-engine/openssl.confdefault_md = sha256 行が含まれているかどうかを確認します。

    # cat /etc/pki/ovirt-engine/openssl.conf

    まだ default_md = sha1 が含まれていたら、既存の設定のバックアップを作成してデフォルトを sha256 に変更します。

    # cp -p /etc/pki/ovirt-engine/openssl.conf /etc/pki/ovirt-engine/openssl.conf."$(date +"%Y%m%d%H%M%S")"
    # sed -i 's/^default_md = sha1/default_md = sha256/' /etc/pki/ovirt-engine/openssl.conf
  3. 署名し直す必要のある証明書を定義します。

    # names="apache"
  4. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードに切り替えます。

    # hosted-engine --set-maintenance --mode=global
  5. Manager で Apache 証明書を署名し直します。

    for name in $names; do
        subject="$(
            openssl \
                x509 \
                -in /etc/pki/ovirt-engine/certs/"${name}".cer \
                -noout \
                -subject \
            | sed \
                's;subject= \(.*\);\1;' \
        )"
       /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \
            --name="${name}" \
            --password=mypass \
            --subject="${subject}" \
            --keep-key
    done
  6. httpd サービスを再起動します。

    # systemctl restart httpd
  7. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードを終了します。

    # hosted-engine --set-maintenance --mode=none
  8. 管理ポータルに接続して、警告が表示されなくなったことを確認します。
  9. 以前に CA または https 証明書をブラウザーにインポートしている場合は、その証明書を探してブラウザーから削除し、新しい CA 証明書をインポートし直します。ブラウザーから提供される手順に従って、認証局の証明書をインストールしてください。認証局の証明書を取得するには、http://your-manager-fqdn/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA にアクセスします (your-manager-fqdn は、完全修飾ドメイン名 (FQDN) に置き換えてください)。
すべての署名済み証明書の SHA-256 への置き換え
  1. Manager マシンに root ユーザーとしてログインします。
  2. /etc/pki/ovirt-engine/openssl.confdefault_md = sha256 行が含まれているかどうかを確認します。

    # cat /etc/pki/ovirt-engine/openssl.conf

    まだ default_md = sha1 が含まれていたら、既存の設定のバックアップを作成してデフォルトを sha256 に変更します。

    # cp -p /etc/pki/ovirt-engine/openssl.conf /etc/pki/ovirt-engine/openssl.conf."$(date +"%Y%m%d%H%M%S")"
    # sed -i 's/^default_md = sha1/default_md = sha256/' /etc/pki/ovirt-engine/openssl.conf
  3. CA 証明書のバックアップを作成して ca.pem.new に新しい証明書を作成し、CA 証明書を署名し直します。

    # cp -p /etc/pki/ovirt-engine/private/ca.pem /etc/pki/ovirt-engine/private/ca.pem."$(date +"%Y%m%d%H%M%S")"
    # openssl x509 -signkey /etc/pki/ovirt-engine/private/ca.pem -in /etc/pki/ovirt-engine/ca.pem -out /etc/pki/ovirt-engine/ca.pem.new -days 3650 -sha256
  4. 既存の証明書を新しい証明書に置き換えます。

    # mv /etc/pki/ovirt-engine/ca.pem.new /etc/pki/ovirt-engine/ca.pem
  5. 署名し直す必要のある証明書を定義します。

    # names="engine apache websocket-proxy jboss imageio-proxy"

    アップグレード後に Red Hat Virtualization Manager SSL 証明書を置き換えている場合は、上記のコマンドの代わりに以下のコマンドを実行します。

    # names="engine websocket-proxy jboss imageio-proxy"

    詳細については、『管理ガイド』「Red Hat Virtualization Manager の SSL/TLS 証明書の変更」を参照してください。

  6. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードに切り替えます。

    # hosted-engine --set-maintenance --mode=global
  7. Manager で証明書を署名し直します。

    for name in $names; do
       subject="$(
            openssl \
                x509 \
                -in /etc/pki/ovirt-engine/certs/"${name}".cer \
                -noout \
                -subject \
            | sed \
                's;subject= \(.*\);\1;' \
            )"
         /usr/share/ovirt-engine/bin/pki-enroll-pkcs12.sh \
                --name="${name}" \
                --password=mypass \
                --subject="${subject}" \
                --keep-key
    done
  8. 以下のサービスを再起動します。

    # systemctl restart httpd
    # systemctl restart ovirt-engine
    # systemctl restart ovirt-websocket-proxy
    # systemctl restart ovirt-imageio-proxy
  9. セルフホストエンジンノードのいずれかにログインして、グローバルメンテナンスモードを終了します。

    # hosted-engine --set-maintenance --mode=none
  10. 管理ポータルに接続して、警告が表示されなくなったことを確認します。
  11. 以前に CA または https 証明書をブラウザーにインポートしている場合は、その証明書を探してブラウザーから削除し、新しい CA 証明書をインポートし直します。ブラウザーから提供される手順に従って、認証局の証明書をインストールしてください。認証局の証明書を取得するには、http://your-manager-fqdn/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA にアクセスします (your-manager-fqdn は、完全修飾ドメイン名 (FQDN) に置き換えてください)。
  12. ホストで証明書を登録します。それぞれのホストについて以下の手順を繰り返します。

    1. 管理ポータルで コンピュートホスト をクリックします。
    2. ホストを選択し、管理メンテナンス をクリックします。
    3. ホストがメンテナンスモードに変わったら、インストール証明書を登録 をクリックします。
    4. 管理アクティブ化 をクリックします。