虚拟化管理工具

虚拟化的原因:机器进行计算的耗电量过大,虚拟化可大大降低企业耗电量

      (虚拟化时在内核中并行的操作)

关键性文件:  cat /proc/cpuinfo  | grep -E "svm|vmx"     

        查找这两个其中的一个,否则无法使用redhat的虚拟化

1.虚拟机安装(有图形)

步骤一:打开虚拟机管理器,并输入超级用户密码:

  [[email protected] Desktop]$ virt-manager

 Linux学习日志_虚拟化管理工具

步骤二:下载所需要的镜像文件

 Linux学习日志_虚拟化管理工具

步骤三:点击创建一个新的虚拟化设备

 Linux学习日志_虚拟化管理工具

步骤四:选择Local install media(ISO image or CDROM)

 Linux学习日志_虚拟化管理工具

步骤五:选择虚拟化程序所有目录地址

 Linux学习日志_虚拟化管理工具

步骤六:选择内存和CPU数目

 Linux学习日志_虚拟化管理工具

步骤七:选择硬盘大小

 Linux学习日志_虚拟化管理工具

步骤八:输入虚拟机的名字和网卡类型

 Linux学习日志_虚拟化管理工具

步骤九:选择DISK类型

 Linux学习日志_虚拟化管理工具

步骤十:  选择网卡类型

 Linux学习日志_虚拟化管理工具

 

步骤十一:进入虚拟化设置,选择第一项

 Linux学习日志_虚拟化管理工具

步骤十二:选择时区、输入法、语言支持

 Linux学习日志_虚拟化管理工具

步骤十三:选择软件环境

 Linux学习日志_虚拟化管理工具

步骤十四:进行硬盘设置

 Linux学习日志_虚拟化管理工具

步骤十五:设置超级用户密码

 Linux学习日志_虚拟化管理工具

1.虚拟机安装()

【真机中设置vm_create.sh

 [[email protected] sbin]# vim /sbin/vm_create.sh     //建立全自动创建脚本

 #!/bin/bash //不是注释

 virt-install \ //启动虚拟机安装程序

 --location http://172.25.254.23/rhel7.3 \ //数据源地址

 --extra-args "ks=http://172.25.254.103/ks.cfg" \ //重置虚拟机的IP

 --ram 1024 \ //内存大小

 --vcpus 1 \ //cpu核数

 --file-size 8 \ //硬盘大小

 --file /var/lib/libvirt/images/$1.qcows,bus=virtio \ //硬盘位置,bus设定类型

 --network source=br0,model=virtio \  //设定虚拟机网卡类型和工作模式

 --name $1 & //指定安装虚拟机名称

 [[email protected] sbin]#  chmod +x /sbin/vm_create.sh //赋予权限

【虚拟机中设置】

[创建kickstart文件]

使用system-config-kickstart工具

模板:/root/anaconda-ks.cfg(系统自动生成)

