文章目录
前言
虚拟化技术的应用十分广泛,当前虚拟化技术主要关注于服务器的虚拟化,或在单个主机上寄存多个独立的操作系统。
虚拟化技术可以使多台计算机看起来像一台计算机,这叫做服务器聚合(server aggregation)或网格计算(grid computing)。
应用场景:需要在一台服务器中安装多个系统,分别部署不同的服务,设置不同的系统时间,并且多个系统之间可以相互通讯。
本文首先介绍KVM的概念,重点介绍Linux操作系统上的虚拟化技术。
一、KVM安装条件
情况1、若电脑的cpu是inter的,则该cpu必须支持vmx功能;
情况2、若电脑的cpu是amd的,则该cpu必须支持svm功能;
虚拟机设置前必须开启cpu 全虚拟化功能!!
二、KVM虚拟化安装
步骤:
- 查看隐藏组
dnf group list --hidden
- 安装虚拟化工具
dnf group install “Virtualization Client” “Virtualization Hypervisor”
“Virtualization Tools” -y
- Virtualization Client ##虚拟化客户端
- Virtualization Tools ##虚拟化工具
- Virtualization Hypervisor ##虚拟化核心套件
- 查看libvirtd服务状态
systemctl status libvirtd.service
- 启动
virt-manager
三、KVM虚拟化相关信息
相关信息 相关文件位置
服务名称 libvirtd
虚拟化核心 qemu/kvm
虚拟化存储目录(虚拟机硬盘) /var/lib/libvirt/images/xxxx.qcow2
虚拟化硬件信息 /etc/libvirt/qemu/xxxx.xml
四、手动安装虚拟机
五、虚拟机管理命令
- virt-viewer westos ##显示westos虚拟机
- virt-manager ##打开虚拟机控制器
- virsh list ##列出运行的虚拟机
- virsh list --all ##列出所有虚拟机
- virsh start westos ##开启虚拟机
- virsh shutdown westos ##正常关闭虚拟机
- virsh destroy westos ##断电westos虚拟机
六、虚拟机在linux系统中传输
步骤:
- 连接其他主机
ssh root@ip
- 复制.xml和.qcow2文件
scp /etc/libvirt/qemu/long.xml root@172.25.254.25:/etc/libvirt/qemu
scp /var/lib/libvirt/images/node1.qcow2 root@172.25.254.25:
/var/lib/libvirt/images
-
ctrl+d 退出连接
-
恢复虚拟机
virsh create long.xml 通过硬件信息文件直接打开虚拟机,虚拟机关闭后消失 virsh define long.xml
添加虚拟机至虚拟机列表中 virsh undefine long 删除虚拟机硬件信息
七、虚拟机快照
1.创建虚拟机快照
步骤:
- 删除虚拟机硬件信息
virsh undefine 虚拟机名
- 创建快照
qemu-img create -f qcow2 -b 虚拟机名.qcow2 快照名.qcow2
- 通过导入系统已经存在磁盘的方式新建glass
- 快照中误操作,可以删除,重新创建新的快照
进入 cd /var/lib/libvirt/images/
删除损坏的快照
重新创建快照
2.使用脚本文件创建虚拟机
步骤:
- 创建脚本文件create-vm.sh,并编辑
#!/bin/bash virt-install
–cdrom /isos/rhel-8.2-x86_64-dvd.iso
–memory 2048
–vcpus 1
–disk /var/lib/libvirt/images/$.qcow2,size=8,bus=virtio
–name $
- 运行脚本文件,同时输入虚拟机名称
例:sh create-vm.sh test
- 打开virtual Machine 可以看到创建好的虚拟机
3.使用脚本文件生成快照
#!/bin/bash qemu-img create
-f qcow2
-b /var/lib/libvirt/images/long.qcow2 \ /var/lib/libvirt/images/$*.qcow2 \virt-install
–memory 2048
–vcpus 1
–name KaTeX parse error: Undefined control sequence: \ at position 3: * \̲ ̲--disk /var/lib…*.qcow2
–import
4.使用脚本文件重置虚拟机
八、虚拟机连接真机网络
步骤:
- cd /etc/sysconfig/network-scripts/
将里面的文件转移到/mnt/ - 编辑文件
vim ifcfg-enp0s25 : DEVICE=enp0s25 ONBOOT=yes BOOTPROTO=none
BRIDGE=br0vim ifcfg-br0 : DEVICE=br0 ONBOOT=yes BOOTPROTO=none
IPADDR=172.25.254.26 NETMASK=255.255.255.0 TYPE=Bridge
- 重启系统
- 打开虚拟机,配置NIC
- 在虚拟机中运行nm-connection-editor
删除原有的Bridge ,添加新的Bridge,并配置其IPV4 :编辑地址与子网掩码