第 10 章 注册 Hypervisor 和虚拟机


Red Hat Enterprise Linux 6 和 7 要求每个客户机虚拟机都映射到特定的管理程序,以确保每个客户机都分配了相同的订阅服务级别。要执行此操作,您需要安装一个订阅代理,该代理会在安装和注册的每个 KVM 管理程序上自动检测所有客户机虚拟机(VM),进而创建一个位于主机上的映射文件。这个映射文件可确保所有客户机虚拟机都收到以下好处:
  • 特定于虚拟系统的订阅可以随时可用,并可应用于所有关联的虚拟机虚拟机。
  • 所有可从管理程序继承的订阅优势均可随时可用,并可应用于所有相关的客户机虚拟机。
注意
本章提供的信息仅特定于 Red Hat Enterprise Linux 订阅。如果您有红帽虚拟化订阅或 Red Hat Satellite 订阅,则您还应查阅这些订阅提供的 virt-who 信息。如需红帽订阅管理的更多信息,请参阅《 红帽订阅管理 指南》,网址为:

10.1. 在主机物理机器上安装 virt-who

  1. 注册 KVM 管理程序

    在终端中以 root 用户身份在主机物理计算机上运行 subscription-manager register [options] 命令注册 KVM 管理程序。可使用 # subscription-manager register --help 菜单获得更多选项。如果您在使用用户名和密码时,请使用 Subscription Manager 应用程序已知的凭证。如果这是您首次订阅,且您没有用户帐户,请联络客户支持。例如,要将虚拟机注册为 'admin' 使用 'secret' 作为密码,您可以发送以下命令:
    [root@rhel-server ~]# subscription-manager register --username=admin --password=secret --auto-attach
  2. 安装 virt-who 软件包

    在主机物理机器上运行以下命令来安装 virt-who 软件包:
    # yum install virt-who
  3. 创建 virt-who 配置文件

    对于每个管理程序,在 /etc/virt-who.d/ 目录中添加一个配置文件。文件必须至少包含以下片断:
    [libvirt]
    type=libvirt
    
    有关配置 virt-who 的详情请参考 第 10.1.1 节 “配置 virt-who
  4. 启动 virt-who 服务

    在主机物理机器上运行以下命令启动 virt-who 服务:
    # systemctl start virt-who.service
    # systemctl enable virt-who.service
  5. 确认 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. 在客户门户网站中管理订阅

  1. 订阅虚拟机监控程序

    由于虚拟机将获得与虚拟机监控程序相同的订阅好处,因此管理程序具有有效的订阅,且订阅可供虚拟机使用。
    1. 登录到客户门户网站

      在红帽客户门户网站中提供 您的红帽帐户凭证 以进行登录。
    2. 点系统链接

      前往 My Subscriptions 接口的 Systems 部分。
    3. 选择虚拟机监控程序

      在系统页面中,存在所有订阅的系统表。单击虚拟机监控程序的名称(如 localhost.localdomain)。在打开的详情页面中,点 Attach a subscription 并选择所有列出的订阅。单击 Attach Selected。这会将主机的物理订阅附加到管理程序,以便 guest 可从订阅中受益。
  2. 订阅客户机虚拟机 - 首次使用

    此步骤适用于拥有新订阅且之前从未订阅客户机虚拟机的用户。如果您要添加虚拟机,请跳过此步骤。要在运行 virt-who 服务的机器上使用分配给管理程序配置文件的订阅,请通过在客户机虚拟机上的终端运行以下命令自动订阅。
    [root@virt-who ~]# subscription-manager attach --auto
  3. 订阅额外的客户机虚拟机

    如果您首次订阅了虚拟机,请跳过此步骤。如果您要添加额外的虚拟机,请注意,运行此命令不一定会在客户机虚拟机中重新附加相同的订阅。这是因为,删除所有订阅后允许自动附加来解决给定客户机虚拟机需要什么操作,可能会导致与之前使用的不同订阅。这对您的系统可能没有任何影响,但应该了解它。如果您使用手动附加程序附加虚拟机(如下所述),则需要手动附加这些虚拟机,因为自动附加将无法正常工作。使用以下命令首先删除旧客户机的订阅,然后使用自动附加订阅将订阅附加到所有客户机。在客户机虚拟机中运行这些命令。
    [root@virt-who ~]# subscription-manager remove --all
    [root@virt-who ~]# subscription-manager attach --auto
  4. 确认订阅已附加

    通过在客户机虚拟机中运行以下命令来确认订阅已附加到管理程序中:
    [root@virt-who ~]# subscription-manager list --consumed
    将显示类似于如下内容的输出。请注意订阅详情。它应该说"订阅为"当前"。
    [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 第 10.5.2 节 “我有订阅状态错误,我有什么作用?”.
  5. 注册其他客户端

    当您在 hypervisor 中安装新客户机虚拟机时,您必须注册新虚拟机并使用附加到虚拟机监控程序的订阅,方法是在客户机虚拟机中运行以下命令:
    # 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 - 包含特定管理程序的配置信息。
提供了一个基于 web 的向导来生成虚拟机监控程序配置文件和 virt-who.conf 所需的代码片段。要运行向导,请浏览客户门户上的 Red Hat Virtualization Agent(virt-who)Configuration Helper
在向导的第二页面中,选择以下选项:
  • 您的 virt-who 报告在哪里?订阅资产管理器
  • 管理程序类型:libvirt
按照向导完成配置。如果正确执行配置,则 virt-who 将自动为指定管理程序上的现有和将来的客户机提供所选订阅。
有关虚拟机监控程序配置文件的详情,请查看 virt-who-config man page。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.