第16章 ハイパーバイザーおよび仮想マシンの登録
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 ガイドを参照してください。
16.1. ホストの物理マシンに virt-who をインストールする
KVM ハイパーバイザーの登録
ホスト物理マシンの root ユーザーで、ターミナルで subscription-manager register [options] コマンドを実行して、KVM Hypervisor を登録します。# subscription-manager register --help メニューを使用すると、より多くのオプションを使用できます。ユーザー名とパスワードを使用している場合は、サブスクリプションマネージャーが認識する認証情報を使用します。初めてサブスクライブする際に、ユーザーアカウントがない場合は、カスタマーサポートにご連絡ください。たとえば、仮想マシンを 'admin' として登録 (パスワードは 'secret') するには、次のコマンドを送信します。[root@rhel-server ~]# subscription-manager register --username=admin --password=secret --auto-attach --type=hypervisor
virt-who パッケージをインストールします。
ホストの物理マシンの root として以下のコマンドを実行して、virt-who パッケージをインストールします。[root@rhel-server ~]# yum install virt-who
virt-who 設定ファイルの作成
/etc/virt-who.d/
ディレクトリーに設定ファイルを追加します。ファイル名は何であるかは重要ではありませんが、意味のある名前を指定する必要があります。ファイルは/etc/virt-who.d/
ディレクトリーに置く必要があります。このファイル内に以下のスニペットを追加し、ファイルを閉じる前に必ず保存してください。[libvirt] type=libvirt
virt-who サービスを再起動します。
ホストの物理マシンの root として以下のコマンドを実行して、virt-who サービスを起動します。[root@virt-who ~]# service virt-who start [root@virt-who ~]# chkconfig virt-who on
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}]
手順16.1 カスタマーポータルでのサブスクリプションの管理
ハイパーバイザーのサブスクライブ
仮想マシンはハイパーバイザーと同じサブスクリプションのメリットを享受するため、ハイパーバイザーに有効なサブスクリプションがあり、仮想マシンがサブスクリプションを使用できることが重要です。カスタマーポータルにログインします。
Red Hat カスタマーポータル https://access.redhat.com/ にログインし、ページ上部の ボタンをクリックします。Systems リンクをクリックします。
Subscriber Inventory セクションで(ページの下部に移動する)、Systems リンクをクリックします。ハイパーバイザーを選択します。
Systems ページには、サブスクライブしているすべてのシステムの表があります。ハイパーバイザーの名前をクリックします(例:localhost.localdomain)。表示された詳細ページで Attach a subscription をクリックし、一覧表示されたすべてのサブスクリプションを選択します。 をクリックします。これにより、ホストの物理サブスクリプションがハイパーバイザーに割り当てられ、ゲストがサブスクリプションを利用できるようになります。
ゲスト仮想マシンのサブスクライブ - 初めての使用
この手順は、新しいサブスクリプションを持っていて、これまでゲスト仮想マシンをサブスクライブしたことがない人を対象としています。仮想マシンを追加する場合は、この手順をスキップします。virt-who サービスを実行しているマシンで、ハイパーバイザープロファイルに割り当てられたサブスクリプションを使用するには、ターミナルで root としてゲスト仮想マシンで以下のコマンドを実行し、自動サブスクライブします。[root@virt-who ~]# subscription-manager attach --auto
追加のゲスト仮想マシンのサブスクライブ
を初めてサブスクライブする場合は、この手順を省略します。仮想マシンを追加する場合は、このコマンドを実行しても、必ずしも同じサブスクリプションをゲスト仮想マシンに再アタッチするわけではないことに注意してください。これは、すべてのサブスクリプションを削除してから自動割り当てを有効にして、特定のゲスト仮想マシンに必要なものを解決できるようにすると、以前とは異なるサブスクリプションが使用される可能性があるためです。これはシステムには影響を及ぼさない可能性がありますが、注意してください。以下で説明されていない手動の接続手順を使用して仮想マシンを接続した場合は、自動接続が機能しないため、これらの仮想マシンを手動で再接続する必要があります。ターミナルの root で以下のコマンドを使用して、最初に古いゲストのサブスクリプションを削除してから、自動アタッチを使用してすべてのゲストにサブスクリプションを割り当てます。ゲスト仮想マシンで次のコマンドを実行します。[root@virt-who ~]# subscription-manager remove --all [root@virt-who ~]# subscription-manager attach --auto
サブスクリプションが割り当てられていることを確認する
ゲスト仮想マシンのターミナルで root として以下のコマンドを実行して、サブスクリプションがハイパーバイザーに割り当てられていることを確認します。[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 「サブスクリプションステータスエラーが表示された場合の対応」.
追加のゲストを登録
ハイパーバイザーに新しいゲスト仮想マシンをインストールする場合は、ゲスト仮想マシンを登録し、ハイパーバイザーに割り当てられたサブスクリプションを使用する必要があります。ターミナルで以下のコマンドを実行して、ゲスト仮想マシンの root として実行します。[root@server1 ~]# subscription-manager register [root@server1 ~]# subscription-manager attach --auto [root@server1 ~]# subscription-manager list --consumed