第 4 章 为 Red Hat Virtualization 安装主机
Red Hat Virtualization 支持两种类型的主机: Red Hat Virtualization Hosts(RHVH) 和 Red Hat Enterprise Linux 主机。根据您的环境,您可能只使用一种类型,或两者都使用。迁移和高可用性等功能至少需要两个主机。
如需更多信息,请参阅 第 4.3 节 “配置主机网络的建议做法”。
安装时 SELinux 处于 enforcing 模式。要进行验证,请运行 getenforce
。SELinux 必须在所有主机和管理器上处于 enforcing 模式,才能支持您的 Red Hat Virtualization 环境。
主机类型 | 其他名称 | 描述 |
---|---|---|
Red Hat Virtualization Host | RHVH,一个精简的主机 | 这是基于 Red Hat Enterprise Linux 的最小操作系统。它作为 ISO 文件从客户门户分发,仅包含计算机充当主机所需的软件包。 |
Red Hat Enterprise Linux 主机 | RHEL 主机,一个完全的主机 | 附加了适当订阅的 Red Hat Enterprise Linux 系统可用作主机。 |
主机兼容性
创建新数据中心时,您可以设置兼容性版本。选择适合数据中心所有主机的兼容性版本。设置之后,不允许版本回归。对于全新的 Red Hat Virtualization 安装,在默认数据中心和默认集群中设置了最新的兼容性版本 ; 要使用较早的兼容性版本,您必须创建额外的数据中心和集群。有关兼容性版本的更多信息,请参阅 Red Hat Virtualization 生命周期中的 Red Hat Virtualization Manager 兼容性。
4.1. Red Hat Virtualization 主机
4.1.1. 安装 Red Hat Virtualization 主机
Red Hat Virtualization Host (RHVH) 是一个基于 Red Hat Enterprise Linux 的最小操作系统,旨在提供一种简单的方法来设置物理机以充当 Red Hat Virtualization 的 hypervisor。最小操作系统仅包含计算机充当虚拟机监控程序所需的软件包,并提供 Cockpit Web 界面来监控主机和执行管理任务。有关浏览器的最低要求,请查看 http://cockpit-project.org/running.html。
RHVH 支持 NIST 800-53 分区要求以提高安全性。RHVH 默认使用 NIST 800-53 分区布局。
主机必须满足最低主机要求。
流程
从客户门户网站下载 RHVH ISO 镜像:
- 登录到客户门户网站 https://access.redhat.com。
- 点菜单栏中的 Downloads。
- 点 Red Hat Virtualization。向上滚动并点 Download Latest 以访问产品下载页面。
- 进入 Hypervisor Image for RHV 4.3 并点 Download Now。
- 创建可引导介质设备。如需更多信息,请参阅 Red Hat Enterprise Linux 安装指南中的复制介质。
- 启动您要安装 RHVH 的机器,从准备的安装介质启动。
在引导菜单中,选择 Install RHVH 4.3 并按
Enter
。注意您还可以按
Tab
键编辑内核参数。内核参数必须以空格分开,您可以通过按Enter
键使用指定的内核参数引导系统。按Esc
键清除对内核参数的任何更改并返回到引导菜单。- 选择语言,然后点 Continue。
- 从 Date & Time 屏幕中选择一个时区,然后点 Done。
- 从键盘菜单中选择 键盘布局,再单击 Done。
从 Installation Destination 屏幕中选择要在其上安装 RHV 的设备。(可选)启用加密。点 Done。
重要红帽强烈建议使用 Automatically configure partitioning 选项。
从 Network & Host Name 屏幕选择一个网络,然后点击 Configure… 来配置连接详情。
注意要在每次系统引导时使用连接,选择 Automatically connect to this network when it is available 复选框。如需更多信息,请参阅 Red Hat Enterprise Linux 7 安装指南中的编辑网络连接。
在 Host name 字段中输入主机名,然后单击 Done。
- (可选)配置语言支持、安全策略和 Kdump。有关安装概述界面中的每个部分的更多信息,请参阅 Red Hat Enterprise Linux 7 安装指南中的使用 Anaconda进行安装。
- 点 Begin Installation。
设置 root 密码,并选择性地在 RHVH 安装时创建额外的用户。
警告红帽建议不要在 RHVH 上创建不受信任的用户,因为这可能导致利用本地安全漏洞。
单击 Reboot 以完成安装。
注意当 RHVH 重新启动时,
nodectl check
会在主机上执行健康检查,并在您在命令行中登录时显示结果。消息node status: OK
或node status: DEGRADED
代表了健康状态。运行nodectl check
以了解更多信息。该服务默认启用。
4.1.2. 启用 Red Hat Virtualization 主机存储库
注册系统以接收更新。Red Hat Virtualization Host 只需要一个软件仓库。本节提供有关将 RHVH 注册到内容交付网络或 Red Hat Satellite 6 的说明。
将 RHVH 注册到内容交付网络
-
登录位于
https://HostFQDNorIP:9090
的 Cockpit Web 界面。 - 进入 Subscriptions,点 Register System,并输入您的客户门户网站用户名和密码。Red Hat Virtualization Host 订阅会自动附加到系统。
- 点 Terminal。
启用
Red Hat Virtualization Host 7
软件仓库,以便稍后对 Red Hat Virtualization 主机进行更新:# subscription-manager repos --enable=rhel-7-server-rhvh-4-rpms
将 RHVH 注册到 Red Hat Satellite 6
-
登录位于
https://HostFQDNorIP:9090
的 Cockpit Web 界面。 - 点 Terminal。
使用 Red Hat Satellite 6 注册 RHVH:
# rpm -Uvh http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm # subscription-manager register --org="org_id" # subscription-manager list --available # subscription-manager attach --pool=pool_id # subscription-manager repos \ --disable='*' \ --enable=rhel-7-server-rhvh-4-rpms
4.1.3. 高级安装
4.1.3.1. 自定义分区
不建议在 Red Hat Virtualization Host (RHVH) 上自定义分区。红帽强烈建议在 Installation Destination 窗口中使用 Automatically configure partitioning 选项。
如果您的安装需要自定义分区,在安装过程中选择 I will configure partitioning
选项,请注意这有以下限制:
- 确定在 Manual Partitioning 窗口中选择了默认 LVM Thin Provisioning 选项。
以下目录是必需的,且必须在精简置备的逻辑卷中:
-
root (
/
) -
/home
-
/tmp
-
/var
-
/var/crash
-
/var/log
/var/log/audit
重要不要为
/usr
创建单独的分区。这样做将导致安装失败。/usr
必须位于可以更改版本与 RHVH 的逻辑卷中,因此应保留在 root (/
) 上。有关每个分区所需的存储大小的详情,请参考 第 2.2.3 节 “存储要求”。
-
root (
-
/boot
目录应定义为标准分区。 -
/var
目录必须位于单独的卷或磁盘中。 - 仅支持 XFS 或 Ext4 文件系统。
在 Kickstart 文件中配置手动分区
以下示例演示了如何在 Kickstart 文件中配置手动分区。
clearpart --all part /boot --fstype xfs --size=1000 --ondisk=sda part pv.01 --size=42000 --grow volgroup HostVG pv.01 --reserved-percent=20 logvol swap --vgname=HostVG --name=swap --fstype=swap --recommended logvol none --vgname=HostVG --name=HostPool --thinpool --size=40000 --grow logvol / --vgname=HostVG --name=root --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=6000 --grow logvol /var --vgname=HostVG --name=var --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=15000 logvol /var/crash --vgname=HostVG --name=var_crash --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=10000 logvol /var/log --vgname=HostVG --name=var_log --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=8000 logvol /var/log/audit --vgname=HostVG --name=var_audit --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=2000 logvol /home --vgname=HostVG --name=home --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1000 logvol /tmp --vgname=HostVG --name=tmp --thin --fstype=ext4 --poolname=HostPool --fsoptions="defaults,discard" --size=1000
如果使用 logvol --thinpool --grow
,还必须包含 volgroup --reserved-space
或 volgroup --reserved-percent
,以在卷组中保留空间,以便精简池增长。
4.1.3.2. 自动部署 Red Hat Virtualization 主机
您可以在没有物理介质设备的情况下安装 Red Hat Virtualization Host (RHVH),方法是使用包含安装问题的答案的 Kickstart 文件通过网络从 PXE 服务器引导。
Red Hat Enterprise Linux 安装指南中提供了使用 Kickstart 文件从 PXE 服务器安装的一般说明,因为 RHVH 的安装方式与 Red Hat Enterprise Linux 非常相似。下面介绍了 RHVH 的特定说明,以及使用 Red Hat Satellite 部署 RHVH 的示例。
自动化 RHVH 部署有 3 个阶段:
4.1.3.2.1. 准备安装环境
- 登录客户门户网站。
- 点菜单栏中的 Downloads。
- 点 Red Hat Virtualization。向上滚动并点 Download Latest 以访问产品下载页面。
- 进入 Hypervisor Image for RHV 4.3 并点 Download Now。
- 通过网络提供 RHVH ISO 镜像。请参阅 Red Hat Enterprise Linux 安装指南中的网络安装源。
从 RHVH ISO 中提取 squashfs.img 虚拟机监控程序镜像文件:
# mount -o loop /path/to/RHVH-ISO /mnt/rhvh # cp /mnt/rhvh/Packages/redhat-virtualization-host-image-update* /tmp # cd /tmp # rpm2cpio redhat-virtualization-host-image-update* | cpio -idmv
注意此 squashfs.img 文件位于
/tmp/usr/share/redhat-virtualization-host/image/
目录中,名为 redhat-virtualization-host-version_number_version.squashfs.img。它包含用于在物理机上安装的虚拟机监控程序镜像。它不应与 /LiveOS/squashfs.img 文件(由 Anacondainst.stage2
选项使用)混淆。
4.1.3.2.2. 配置 PXE 服务器和 Boot Loader
- 配置 PXE 服务器。请参阅 Red Hat Enterprise Linux 安装指南中的准备网络安装。
将 RHVH 引导镜像复制到
/tftpboot
目录中:# cp mnt/rhvh/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/
创建一个
rhvh
标签,在引导装载程序配置中指定 RHVH 引导镜像:LABEL rhvh MENU LABEL Install Red Hat Virtualization Host KERNEL /var/lib/tftpboot/pxelinux/vmlinuz APPEND initrd=/var/lib/tftpboot/pxelinux/initrd.img inst.stage2=URL/to/RHVH-ISO
Red Hat Satellite 的 RHVH Boot Loader 配置示例
如果您使用 Red Hat Satellite 中的信息来置备主机,您必须创建一个名为
rhvh_image
的全局或主机组级别参数,并使用挂载或提取 ISO 的目录 URL 填充它:<%# kind: PXELinux name: RHVH PXELinux %> # Created for booting new hosts # DEFAULT rhvh LABEL rhvh KERNEL <%= @kernel %> APPEND initrd=<%= @initrd %> inst.ks=<%= foreman_url("provision") %> inst.stage2=<%= @host.params["rhvh_image"] %> intel_iommu=on console=tty0 console=ttyS1,115200n8 ssh_pwauth=1 local_boot_trigger=<%= foreman_url("built") %> IPAPPEND 2
使 RHVH ISO 的内容在本地可用,并使用 HTTPD 服务器将其导出到网络中:
# cp -a /mnt/rhvh/ /var/www/html/rhvh-install # curl URL/to/RHVH-ISO/rhvh-install
4.1.3.2.3. 创建并运行 Kickstart 文件
- 创建 Kickstart 文件,并使其可通过网络使用。请参阅 Red Hat Enterprise Linux 安装指南中的 Kickstart 安装。
确保 Kickstart 文件满足以下 RHV 特定要求:
RHVH 不需要
%packages
部分。使用liveimg
选项并指定 RHVH ISO 镜像中的 redhat-virtualization-host-version_number_version.squashfs.img 文件:liveimg --url=example.com/tmp/usr/share/redhat-virtualization-host/image/redhat-virtualization-host-version_number_version.squashfs.img
强烈推荐自动分区:
autopart --type=thinp
注意精简配置必须与自动分区一起使用。
--no-home
选项无法在 RHVH 中工作,因为/home
是一个必需的目录。如果您的安装需要手动分区,请参阅 第 4.1.3.1 节 “自定义分区” 了解适用于分区的限制列表以及 Kickstart 文件中的手动分区示例。
需要一个调用
nodectl init
命令的%post
部分:%post nodectl init %end
在其上部署 RHVH 的 Kickstart 示例
此 Kickstart 示例演示了如何部署 RHVH。您可以根据需要包含其他命令和选项。
liveimg --url=http://FQDN/tmp/usr/share/redhat-virtualization-host/image/redhat-virtualization-host-version_number_version.squashfs.img clearpart --all autopart --type=thinp rootpw --plaintext ovirt timezone --utc America/Phoenix zerombr text reboot %post --erroronfail nodectl init %end
从 Satellite 部署 RHVH 的 Kickstart 示例
此 Kickstart 示例使用 Red Hat Satellite 中的信息来配置主机网络,并将主机注册到 Satellite 服务器。您必须创建一个名为
rhvh_image
的全局或主机组级别参数,并为它填充 squashfs.img 文件的目录 URL。ntp_server1
也是全局或主机组级别变量。<%# kind: provision name: RHVH Kickstart default oses: - RHVH %> install liveimg --url=<%= @host.params['rhvh_image'] %>squashfs.img network --bootproto static --ip=<%= @host.ip %> --netmask=<%= @host.subnet.mask %> --gateway=<%= @host.subnet.gateway %> --nameserver=<%= @host.subnet.dns_primary %> --hostname <%= @host.name %> zerombr clearpart --all autopart --type=thinp rootpw --iscrypted <%= root_pass %> # installation answers lang en_US.UTF-8 timezone <%= @host.params['time-zone'] || 'UTC' %> keyboard us firewall --service=ssh services --enabled=sshd text reboot %post --log=/root/ks.post.log --erroronfail nodectl init <%= snippet 'subscription_manager_registration' %> <%= snippet 'kickstart_networking_setup' %> /usr/sbin/ntpdate -sub <%= @host.params['ntp_server1'] || '0.fedora.pool.ntp.org' %> /usr/sbin/hwclock --systohc /usr/bin/curl <%= foreman_url('built') %> sync systemctl reboot %end
将 Kickstart 文件位置添加到 PXE 服务器的引导装载程序配置文件中:
APPEND initrd=/var/tftpboot/pxelinux/initrd.img inst.stage2=URL/to/RHVH-ISO inst.ks=URL/to/RHVH-ks.cfg
- 按照 Red Hat Enterprise Linux 安装指南中的使用 PXE 从网络引导中的内容,安装 RHVH。