当前位置: 首页 > news >正文

5.虚拟化技术(二)

文章目录

  • 虚拟化技术
    • 一、KVM基础使用方法
      • KVM图形界面使用
        • 1.图形界面调出KVM图形界面
        • 2.命令行调出KVM图形界面
      • 1. 查询命令
      • 2. 控制虚拟机命令
      • 3.KVM创建虚拟机安装系统
        • 3.1 命令行创建虚拟机(图形化安装系统)
        • 3.2 命令行创建虚拟机(VNC安装系统)
      • 4.思考题
    • 三、虚拟机热迁移
      • 概念
      • 技术特点
      • 使用场景
      • 实验
    • 四、虚拟化软件分类
      • 1型虚拟化(裸金属虚拟化)
      • 2型虚拟化(宿主型虚拟化)
      • 混合型虚拟化
      • 2型虚拟化(宿主型虚拟化)
      • 混合型虚拟化

虚拟化技术

一、KVM基础使用方法

KVM图形界面使用

1.图形界面调出KVM图形界面

在这里插入图片描述

2.命令行调出KVM图形界面
virt-manager

1. 查询命令

# 查看KVM是否支持
virsh version# 查看正在运行虚拟机列表
virsh list# 查看所有状态虚拟机列表
virsh list --all# 查看随宿主机一起开机的虚拟机列表
virsh list --autostart# 查看虚拟机详细信息
virsh dominfo <虚拟机名称># 查看虚拟网络
virsh net-list --all# 查看存储池
virsh pool-list --all# 查看虚拟机配置文件
virsh dumpxml <虚拟机名称># 查看虚拟机配置的cpu数量
virsh vcpucount --active <虚拟机名称>

2. 控制虚拟机命令

# 启动虚拟机
virsh start <虚拟机名称># 关闭虚拟机
virsh shutdown <虚拟机名称># 强制关闭
virsh destroy <虚拟机名称># 重启虚拟机
virsh reboot <虚拟机名称># 暂停虚拟机
virsh suspend <虚拟机名称># 恢复虚拟机
virsh resume <虚拟机名称># 设置开机自启
virsh autostart <虚拟机名称># 取消开机自启
virsh autostart --disable <虚拟机名称># 修改虚拟机配置文件
virsh edit <虚拟机名称>

3.KVM创建虚拟机安装系统

3.1 命令行创建虚拟机(图形化安装系统)
[root@KVM1 ~]# cd /var/lib/libvirt/images/
# 默认磁盘存放目录[root@KVM1 images]# qmeu-img create -f qcow2 vm2.qcow2 20G
# 给虚拟机vm2创建硬盘
[root@KVM1 images]# qemu-img info vm2.qcow2
# 显示创建出来的新的虚拟机硬盘# 使用virt-install创建虚拟机
# 先将系统镜像准备好
[root@KVM1 ~]# mkdir /iso
# /iso 存放系统镜像# 前面已经给VM2创建过磁盘,但是我不用,我想试下不在默认目录创建磁盘
[root@KVM1 ~]# mkdir /disk
[root@KVM1 ~]# qmeu-img create -f qcow2 /disk/vm2.qcow2 20G[root@KVM1 ~]# virt-install --name vm2 --memory 2048 --vcpus 1 --disk path=/disk/vm2.qcow2 --location /iso/CentOS-7-x86_64-Minimal-1810.iso --network network=default --noautoconsole#--name 指定虚拟机名字
#--memory 指定虚拟机内存
#--vcpus 指定虚拟机的CPU数量
#--disk path 指定虚拟机的磁盘位置
#--location 指定光盘镜像的位置
#--network 指定网络,KVM默认有个网络名为default的NAT网络[root@KVM1 ~]# virsh list
# 查看创建的vm2
# 然后打开虚拟机使用图形化安装系统

注意:不在默认磁盘位置创建磁盘也可以给虚拟机创建磁盘

3.2 命令行创建虚拟机(VNC安装系统)
[root@KVM1 ~]# qmeu-img create -f qcow2 /disk/vm3.qcow2 20G[root@KVM1 ~]# virt-install --name vm3 --memory 2048 --vcpus 1 --disk path=/disk/vm3.qcow2 --location /iso/CentOS-7-x86_64-Minimal-1810.iso --network network=default --noautoconsole --vnclisten=0.0.0.0 --vncport=5903 --vnc#--vnclisten 设置VNC监听地址所有地址
#--vncport=5903  宿主机监听到5093的VNC请求,转到vm3虚拟机上[root@KVM1 ~]# systemctl stop firewalld.service
# 通过VNC连接进行系统安装

4.思考题

如何使用命令行的方式,给vm3拍摄快照,还原快照?

解答:

