Linux中虚拟机的安装及虚拟化管理

一、安装虚拟机

1、手动安装虚拟机

条件 :下载好虚拟机的镜像,并明确存放路径为 /home/kiosk/Desktop/
真机
(1)真机的shell内输入 virt-manager
Linux中虚拟机的安装及虚拟化管理     Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理       Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
(2)安装好虚拟机后的操作。
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理  Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理      Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理   Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理      Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理

2、脚本安装虚拟机

注意: 要在超级用户下写脚本 所有的一切都要在超级用户下进行
(1)在真机root下的shell当中输入 vim vm_install.sh
Linux中虚拟机的安装及虚拟化管理          Linux中虚拟机的安装及虚拟化管理
(2)编辑shell脚本

  • 注意:换行符号\不能有空格
字符 含义
#!/bin/bash shell脚本的头部
virt-install \ 使用命令与换行符
–name $1 名字、$1环境变量,开始的第一个字符
–cdrom /home/kiosk/ Desktop/rhel-server-7.3-x86_64-dvd.iso \ 镜像的存放路径
–memory 1024 \ 占用内存大小
–vcpus 1 占用cpu大小
–disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \ 物理硬盘的相关信息
–network source=br0,model=virtio &> /dev/null & 网络的信息以及将错误定向输出到垃圾桶不让它占用终端

编写一个shell执行
        #!/bin/bash
        echo “createing $1…”
        virt-install
        --name $1
        --memory 1024
        --vcpus 1
        --disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \
        --cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso
        --network bridge=br0,model=virtio &>/dev/null &
        echo “created $1”
Linux中虚拟机的安装及虚拟化管理    Linux中虚拟机的安装及虚拟化管理
(3)直接在真机的shell当中输入 sh vm_install.sh 虚拟机名字,就可以看到虚拟机
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理
(4)按照博客上文继续执行操作。

二、虚拟机的管理

命令 含义
virsh list 列出所有正在开启的虚拟机
virsh list --all 列出所有的虚拟机,包括开启的和关闭的
virsh destroy westos 关闭虚拟机westos
virsh start westos 开启虚拟机westos
virsh create /mnt/westos.xml 恢复一次性使用复制的虚拟机 ,关掉就没有了
virsh define /mnt/westos.xml 永久性使用虚拟机 ,关掉依然在
virsh undefine /mnt/westos(名字) 永久关掉虚拟机

(1)virsh list 列出所有正在开启的虚拟机virsh list 列出所有正在开启的虚拟机
Linux中虚拟机的安装及虚拟化管理        Linux中虚拟机的安装及虚拟化管理
(2)virsh list --all 列出所有的虚拟机,包括开启的和关闭的
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理
(3)virsh destroy 虚拟机名称 关闭虚拟机
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理
(4) virsh start 虚拟机 开启虚拟机
Linux中虚拟机的安装及虚拟化管理         Linux中虚拟机的安装及虚拟化管理

三、虚拟机的复制

注意:在真机root下的shell里面

scp [email protected]对方主机ip:/var/lib/libvirt/images/虚拟机名称.qcow2 /mnt/ | 复制别人主机内 虚拟机 硬盘信息

scp [email protected]对方主机ip: /etc / libvirt / qemu /虚拟机名称. xml /mnt/ | 复制别人主机内虚拟机的 前端文件

  • ***** . xml** 前端文件,在使用硬盘文件安装时会自动创建,可扩展标记语言,一般用作数据分装。

(1)复制对方的虚拟机的硬盘信息 scp [email protected]:/var/lib/libvirt/images/zxyos.qcow2 /mnt/
(2)复制对方的虚拟机的前端文件 scp [email protected]:/etc/libvirt/qemu/zxyos.xml /mnt/
(3)将硬盘信息和硬件信息放在同一个目录下 mv /mnt/zxyos.qcow2 /var/lib/libvirt/images/ 因为硬盘信息是默认在var下的,应该移动,也可以直接在文件里面改,但是容易出错
Linux中虚拟机的安装及虚拟化管理
(5)virsh create /mnt/zxyos.xml 一次性使用复制的虚拟机 ,关掉就没有了
Linux中虚拟机的安装及虚拟化管理
(6)virsh define /mnt/westos.xml 永久性使用虚拟机 ,关掉依然在

四、虚拟机的快照

  • 磁盘快照” : 是虚拟机磁盘文件(VMDK)在某个点及时的复本
  • 用一个文件放到真实的文件面前 ,看到的是真实的文件, 使用的是快照,不对的时候舍弃快照,再拿来一个新的
  • 在真机的root下面进行 其实所有改的都是原来的虚拟机信息

1.手动建立虚拟机脚本

qemu-img create -f qcow2 -b 被复制硬盘路径 复制得到的硬盘路径

2.使用脚本建立快照

  mkdir shell
  vim vm_creare.sh
  
编辑:
  
  #!/bin/bash                               |脚本运行的环境
  echo “createing $1…”
    virt-install \                              |进行快照的安装
    --name $1 \                              |快照的名称
    --cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso --vcpus 1   |设定快照cpu的个数
    --memory 1024                            |设定快照的内存
    --disk /var/lib/libvirt/images/test.qcow2,bus=virtio,size=6           |设定快照的cpu
    --name test
    --import                                |选择快照本地导入
    --network bridge=br0,model=virtio &>/dev/null &              |设定快照的网络
  echo “created $1”
  chmod +x vm_create.sh
  /opt/shell/vm_create.sh xx

Linux中虚拟机的安装及虚拟化管理   Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理

课堂小测试:

Linux中虚拟机的安装及虚拟化管理    Linux中虚拟机的安装及虚拟化管理
在shell中:输入install,则安装westos虚拟机;
输入snapvm,则安装快照westos的node1虚拟机;
输入delete,则删除虚拟机westos;
输入其他字符,则输出error。
Linux中虚拟机的安装及虚拟化管理  Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理
Linux中虚拟机的安装及虚拟化管理