完成后用ksvalidator命令校验正确性。

 安装system-config-kickstart

  [[email protected] bin]# yum install system-config-kickstart

 安装system-config-kickstart.noarch

  [[email protected] bin]# yum install system-config-kickstart.noarch -y

 打开安装文件system-config-kickstart

  [[email protected] bin]# system-config-kickstart

 Linux学习日志_虚拟化管理工具

 Linux学习日志_虚拟化管理工具 

  Add中加入分配的/boot waap和其他的空间分配

 Linux学习日志_虚拟化管理工具

 生成ks.cfg文件,保存到阿帕奇共享目录中

 Linux学习日志_虚拟化管理工具

 anaconda-ls.cfg为安装系统时自动生成的文件)

 [[email protected] ]# vim /var/www/html/kd.cfg    后加入

  %packages

  @base

  fftp

  %end

 

  %post

  rm -fr /etc/yum.repos.d/*

  cat > /etc/yum.repos.d/yum.repo <<EOF

  [rhel7.3]

  name=rhel7.3

  baseurl=http://172.25.254.23/rhel7.3

  gpgcheck=0

  EOF

  %end 

 【完成】执行/bin/reset.sh即可重置


3.虚拟机管理命令

 !虚拟机由两部分构成:虚拟机硬件信息文件&虚拟机硬盘文件

  /etc/libvirt/qemu/westos2.xml //虚拟机硬件信息文件

  /var/lib/libvirt/images/westos2.qcow2 //虚拟机硬盘文件

  Linux学习日志_虚拟化管理工具

文件类型:

 .xml ##前端硬件信息数据文件

 .qemu ##硬盘文件

常用命令:

 virt-manager //打开虚拟机管理器

 virt-viewer westos2       //显示虚拟机

 virsh start westos2 //打开虚拟机

 virsh list //显示正在运行的虚拟机

 virsh list --all //显示所有的虚拟机

 virsh shutdown westos2 //正常关闭虚拟机

 virsh destroy westos2 //强制关闭虚拟机

 virsh define westos2.xml //恢复虚拟机(永久性的)

 virsh undefine westos2.xml //删除虚拟机硬件信息文件

 virsh create westos2.xml //利用虚拟机硬件信息文件打开虚拟机(一次性)

迁移:

 由于虚拟机由虚拟机硬件信息文件&虚拟机硬盘文件两部分构成,因此迁移时要将.xml文件与.qemu2文件copyU盘中(下以移动到/mnt/为例)

 [[email protected] mnt]# cp /etc/libvirt/qemu/westos2.xml /mnt/

 [[email protected] mnt]# mv /var/lib/libvirt/images/westos2.qcow2 /mnt/

4.虚拟机快照

 !虚拟机的快照只是一个存储更改信息的文件

 !在虚拟机被读取的时候还是读取母盘中的内容

【格式】

 qemu-img create -f qcow2 -b 母盘.qcow2 快照.qcow2

Linux学习日志_虚拟化管理工具

 图中node2.qcow2是以westos2.qcow2为母盘制作出的快照

【用途】

 virt-manager中利用快照可以快速创建快照虚拟机

【例:用westos2.qcow2作为母盘制作快照node3.qcow2,并制作出快照虚拟机】

 [[email protected] libvirt]# cd /var/lib/libvirt/images/

 [[email protected] images]# qemu-img create -f qcow2 -b westos.qcow2 node3.qcow2               //-f是类型 -b是备份

 Formatting 'node3.qcow2', fmt=qcow2 size=8589934592 backing_file='westos.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off

 将快照导入虚拟机

Linux学习日志_虚拟化管理工具Linux学习日志_虚拟化管理工具

 后面设置与上文中图形创造虚拟机设置一致。

 Linux学习日志_虚拟化管理工具

 快照安装虚拟机完成

 !!!一定要用可以正常运行的虚拟机作母盘制作快照,否则会报错

5.虚拟机快照重置脚本

 [[email protected] images]# cd /bin/

 [[email protected] bin]# vim /bin/reset.sh

 #!/bin/bash

 virsh destroy $1

 

 rm -fr /var/lib/libvirt/images/$1.qcow2

 qemu-img create -f qcow2 -b \

 /var/lib/libvirt/images/westos2.qcow2 \

 /var/lib/libvirt/images/$1.qcow2

 

 virsh start $1

 virt-viewer $1 &                           // & 为后台挂起

【验证】

 在快照虚拟机中进行肆意破坏,把/boot/*所有东西删除

 !!!!!!!!!!!!!千万不能在真机中执行rm -fr /* ,否则就哈哈哈了!!!!!!!!!!!!

 [[email protected] bin]# sh reset.sh node3      //执行恢复脚本,重启完成





相关文章:

  • 2021-12-06
  • 2021-12-04
  • 2021-12-29
  • 2021-12-24
  • 2022-03-02
  • 2022-01-20
  • 2021-12-05
猜你喜欢
  • 2021-06-14
  • 2021-08-30
  • 2021-10-11
  • 2021-09-13
  • 2021-12-04
  • 2022-01-05
相关资源
相似解决方案