zoukankan      html  css  js  c++  java
  • KVM虚拟机平台

    搭建KVM服务器:
    组件:KVM/QEMU/LIBVIRTD
    KVM是Linux内核的模块,它需要CPU的支持,采用硬件辅助虚拟化技术Intel-VT,AMD-V,内存的相关如Intel的EPT和AMD的RVI技术;
    QEMU是一个虚拟化的仿真工具,通过ioctl与内核kvm交互完成对硬件的虚拟化支持;
    Libvirt是一个对虚拟化管理的接口和工具,提供用户端程序virsh,virt-install,virt-manager,virt-view与用户交互。
    软件包:qemu-kvm、libvirt-daemon、libvirt-client、libvirt-daemon-driver-qemu
    可选功能:virt-install系统安装工具、virt-manager图形管理工具、virt-v2v虚拟机迁移工具、virt-p2v物理机迁移工具
    守护程序:libvirtd

    虚拟机的组成:
    -内核虚拟化模块(KVM)
    -系统设备仿真(QEMU)
    -虚拟机管理程序(LIBVIRT)
    XML虚拟机配置文件:/etc/libvirt/qemu/
    磁盘镜像文件(虚拟机的硬盘):/var/lib/libvirt/images/

    virsh工具,可交互,提供管理各虚拟机的命令接口,格式:virsh 控制指令 [虚拟机名称] [参数]
    查看KVM节点:virsh nodeinfo
    列出虚拟机:virsh list [--all]
    列出虚拟网络:virsh net-list [--all]
    查看指定虚拟机:virsh dominfo 虚拟机名称
    运行|重启|关闭指定的虚拟机:virsh start|reboot|shutdown 虚拟机名称
    强制关闭指定的虚拟机:virsh destroy 虚拟机名称
    将指定的虚拟机设为开机自启:virsh autostart 虚拟机名称

    KVM的虚拟机磁盘镜像QCOW2格式支持压缩,后端盘复用,快照。
    qemu-img工具是虚拟机的磁盘管理命令支持raw、qcow2、vdi、vmdk等磁盘格式
    qemu-img命令格式:qemu-img 命令 参数 块文件名称 大小
    常用命令:create、convert、info、snapshot
    创建新的镜像盘文件:qemu-img create -f 磁盘格式 磁盘路径 大小
    使用后端盘模板文件:qemu-img create -b 后端磁盘路径 -f 磁盘格式 磁盘路径
    COW技术原理

    连接本地/远程KVM
    使用virsh连接远程:virsh connect qemu+ssh://user@ip:port/system
    使用virt-manager通过add connection连接管理,但需要使用SSH免密登录,若没有,要单独安装python的ssh相关模块

    创建虚拟交换机
    libvirtd网络接口,原理:调用dnsmasq提供DNS、DHCP等功能
    创建配置文件:/etc/libvirt/qemu/networks/XXXX.xml
    virsh管理虚拟网络:
    net-list
    net-define /etc/libvirt/qemu/networks/XXXX.xml #创建虚拟网络
    net-undefine 虚拟网络文件
    net-start 虚拟网络文件
    net-destroy 虚拟网络文件 #停止虚拟网络
    net-edit 虚拟网络文件
    net-autostart 虚拟网络文件

    xml虚拟机文件管理:
    默认文件:/etc/libvirt/qemu/...xml
    导出:virsh dumpxml 虚拟机名 > 虚拟机名.xml
    对虚拟机的配置进行调整:virsh edit 虚拟机名
    创建新虚拟机:virsh define XML虚拟机文件
    删除虚拟机:virsh undefine 虚拟机名


    自定义虚拟机模板:
    1.创建虚拟机,配置好自己需要的文件,软件等
    2.保存虚拟机配置文件,并打开然后删除id属性和uuid属性
    3.可以删除<resource>资源配置和<clock>等,主要修改为符合自身需要特性

    离线访问虚拟机,使用guestmount工具,方便对虚拟机定制、修复等
    基本用法:guestmount -a 虚拟机磁盘路径 -i 挂载点

  • 相关阅读:
    C/C++优秀书籍清单
    C语言内存管理详解
    C/C++语言常用头文件及函数
    如何学好C++语言
    VS2010 更改MFC标题及标题栏图标和exe图标
    Vue 实现前进刷新,后退不刷新的效果 玩转vue-router里的meta
    $nextTick 页面局部刷新 延迟加载
    吸顶动画 侧边栏 监听滚动条位置 监听元素距离顶部高度
    vue 自定义侧边栏 递归无限子级菜单
    vue element NavMenu 莫名出现蓝色边框
  • 原文地址:https://www.cnblogs.com/Haihong72H/p/12679236.html
Copyright © 2011-2022 走看看