请务必确认虚拟机vm3的磁盘格式,因为只有qcow2格式的磁盘才支持快照功能

操作命令关键注意点
检查磁盘格式qemu-img info /path/to/vm3_disk.qcow2确认"file format"为qcow2
创建快照virsh snapshot-create-as vm3 <snapshot-name>可为快照命名,便于后续管理。
查看快照列表virsh snapshot-list vm3查看所有已创建的快照。
恢复快照virsh snapshot-revert vm3 <snapshot-name>强烈建议虚拟机关机状态下操作。
删除快照virsh snapshot-delete vm3 <snapshot-name>删除不再需要的快照以释放空间。
  1. 检查虚拟机磁盘格式

    # 找到虚拟机的磁盘文件
    virsh domblklist vm3
    # 检测磁盘文件个格式
    qemu-img info /path/to/vm3.qcow2
    
  2. 创建快照

    virsh snapshot-create-as vm3 <snapshot-name>
    

    snapshot-name 快照名称

  3. 恢复快照

    virsh snapshot-revert vm3 <snapshot-name>
    
  4. 删除快照

    virsh snapshot-delete vm3 <snapshot-name>
    

三、虚拟机热迁移

概念

虚拟机热迁移(Live Migration)是指在虚拟机运行状态下,将其从一台物理主机迁移到另一台物理主机,且在整个迁移过程中虚拟机服务不中断。

在这里插入图片描述

技术特点

必要条件:

  • 共享存储(NFS、iSCSI、SAN等)
  • 相同或兼容的CPU架构
  • 足够的网络带宽
  • 目标主机有足够的资源

迁移原理:

  1. 目的主机上创建同规格虚拟机
  2. 通过迭代迁移将内存数据迁移到目的主机
  3. 暂停源主机,目标主机拉起

使用场景

  1. 负载均衡:将虚拟机从负载高的主机迁移到负载低的主机
  2. 硬件维护:在不中断服务的情况下进行硬件维护
  3. 节能:合并虚拟机到少数主机,关闭空闲主机
  4. 故障预防:预测到硬件故障前迁移虚拟机

实验

环境配置

创建三台虚拟机KVM1,KVM2,NFS,需要CPU支持虚拟化

在这里插入图片描述

修改主机名和IP地址

NFS:
hostnamectl set-hostname NFSvim /etc/sysconfig/network-scripts/ifcfg-ens160TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=eui64NAME=ens160#UUID=3b58adc4-7bfb-4ce7-bdc5-7893a708ebb3   #UUID这行删掉DEVICE=ens160ONBOOT=yesIPADDR=192.168.108.100             PREFIX=24GATEWAY=192.168.108.2
nmcli connection reload ens160 KVM1:
hostnamectl set-hostname KVM1vim /etc/sysconfig/network-scripts/ifcfg-ens160TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=eui64NAME=ens160#UUID=3b58adc4-7bfb-4ce7-bdc5-7893a708ebb3   #UUID这行删掉DEVICE=ens160ONBOOT=yesIPADDR=192.168.108.101               PREFIX=24GATEWAY=192.168.108.2
nmcli connection reload ens160 KVM2:
hostnamectl set-hostname KVM2vim /etc/sysconfig/network-scripts/ifcfg-ens160TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=eui64NAME=ens160#UUID=3b58adc4-7bfb-4ce7-bdc5-7893a708ebb3   #UUID这行删掉DEVICE=ens160ONBOOT=yesIPADDR=192.168.108.102             PREFIX=24GATEWAY=192.168.108.2
nmcli connection reload ens160 

三个节点配置相同的hosts文件

echo << 'EOF' >> /etc/hosts
192.168.108.100 NFS
192.168.108.101 KVM1
192.168.108.102 KVM2
EOF

创建共享存储:

NFS

mkdir /nfs                   
vim /etc/exports/nfs *(rw,no_root_squash,no_subtree_check)
#用于共享的目录
#第一列:/nfs共享出去的目录
#第二列:*代表允许所有网段访问
#rw: 挂载此目录的客户端对该共享目录具有读写权限
#sync:资料同步写入内存和磁盘
#no_root_squash:客户机用root访问该共享文件夹时,不映射root用户,root_squash:客户机用root访问该共享文件夹时,将root用户映射成匿名用户
#no_subtree_check:不检查父目录权限systemctl restart nfs-server.service
# 本地测试NFS共享成功没有
showmount -e localhost# 关闭防火墙在KVM1,KVM2测试是否能访问共享目录
systemctl stop firewalld.serviceKVM1:
showmount -e 192.168.108.100

KVM1,KVM2分别创建/NFS目录用于挂载NFS的/nfs目录

[root@KVM1 ~]# mkdir /NFS
[root@KVM2 ~]# mkdir /NFS

KVM1:

