第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
# yum install virt-whoCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/sysconfig/virt-whoファイルで以下のエントリーを編集します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用中の仮想環境用に仮想化オプションを編集します。たとえば、Red Hat Enterprise Virtualization の場合は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow VMware ESX の場合は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記
ユーザーが仮想環境にアクセスするには、読み取り専用パーミッションのみが必要になります。セキュリティー上の理由から、読み取り専用パーミッションのみの新規ユーザーを仮想環境で作成してください。最後に Satellite オプションを編集し、お使いのサーバーの詳細を入力します。Option for Satellite backend
# Option for Satellite backend VIRTWHO_SATELLITE_SERVER=satellite_hostname VIRTWHO_SATELLITE_USERNAME=username VIRTWHO_SATELLITE_PASSWORD=passwordCopy to Clipboard Copied! Toggle word wrap Toggle overflow - virt-who サービスを起動します。
service virt-who start
service virt-who startCopy to Clipboard Copied! Toggle word wrap Toggle overflow 仮想エージェントを起動するとホスト/ゲストの 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/ に追加します。以下に例を示します。
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
# yum install virt-whoCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/sysconfig/virt-whoファイルを編集し、以下のオプションを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow [organization_id] を Satellite サーバー上のターゲット組織の ID に置き換えます。- virt-who サービスを起動して、有効にします。
service virt-who start chkconfig virt-who on
# service virt-who start # chkconfig virt-who onCopy to Clipboard Copied! Toggle word wrap Toggle overflow
virt-who がホストとゲストの UUID を vCenter から収集して、Satellite で使用できるようにします。