第10章 ハイパーバイザーおよび仮想マシンの登録
Red Hat Enterprise Linux 6 および 7 では、すべてのゲスト仮想マシンが特定のハイパーバイザーにマッピングされ、すべてのゲストに同じレベルのサブスクリプションサービスが割り当てられるようにする必要があります。これを行うには、インストールされて登録されている各 KVM ハイパーバイザーで、すべてのゲスト仮想マシンを自動的に検出するサブスクリプションエージェントをインストールする必要があります。これにより、ホストにあるマッピングファイルが作成されます。このマッピングファイルにより、すべてのゲスト仮想マシンに次の利点があります。
- 仮想システムに固有のサブスクリプションは簡単に利用でき、関連するすべてのゲスト仮想マシンに適用できます。
- ハイパーバイザーから継承できるすべてのサブスクリプションのメリットは、すぐに利用でき、関連するすべてのゲスト仮想マシンに適用できます。
注記
本章で説明する情報は、Red Hat Enterprise Linux のサブスクリプションのみを対象としています。Red Hat Virtualization サブスクリプションまたは Red Hat Satellite サブスクリプションもある場合は、それらのサブスクリプションで提供される virt-who 情報も参照してください。Red Hat Subscription Management の詳細は、カスタマーポータルの Red Hat Subscription Management ガイドを参照してください。
10.1. ホストの物理マシンに virt-who をインストールする
KVM ハイパーバイザーの登録
ホスト物理マシンの root ユーザーで、ターミナルで subscription-manager register [options] コマンドを実行して、KVM Hypervisor を登録します。# subscription-manager register --help メニューを使用すると、より多くのオプションを使用できます。ユーザーネームおよびパスワードを使用している場合は、Subscription Manager アプリケーションが認識している認証情報を使用します。初めてサブスクライブする際に、ユーザーアカウントがない場合は、カスタマーサポートにご連絡ください。たとえば、仮想マシンを 'admin' として登録 (パスワードは 'secret') するには、次のコマンドを送信します。[root@rhel-server ~]# subscription-manager register --username=admin --password=secret --auto-attach
virt-who パッケージをインストールします。
ホストの物理マシンで次のコマンドを実行して、virt-who パッケージをインストールします。# yum install virt-who
virt-who 設定ファイルの作成
ハイパーバイザーごとに、/etc/virt-who.d/
ディレクトリーに設定ファイルを追加します。ファイルには、少なくとも以下のスニペットが含まれている必要があります。[libvirt] type=libvirt
virt-who の設定の詳細は、「virt-who の設定」 を参照してください。virt-who サービスを再起動します。
ホストの物理マシンで次のコマンドを実行して、virt-who サービスを起動します。# systemctl start virt-who.service # systemctl enable virt-who.service
virt-who サービスがゲスト情報を受信していることを確認する
この時点で、virt-who サービスは、ホストからドメインのリストの収集を開始します。ホストの物理マシンの/var/log/rhsm/rhsm.log
ファイルを確認して、ゲスト仮想マシンのリストがファイルに含まれていることを確認します。例:2015-05-28 12:33:31,424 DEBUG: Libvirt domains found: [{'guestId': '58d59128-cfbb-4f2c-93de-230307db2ce0', 'attributes': {'active': 0, 'virtWhoType': 'libvirt', 'hypervisorType': 'QEMU'}, 'state': 5}]
手順10.1 カスタマーポータルでのサブスクリプションの管理
ハイパーバイザーのサブスクライブ
仮想マシンはハイパーバイザーと同じサブスクリプションのメリットを享受するため、ハイパーバイザーに有効なサブスクリプションがあり、仮想マシンがサブスクリプションを使用できることが重要です。カスタマーポータルへのログイン
Red Hat カスタマーポータルで Red Hat アカウントの認証情報を指定してログインします。Systems リンクをクリックします。
My Subscriptions インターフェイスの Systems セクションに移動します。ハイパーバイザーを選択します。
Systems ページには、サブスクライブしているすべてのシステムの表があります。ハイパーバイザーの名前 (localhost.localdomain
など) を選択します。表示された詳細ページで Attach a subscription をクリックし、リスト表示されたすべてのサブスクリプションを選択します。 をクリックします。これにより、ホストの物理サブスクリプションがハイパーバイザーに割り当てられ、ゲストがサブスクリプションを利用できるようになります。
ゲスト仮想マシンのサブスクライブ - 初めての使用
この手順は、新しいサブスクリプションを持っていて、これまでゲスト仮想マシンをサブスクライブしたことがない人を対象としています。仮想マシンを追加する場合は、この手順をスキップします。virt-who サービスを実行しているマシンで、ハイパーバイザープロファイルに割り当てられたサブスクリプションを使用するには、ゲスト仮想マシンのターミナルで次のコマンドを実行して自動サブスクライブします。[root@virt-who ~]# subscription-manager attach --auto
追加のゲスト仮想マシンのサブスクライブ
初めて仮想マシンをサブスクライブする場合は、この手順を省略してください。仮想マシンを追加する場合、このコマンドを実行しても、必ずしも同じサブスクリプションがゲスト仮想マシンに再接続されるとは限らないことに注意してください。これは、すべてのサブスクリプションを削除してから自動登録を許可して、指定したゲスト仮想マシンに必要なものを解決できるようにすると、以前とは異なるサブスクリプションが使用される可能性があるためです。これはシステムには影響を及ぼさない可能性がありますが、注意してください。以下で説明されていない手動の接続手順を使用して仮想マシンを接続した場合は、自動接続が機能しないため、これらの仮想マシンを手動で再接続する必要があります。次のコマンドを使用して、最初に古いゲストのサブスクリプションを削除してから、自動アタッチを使用してすべてのゲストにサブスクリプションを割り当てます。ゲスト仮想マシンで次のコマンドを実行します。[root@virt-who ~]# subscription-manager remove --all [root@virt-who ~]# subscription-manager attach --auto
サブスクリプションが割り当てられていることを確認する
ゲスト仮想マシンで次のコマンドを実行して、サブスクリプションがハイパーバイザーに割り当てられていることを確認します。[root@virt-who ~]# subscription-manager list --consumed
以下のような出力が表示されます。サブスクリプションの詳細に注意してください。'Subscription is current' と表示されるはずです。[root@virt-who ~]# subscription-manager
list --consumed
+-------------------------------------------+ Consumed Subscriptions +-------------------------------------------+ Subscription Name: Awesome OS with unlimited virtual guests Provides: Awesome OS Server Bits SKU: awesomeos-virt-unlimited Contract: 0 Account: ######### Your account number ##### Serial: ######### Your serial number ###### Pool ID: XYZ123 Provides Management: No Active: True Quantity Used: 1 Service Level: Service Type: Status Details: Subscription is current Subscription Type: Starts: 01/01/2015 Ends: 12/31/2015 System Type: Virtual- ???
- The ID for the subscription to attach to the system is displayed here. You will need this ID if you need to attach the subscription manually.
- ???
- Indicates if your subscription is current. If your subscription is not current, an error message appears. One example is Guest has not been reported on any host and is using a temporary unmapped guest subscription. In this case the guest needs to be subscribed. In other cases, use the information as indicated in 「サブスクリプションステータスエラーが表示された場合の対応」.
追加のゲストを登録
ハイパーバイザーに新しいゲスト仮想マシンをインストールする場合は、ゲスト仮想マシンで次のコマンドを実行して、新しい仮想マシンを登録し、ハイパーバイザーに割り当てたサブスクリプションを使用する必要があります。# subscription-manager register # subscription-manager attach --auto # subscription-manager list --consumed
10.1.1. virt-who の設定
virt-who サービスは、以下のファイルを使用して設定します。
/etc/virt-who.conf
- 接続されているハイパーバイザーで変更を確認する間隔など、一般的な設定情報が含まれます。/etc/virt-who.d/hypervisor_name.conf
- 特定のハイパーバイザーの設定情報が含まれます。
ハイパーバイザー設定ファイルと、
virt-who.conf
に必要なスニペットを生成する Web ベースのウィザードが提供されます。ウィザードを実行する場合は、カスタマーポータルの Red Hat Virtualization Agent (virt-who) Configuration Helper を参照します。
ウィザードの 2 ページ目で、次のオプションを選択します。
Subscription Asset Manager
libvirt
ウィザードに従って設定を完了します。設定が正しく行われると、virt-who は選択したサブスクリプションを、指定されたハイパーバイザーにある既存および今後のゲストに自動的に提供します。
ハイパーバイザー設定ファイルの詳細は、virt-who-config の man ページを参照してください。