命令行输入virt-manager 调出KVM图形化界面

将KVM2添加到KVM1中

在这里插入图片描述

修改两个KVM名字

在这里插入图片描述

KVM1和KVM2添加共享存储NFS,先操作KVM1

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

KVM2同样的操作

上传CentOS镜像到KVM1,KVM1使用共享存储创建虚拟机

安装过程正常操作,中间选择共享存储NFS

在这里插入图片描述

在这里插入图片描述

正常安装虚拟机,虚拟机安装完成后,重启时会自动弹出光盘

开始迁移

开启KVM1-2

关闭KVM1-2的防火墙

调出KVM1的KVM图形化界面

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

可以看见虚拟机从KVM1跑到KVM2中

四、虚拟化软件分类

1型虚拟化(裸金属虚拟化)

特点:

  • 直接安装在物理硬件上
  • 不需要宿主操作系统
  • 性能接近物理机
  • 资源利用率高

代表产品:

  • VMware ESXi:企业级虚拟化平台
  • Microsoft Hyper-V:Windows服务器虚拟化
  • Citrix Hypervisor:企业级虚拟化解决方案
  • KVM:基于Linux内核的虚拟化(严格来说属于混合型)

优势:

  • 高性能
  • 高安全性
  • 资源开销小
  • 适合生产环境

2型虚拟化(宿主型虚拟化)

特点:

  • 安装在宿主操作系统之上
  • 作为应用程序运行
  • 性能有一定损耗
  • 安装和使用简单

代表产品:

  • VMware Workstation:桌面虚拟化
  • Oracle VirtualBox:开源桌面虚拟化
  • Parallels Desktop:Mac平台虚拟化
  • QEMU:开源模拟器

优势:

  • 安装配置简单
  • 兼容性好
  • 适合开发和测试
  • 功能丰富

混合型虚拟化

特点:

  • 结合了1型和2型的优点
  • 通过内核模块实现虚拟化功能

代表产品:

  • KVM:通过Linux内核模块实现
  • Xen:支持半虚拟化和全虚拟化
    格来说属于混合型)

优势:

  • 高性能
  • 高安全性
  • 资源开销小
  • 适合生产环境

2型虚拟化(宿主型虚拟化)

特点:

  • 安装在宿主操作系统之上
  • 作为应用程序运行
  • 性能有一定损耗
  • 安装和使用简单

代表产品:

  • VMware Workstation:桌面虚拟化
  • Oracle VirtualBox:开源桌面虚拟化
  • Parallels Desktop:Mac平台虚拟化
  • QEMU:开源模拟器

优势:

  • 安装配置简单
  • 兼容性好
  • 适合开发和测试
  • 功能丰富

混合型虚拟化

特点:

  • 结合了1型和2型的优点
  • 通过内核模块实现虚拟化功能

代表产品:

  • KVM:通过Linux内核模块实现
  • Xen:支持半虚拟化和全虚拟化
http://www.dtcms.com/a/542463.html

相关文章:

  • 档案信息网站建设的意义注册会计师考试科目
  • 帮企业建设网站和推广网站怎么导入模板到wordpress
  • 专门做奢侈品的网站网络营销策略的内容
  • phpmysql网站开发项目式教程苏州网站seo优化
  • Linux回环设备:块与网络驱动全解析
  • linux学习--总线设备驱动模型
  • 佛山 网站建设培训班成品app直播源码
  • 开发网站和application2019做网站图片用什么格式
  • OpenHarmony内核中HDF内核态驱动khdf编译流程
  • 旅游商城网站订单处理网站建设所需美工
  • 深圳学校网站建设公司网站首页列表布局设计
  • 网站降权了怎么办虾皮购物网站怎么做
  • MC SDK V6.x 软件HSO功能ADC采样设计说明 LAT1560
  • 域名备案 网站备案淘宝网站推广方案
  • 华尔街之狼,与AI共舞
  • 图书馆管理网站建设logo菏泽炫佑网站建设
  • 网站营销方案设计公司怎样才能制做免费网站
  • Web身份认证 --- OAuth授权机制
  • 南京工程建设招聘信息网站网站设计师薪资参考
  • 国外做伞的品牌网站有偷菜餐厅城市建设的网站
  • 大流量网站解决访问量那些网站是asp做的
  • 班级网站建设步骤中国建设银行总行网站
  • 加法器进位的那些事
  • 江苏网站建设基本流程建站服务外贸
  • 免费网站推广产品百度网站怎么做
  • 网站开发建设需要多少钱建立网站的风险
  • ModbusRtc与ModbusTCP,esp32
  • 正规的网站制作服务电话社区论坛源码
  • 策划方案免费的网站oa系统办公软件怎么用
  • joomla 网站模板国内10大猎头公司排名