共计 5356 个字符,预计需要花费 14 分钟才能阅读完成。
一、安装配置 KVM 相关软件
检查本机 CPU 是否支持虚拟化
intel: 最新 linux 内核的 Intel 处理器(含 VT 虚拟化技术) vmx nx lm
AMD: 含 SVM 安全虚拟机技术的 AMD 处理器, 也叫 AMD-V svm nx lm
可以使用如下命令检查:
[root@zutuanxue ~]# egrep "(vmx|svm)" /proc/cpuinfo|uniq | |
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov | |
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb | |
rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc | |
cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma | |
cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave | |
avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp | |
tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms | |
invpcid xsaveopt dtherm ida arat pln pts md_clear flush_l1d |
如果输出的结果包含 vmx,它是 Intel 处理器虚拟机技术标志; 如果包含 svm,它是 AMD 处理器虚拟机技术标志;。如果你甚么都得不到,那应你的系统并没有支持虚拟化的处理,不能使用 kvm。另外 Linux 发行版本必须在 64bit 环境中才能使用 KVM。
二、安装 KVM
- 方法一:针对性安装
- 方法二:组包安装
2.1、方法一、针对性安装
适合小白理解 KVM 及每个包的作用,安装更有针对性。
a、安装虚拟化模块
[root@zutuanxue ~]# yum module install virt
b、安装 virt-install
and virt-viewer
虚拟机管理工具
[root@zutuanxue ~]# yum install virt-install virt-viewer libvirt virtio-win | |
## 安装包说明 | |
virt KVM 模块 | |
virt-install 新建虚拟机命令 | |
virt-viewer 连接虚拟机窗口命令 | |
libvirt 核心组件 | |
virtio-win windows 虚拟机的总线 |
c、验证系统虚拟化环境
[root@zutuanxue ~]# virt-host-validate | |
QEMU: 正在检查 for hardware virtualization : PASS | |
QEMU: 正在检查 if device /dev/kvm exists : PASS | |
QEMU: 正在检查 if device /dev/kvm is accessible : PASS | |
QEMU: 正在检查 if device /dev/vhost-net exists : PASS | |
QEMU: 正在检查 if device /dev/net/tun exists : PASS | |
QEMU: 正在检查 for cgroup 'cpu' controller support : PASS | |
QEMU: 正在检查 for cgroup 'cpuacct' controller support : PASS | |
QEMU: 正在检查 for cgroup 'cpuset' controller support : PASS | |
QEMU: 正在检查 for cgroup 'memory' controller support : PASS | |
QEMU: 正在检查 for cgroup 'devices' controller support : PASS | |
QEMU: 正在检查 for cgroup 'blkio' controller support : PASS | |
QEMU: 正在检查 for device assignment IOMMU support : PASS | |
QEMU: 正在检查 if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add intel_iommu=on to kernel cmdline arguments) |
FAQ:警告, 提示 BIOS 没有开启 IOMMU
QEMU: 正在检查 for device assignment IOMMU support : WARN (No ACPI DMAR table found, IOMMU either disabled in BIOS or not supported by this hardware platform)
解决方案
开启 BIOS 中 CPU 的 VT-D
FAQ: 警告,提示系统不支持 IOMMU
QEMU: 正在检查 if IOMMU is enabled by kernel : WARN (IOMMU appears to be disabled in kernel. Add intel_iommu=on to kernel cmdline arguments)
解决方案
# 修改 grub 配置文件 | |
[root@zutuanxue ~]# cat /etc/default/grub | |
GRUB_TIMEOUT=5 | |
GRUB_DISTRIBUTOR="$(sed's, release .*$,,g'/etc/system-release)" | |
GRUB_DEFAULT=saved | |
GRUB_DISABLE_SUBMENU=true | |
GRUB_TERMINAL_OUTPUT="console" | |
GRUB_CMDLINE_LINUX="resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet intel_iommu=on" | |
GRUB_DISABLE_RECOVERY="true" | |
GRUB_ENABLE_BLSCFG=true | |
倒数第三行 | |
GRUB_CMDLINE_LINUX= 将 intel_iommu=on 追加到最后 | |
#生效配置文件,会重新生成一个 /boot/grub2/grub.cfg | |
[root@zutuanxue ~]# grub2-mkconfig | |
完美解决 | |
[root@zutuanxue ~]# virt-host-validate | |
QEMU: 正在检查 for hardware virtualization : PASS | |
QEMU: 正在检查 if device /dev/kvm exists : PASS | |
QEMU: 正在检查 if device /dev/kvm is accessible : PASS | |
QEMU: 正在检查 if device /dev/vhost-net exists : PASS | |
QEMU: 正在检查 if device /dev/net/tun exists : PASS | |
QEMU: 正在检查 for cgroup 'cpu' controller support : PASS | |
QEMU: 正在检查 for cgroup 'cpuacct' controller support : PASS | |
QEMU: 正在检查 for cgroup 'cpuset' controller support : PASS | |
QEMU: 正在检查 for cgroup 'memory' controller support : PASS | |
QEMU: 正在检查 for cgroup 'devices' controller support : PASS | |
QEMU: 正在检查 for cgroup 'blkio' controller support : PASS | |
QEMU: 正在检查 for device assignment IOMMU support : PASS | |
QEMU: 正在检查 if IOMMU is enabled by kernel : PASS |
2.2、方法二、组包安装
通过 yum grouplist 命令直接安装虚拟化一组包,最省事,但是对于小白还是不理解里面到底做了什么。方法一安装几次后熟悉了后续可以直接使用这种方法。
[ | ]|
上次元数据过期检查:0:21:58 前,执行于 2020 年 03 月 11 日 星期三 03 时 37 分 36 秒。可用环境组:服务器 | |
最小安装 | |
工作站 | |
虚拟化主机 | |
定制操作系统 | |
已安装的环境组:带 GUI 的服务器 | |
已安装组:容器管理 | |
无头系统管理 | |
可用组:.NET 核心开发 | |
RPM 开发工具 | |
开发工具 | |
图形管理工具 | |
传统 UNIX 兼容性 | |
网络服务器 | |
科学记数法支持 | |
安全性工具 | |
智能卡支持 | |
系统工具 | |
[ | ]
三、安装虚拟化管理工具
- virsh
- virt-manager
- web 控制台
3.1、virsh
命令行下输入 virsh 命令进入交互模式
virsh 是由 libvirt 组件提供,在 libvirt-client 包中。#virsh 交互界面 | |
virsh # list --all | |
Id 名称 状态 | |
---------------------------------------------------- | |
virsh # list | |
Id 名称 状态 | |
---------------------------------------------------- | |
#shell 命令行下 | |
[root@zutuanxue ~]# virsh list | |
Id 名称 状态 | |
---------------------------------------------------- | |
[root@zutuanxue ~]# virsh list --all | |
Id 名称 状态 | |
---------------------------------------------------- |
3.2、virt-manager
[root@zutuanxue ~]# yum -y install virt-manager
3.3、安装 web 控制台
a、web 控制台介绍
Web 控制台是基于 Red Hat Enterprise Linux 8 Web 的界面,旨在管理和监视本地系统以及位于网络环境中的 Linux 服务器。
Web 控制台使您可以执行多种管理任务,包括:
- 管理服务
- 管理用户帐号
- 管理和监视系统服务
- 配置网络接口和防火墙
- 查看系统日志
- 管理虚拟机
- 创建诊断报告
- 设置内核转储配置
- 配置 SELinux
- 更新软件
- 管理系统订阅
Web 控制台使用与终端相同的系统 API,并且在终端中执行的操作会立即反映在 RHEL Web 控制台中。
您可以监视网络环境中系统的日志及其性能(以图形形式显示)。另外,您可以直接在 Web 控制台中或通过终端更改设置。
b、查看 web 控制台式是否安装
[root@zutuanxue ~]# yum info cockpit | |
上次元数据过期检查:0:04:04 前,执行于 2020 年 03 月 11 日 星期三 06 时 34 分 43 秒。已安装的软件包 | |
名称 : cockpit | |
版本 : 196.3 | |
发布 : 1.el8 | |
架构 : x86_64 | |
大小 : 52 k | |
源 : cockpit-196.3-1.el8.src.rpm | |
仓库 : @System | |
来自仓库 : BaseOS | |
概况 : Web Console for Linux servers | |
URL : https://cockpit-project.org/ | |
协议 : LGPLv2+ | |
描述 : The Cockpit Web Console enables users to administer GNU/Linux servers using a | |
: web browser. | |
: | |
: It offers network configuration, log inspection, diagnostic reports, SELinux | |
: troubleshooting, interactive command-line sessions, and more. |
c、安装 cockpit-machines 插件
[root@zutuanxue ~]# yum install cockpit | |
[root@zutuanxue ~]# yum install cockpit-machines -y | |
[root@zutuanxue ~]#systemctl enable --now cockpit.socket |
d、访问 web 控制台
浏览器选择
-
使用以下浏览器之一打开 Web 控制台:
- Mozilla Firefox 52 及更高版本
- Google Chrome 57 及更高版本
- Microsoft Edge 16 及更高版本
-
系统用户帐户凭据
RHEL Web 控制台使用位于的特定 PAM 堆栈
/etc/pam.d/cockpit
。通过 PAM 身份验证,您可以使用系统上任何本地帐户的用户名和密码登录。访问方式
-
在网络浏览器中打开网络控制台:
-
本地:
https://localhost:9090
-
远程使用服务器的主机名:
https://example.com:9090
-
使用服务器的 IP 地址远程:
https://192.0.2.2:9090
如果使用自签名证书,浏览器将发出警告。检查证书并接受安全例外以继续登录。
控制台从
/etc/cockpit/ws-certs.d
目录中加载证书,并使用最后一个文件.cert
(按字母顺序扩展名)。为避免必须授予安全例外,请安装由证书颁发机构(CA)签名的证书。
-
-
在登录屏幕中,输入您的系统用户名和密码
登陆成功
