一、概述
KVM 是 Kernel-based Virtual Machine 的缩写,是一种用于虚拟化的开源硬件虚拟化技术。它使用 Linux 内核的虚拟化模块,将物理服务器划分为多个虚拟机。KVM 允许虚拟机直接访问物理硬件资源,从而提供出色的性能和稳定性,同时还支持许多常见的操作系统和应用程序。KVM 使用了 QEMU (Quick Emulator) 作为其默认的虚拟机监控程序。除此之外,KVM 还支持多种嵌入式和云计算场景,并且得到了广泛的应用。
**二、KVM的应用场景
**
`云计算: KVM 在云计算中表现优异,可用于构建虚拟私有云、虚拟机托管服务等。KVM可以帮助企业实现资源共享、高可用性和快速部署的目标,同时还可以提高数据安全性和隔离性。``Web 托管: KVM 可以用于 Web 服务器的虚拟化,通过将多个虚拟机分配在一个物理服务器上,可以极大地提高服务器的利用率和性能。同时,KVM 还提供了快速备份和恢复数据的功能,保证了服务器的高可靠性。``测试和开发:KVM 可以帮助开发者创建多个虚拟机进行测试和开发,从而提高软件开发周期的效率和速度。开发者可以在虚拟机中运行不同的操作系统和应用程序,隔离他们的开发环境,同时可以在开发过程中随时备份和还原虚拟机。``HPC(高性能计算): KVM 可以用于构建 HPC 集群系统。通过虚拟化技术,HPC 集群系统可以实现资源共享和高效管理,同时保证计算资源的隔离性和安全性。``VDI(虚拟桌面基础设施): KVM 可以用于构建VDI 系统,将多个桌面虚拟机部署在一个物理服务器上,实现桌面虚拟化。VDI 系统可以提供远程访问、资源共享和快速部署的功能,同时可以保证数据隔离和安全性。`
**三、安装KVM虚拟机
**
1、检查真实物理机是否支持虚拟化功能
grep vmx /proc/cpuinfo
2、安装KVM及其依赖包
yum install virt-manager libvirt``设置为开机自启``systemctl enable libvirtd``启动虚拟机``systemctl start libvirtd
检查安装``lsmod | grep kvm
四、创建虚拟机
1、命令行
上传镜像至系统
mkdir -p /data/image``cd /data/image``通过xftp等工具上传镜像
准备 Kickstart 文件
vim /data/ks.cfg``# Kickstart file for CentOS 7.9``# System bootloader configuration``bootloader --location=mbr``# Keyboard layouts``keyboard --vckeymap=us --xlayouts='us'``# System language``lang en_US.UTF-8``# Network information``network --bootproto=dhcp --device=eth0 --activate``# Root password``rootpw --iscrypted $6$rounds=5000$DB059DE0AE7B284C33916C99267C52ACE6D6602682FBD912007EE103BCDD3B3A647E43B2922A95DD18B4A33B1AE807CC6DE30C461F12E17C8EB00C295D3886B2.77F40AD437AE53942619A3B0A95929EAEBCE6837FBF17BF6A4D9230E52228C3D3EB34A32E03FAB8BCBEC276F46731BB520C1EDD4717A4FD0F7D943E51B6996DC``# Time zone``timezone --utc America/New_York``# System authorization information``auth --enableshadow --passalgo=sha512``# Use network installation``cdrom``# System services``systemd --units=network.target``# System bootloader configuration``bootloader --location=mbr``# Partition clearing information``clearpart --all --initlabel``# Disk partitioning information``part / --fstype ext4 --size 20480``# System bootloader configuration``bootloader --location=mbr``# Firewall configuration``firewall --enabled``# SELinux configuration``selinux --enforcing``# Do not configure the X Window System``skipx``%post --nochroot``# Add any post-installation scripts or commands here``%end``%packages``@core``%end
使用virt-install 创建虚拟机
yum install -y qemu-kvm libvirt libguestfs-tools-c bridge-utils virt-install``virt-install --name test-centos1 --memory 2048 --vcpus 2 --os-variant rhel7 --network bridge=br0,model=virtio --graphics vnc,listen=0.0.0.0 --cdrom /data/image/CentOS-7-x86_64-DVD-2009.iso --extra-args "ks=file:/ks.cfg" --disk path=/var/lib/libvirt/images/my-centos7.qcow2,size=20 --noautoconsole解释:``--name test-centos1: 设置虚拟机名称。``--memory 2048: 分配 2GB 内存。``--vcpus 2: 设置 2 个虚拟 CPU。``--network bridge=br0,model=virtio: 使用 br0 桥接网络。``--graphics vnc,listen=0.0.0.0: 设置 VNC 图形界面,允许从任何 IP 地址访问。``--cdrom /data/image/CentOS-7-x86_64-DVD-2009.iso: 指定 ISO 镜像文件的位置。``--extra-args "ks=file:/ks.cfg": 指定 Kickstart 文件的位置。``--disk path=/var/lib/libvirt/images/my-centos7.qcow2,size=20: 设置虚拟机的磁盘位置和大小(20GB)。``--noautoconsole: 不自动启动控制台。``查看虚拟机``virsh list
**2、桌面图形化
**
1、安装桌面图形化
安装GNOME桌面``yum groupinstall "GNOME Desktop"``启用图形化桌面``sudo systemctl set-default graphical.target``重启系统实现更改``sudo reboot``打开虚拟编辑器``virt-manager
2、创建虚拟机
2.1、通过ISO安装虚拟机
2.2选择ISO文件
2.3设置内存CPU
2.4设置硬盘空间
2.5设置虚拟机名称并开启安装前的自定义配置
2.6开始安装
为了帮助大家更好的学习网络安全,我给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂这些资料!
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取