Linux基础操作(十二)————虚拟机管理

上一节总结了文件的归档、压缩与解压,以及压缩方式的不同,这一节总结以下有关于虚拟机的创建、快照、重装以及管理

今天还是按照执行脚本的方式完成一系列命令

一、虚拟机的安装

虚拟机的安装可以通过图形化界面以及脚本执行

1、图形化界面安装:

这里写图片描述
通过左上角的小电视选择创建
这里写图片描述
选择创建类型,本地安装、网络安装、网络安装一个空盘、直接引用硬盘
之后选择安装路径、选择内存大小、CPU、硬盘大小、然后取名字就好了
这里写图片描述
然后打开虚拟机硬件管理页面(小灯泡),修改网卡类型为virios,硬盘类型virtIO
这里写图片描述
之后就可以进入安装页面了,然后修改时间、硬盘分区等信息
这里写图片描述
通过instll source选择安装类型
这里写图片描述
这里写图片描述
之后点有个!感叹号的选项,选择自定义硬盘,修改成如下/boot启动文件大小一般为480,swap交换区可以参照window虚拟内存大小
这里写图片描述
之后就安装好了

2、脚本安装

#!/bin/bash         ##命令运行环境的指定
virt-install \      ##安装虚拟机
--name $1 \		##虚拟机名称指定,$1表示脚本后的第一串字符
--ram 1000 \            ##内存
--file /var/lib/libvirt/images/$1.img \        ##硬盘文件  
--file-size 8 \                 ##硬盘文件大小
--cdrom /home/kiosk/Desktop/rhel-server-7.1-x86_64-dvd.iso &  ##安装源指定

然后给他文件可执行权限就可以安装了

虚拟机生成后会产生两个文件!
一个在/var/lib/libvirt/images/ ,这里是虚拟机的硬盘存放的地方,这里很重要,不能随便删除
这里写图片描述
一个在/etc/libvirt/qemu/,这里是虚拟机管理器生成的有关虚拟机描述的xml文件,如果把这个删除的话,虚拟机管理器中就不会显示虚拟机
这里写图片描述

3、生成虚拟机快照

虚拟机快照相当于是在真正的虚拟机上生成了一个镜像,然后安装镜像就可以快速得到一个新的虚拟机,7.2中我们建议创建qcow2格式的虚拟机快照。

qemu-img create -f qcow2 -b /var/lib/libvirt/images/Node.1.qcow2 /var/lib/libvirt/images/Node.1.qcow2

qeme-img 命令
create 创建
-f qcow2 Qcow2格式 Node.1.qcow2
源为Node.1的虚拟机
Node.1.qcow2名为XXX的虚拟机

以下是虚拟机有关的操作的一个脚本(针对7.2),将脚本文件放入/usr/sbin下可直接执行

case $1 in         ##输入以下字符完成对应操作
    reset)                 ##重装虚拟机快照
    virsh destroy $2 &> /dev/null
    rm -rf /var/lib/libvirt/images/$2.qcow2 &> /dev/null
    qemu-img create -f qcow2 -b /var/lib/libvirt/images/Node.1.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null 
    echo reseting ....
    virsh start $2 &> /dev/null
    echo start now ....
    virt-viewer $2 &> /dev/null &
    echo Finish .....
    ;;
    create.qcow2)            ##安装虚拟机快照
    cd /var/lib/libvirt/images/ &> /dev/null
    qemu-img create -f qcow2 -b /var/lib/libvirt/images/Node.1.qcow2 /var/lib/libvirt/images/$2.qcow2 &> /dev/null
    virt-install --name $2 --ram 1024 --file /var/lib/libvirt/images/$2.qcow2 --file-size 8 --import &> /dev/null &
    echo Create sccuessful ...
    ;;
    create)              ##安装虚拟机
    virt-install --name $2 --ram 1024 --file /var/lib/libvirt/$2.qcow2,bus=virtio --file-size 8 --network source=br0,model=virtio --cdrom /home/kiosk/Desktop/rhel-server-7.2-x86_64-dvd.iso &> /dev/null &
    echo Creating ....
    ;;
    start)                 ##启动虚拟机
    virsh start $2 &> /dev/null
        echo start now ....
    ;;
    poweroff)              ##关闭虚拟机
    virsh destroy $2 &> /dev/null
    echo ok 
    ;;
    view)
    virt-viewer $2&> /dev/null &
    ;;
        undefine)        #删除前端管理
    virsh undefine $2
    echo Job Done ....
    ;;
    addvm)                ##通过硬盘添加虚拟机前端
    virt-install --name $2 --ram 1024 --file /var/lib/libvirt/images/$2.qcow2 --file-size 8 --import &> /dev/null &
    echo Restore the $2 , Done ....
    ;; 
esac                ##有一个问题就是不知道在这个结构小如何分割命令,试过 \ 但没用

create.qcow2 创建虚拟机快照
这里写图片描述

create 创建虚拟机
这里写图片描述

reset 重装虚拟机快照
这里写图片描述

启动和强行关闭虚拟机
这里写图片描述
这里写图片描述

4、虚拟机管理命令

libvirtd                ##虚拟机服务
virt-manager            ##开启图形管理工具
virt-viewer vmname      ##显示虚拟机,vmname表示虚拟机名称
virsh list          ##列出正在运行的vm
virsh list --all        ##列出所有vm
virsh start vmname      ##运行指定vm
virsh shutdown vmname       ##正常关闭指定vm
virsh destroy vmname        ##强行结束指定vm
virsh create vmname.xml     ##临时恢复指定vm,vmname表示前端管理文件
virsh define vmname.xml     ##永久恢复vm
virsh undefine  vmname      ##删除vm的前端管理,不会删除存储

我先删除Node.1的前端管理,但是他的前端管理文件还在
这里写图片描述
我再通过管理文件临时永久恢复vm,注意这里首先要切换到有xml的目录下执行,或者写存在xm的绝对路径
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值