Show Table of Contents
第7章 仮想化エージェント (virt-who)
virt-who は、仮想 ゲスト ID を Satellite にレポートするためのエージェントです。virt-who にはサードパーティーのハイパーバイザーをスキャンし、そのハイパーバイザーを Satellite に登録し、ハイパーバイザーに関連付けられたゲスト UUID 一覧をアップロードする機能があります。
7.1. 仮想化エージェントの設定
仮想化エージェントは、Satellite サーバーまたは別のホストにインストールすることができます。別のホストを使用する場合は、virt-who のインストールのために以下の要件を満たす必要があります。
- Red Hat Enterprise Linux 6 またはそれ以降。
- TCP ポート 443 で Red Hat Satellite とハイパーバイザーの両方にアクセスできること。さらに使用中の仮想環境でユーザーを作成し、仮想化エージェントがハイパーバイザーとゲストについての情報を読み取れるようにします。これを読み取り専用パーミッションのあるユーザーにすることができます。
- システムが Red Hat サブスクリプションマネージャーまたは Red Hat Satellite に登録され、かつ Satellite Tools チャンネルにサブスクライブされている必要があります。
Red Hat Satellite で virt-who を設定するには、以下の手順を実行します。
- Red Hat Satellite に root としてログインします。
- virt-who パッケージをインストールします。
# yum install virt-who
/etc/sysconfig/virt-whoファイルで以下のエントリーを編集します。# Start virt-who on background, perform doublefork and monitor for virtual guest # events (if possible). It is NOT recommended to turn off this option for # starting virt-who as service. VIRTWHO_BACKGROUND=1 # Enable debugging output. # optional VIRTWHO_DEBUG=1 # virt-who subscription manager backend, enable ony one option from following 2: # Report to Subscription Asset Manager (SAM) VIRTWHO_SAM=0 # Report to Satellite VIRTWHO_SATELLITE=1
使用中の仮想環境用に仮想化オプションを編集します。たとえば、Red Hat Enterprise Virtualization の場合は以下のようになります。# Register guests using RHEV-M VIRTWHO_RHEVM=1 # Options for RHEV-M mode VIRTWHO_RHEVM_ENV=not-used VIRTWHO_RHEVM_SERVER=server_hostname_or_IP VIRTWHO_RHEVM_USERNAME=server_login VIRTWHO_RHEVM_PASSWORD=server_password
VMware ESX の場合は以下のようになります。# Register ESX machines using vCenter VIRTWHO_ESX=1 # Option for ESX mode VIRTWHO_ESX_ENV=not-used VIRTWHO_ESX_OWNER=organization_id VIRTWHO_ESX_SERVER=server_hostname_or_IP VIRTWHO_ESX_USERNAME=server_login VIRTWHO_ESX_PASSWORD=server_password
注記
ユーザーが仮想環境にアクセスするには、読み取り専用パーミッションのみが必要になります。セキュリティー上の理由から、読み取り専用パーミッションのみの新規ユーザーを仮想環境で作成してください。最後に Satellite オプションを編集し、お使いのサーバーの詳細を入力します。# Option for Satellite backend VIRTWHO_SATELLITE_SERVER=satellite_hostname VIRTWHO_SATELLITE_USERNAME=username VIRTWHO_SATELLITE_PASSWORD=password
- virt-who サービスを起動します。
service virt-who start
仮想エージェントを起動するとホスト/ゲストの UUID 情報が収集され、Satellite に送信されます。また、/var/lib/virt-who/hypervisor-systemid-[UUID]ファイルをスキャンして、ハイパーバイザーが Red Hat Satellite に登録されているかどうかを確認します。登録されている場合は、Red Hat Satellite 上の既存のハイパーバイザーシステム情報が更新されます。Satellite 上に存在しない場合は、新規のハイパーバイザーが登録されます。
注記
ハイパーバイザーが削除されると、対応するファイルを
/var/lib/virt-who/hypervisor-systemid-UUID から削除し、ハイパーバイザーを Satellite の web UI から手動で削除する必要があります。
ご使用の環境に同じタイプの仮想環境が複数含まれている場合は、
/etc/sysconfig/virt-who に単一の設定の詳細を追加するのではなく、複数の設定ファイルを /etc/virt-who.d/ に追加します。以下に例を示します。
[test-esx-1] type=esx server=10.1.1.1 username=admin password=password [test-esx-2] type=esx server=10.1.2.1 username=admin password=password
7.1.1. VMware の設定シナリオ
以下のシナリオでは、VMware 環境で使用する virt-who を設定します。これには、virt-who で使用する読み取り専用パーミッションのユーザーを Active Directory で作成することも含まれます。
Satellite では、ポート 80 と 443 で vCenter へのオープンアクセスを必要とします。以下の手順を実行する前に、Red Hat Satellite サーバーから vCenter へのポート 80 と 443 での接続を許可する例外をファイアウォールで作成します。
まず Active Directory で
virtwho-readonly-user アカウントを作成し、vCenter へのアクセスを提供します。
- ユーザーをドメインに追加する権限を持つユーザーとして、Windows マシン上で Active Directory Users and Computers プログラムを実行します。
virtwho-readonly-userという名前のユーザーを作成します。 - 管理者権限のあるアカウントで vSphere Web Client にログインします。
- → → → に移動します。

図7.1 Single Sign-On Configuration への移動
- タブに移動し、プラス記号 をクリックし、Active Directory の identity source を選択します。これで
virtwho-readonly-userユーザーを含めた Active Directory identity source が追加されます。
図7.2 Identity Source の追加
- → に移動して vCenter を選択し、
virtwho-readonly-userにアクセスを付与します。
図7.3 vCenter への移動
- → に移動して プラス記号 をクリックし、Add Permission ダイアログを開きます。

図7.4 プラス記号をクリック
virtwho-readonly-userを選択します。- Read-only ロールを選択します。
- OK をクリックしてパーミッションを保存します。
- ログアウトして、
virtwho-readonly-userを vCenter でテストします。virtwho-readonly-userがアクセス可能なリソースがインベントリーに表示されることを確認してください。
次に virt-who をインストールして、vCenter と通信するように設定します。
- Satellite サーバーにログインし、virt-who をインストールします。
# yum install virt-who
/etc/sysconfig/virt-whoファイルを編集し、以下のオプションを使用します。# virt-who options VIRTWHO_BACKGROUND=1 VIRTWHO_DEBUG=1 # Enable virt-who with VMware VIRTWHO_ESX=1 # Options for ESX mode VIRTWHO_ESX_ENV=not-used VIRTWHO_ESX_OWNER=[organization_id] VIRTWHO_ESX_SERVER=vcenter.example.com VIRTWHO_ESX_USERNAME=DOMAIN\\virtwho-readonly-user VIRTWHO_ESX_PASSWORD=******* # Report to Satellite VIRTWHO_SAM=0 VIRTWHO_SATELLITE=1
[organization_id] を Satellite サーバー上のターゲット組織の ID に置き換えます。- virt-who サービスを起動して、有効にします。
# service virt-who start # chkconfig virt-who on
virt-who がホストとゲストの UUID を vCenter から収集して、Satellite で使用できるようにします。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.