美文网首页
kvm 问题

kvm 问题

作者: 断水流大师兄vs魔鬼筋肉人 | 来源:发表于2023-11-09 09:47 被阅读0次

    virt-manager进入后,新建虚拟机报错
    启动管理器出错:unsupported format character .... index 30
    语言错误: export LANG=c
    迁移只能高版本低版本迁移

    一:完全拷贝

    拷贝镜像和对应的配置文件(一般在 /etc/libvirt/qemu)
    转换镜像格式:缩小迁移的磁盘大小 -O 指定磁盘格式 (前提:硬盘支持缩小)
    qemu-img convert -O qcow2 test.img new-test.img ——转换格式后,容易起不来-和配置文件冲突

    迁移的目标:(前提是 原来的img 位置和配置文件的路径不变)
    virsh define test.xml(迁移的虚拟机配置文件)
    虚拟机已经添加好了。但是需要重新配置网卡才能启动,否则会存在IP冲突
    路径不对应就需要修改test.xml 里面的路径


    增加磁盘空间:
    qemu-img resize test-new.img +50G
    还得去虚拟机里面扩容
    前提安装libguestfs-tools工具包。关闭虚拟机

    yum -y install libguestfs-tools

    A,新建一个大镜像

    qemu-img create -f qcow2 test2.img 100G

    注意,这里的img大小是你需要拓展的总大小
    B,使用virt-resize进行拉升分区

    #virt-resize —expand   /dev/vda1  /var/lib/libvirt/images/test.img     /var/lib/libvirt/images/test2.img
    

    内容导入完全的话,老的镜像内容会全部在新的镜像里面
    注意,此时间很长,请耐心等待
    C.使用新扩展的镜像代替原镜像

     #mv /var/lib/libvirt/images/test2.img /var/lib/libvirt/images/test.img  (老的镜像被替换掉)
    cp /var/lib/libvirt/images/test2.img /var/lib/libvirt/images/test.img  (老的镜像还能保留)
    

    D,启动虚拟机

    virsh start test
    

    拓展完成,
    virt-resize的优势:能对虚拟机中的特定的分区进行拓展。并且能够拓展windows镜像。不需要登录到虚拟机里面进行任何操作。
    缺点:拓展的时候需要关机。对于大的镜像,拓展的时间比较长。(几个小时的样子)
    kvm虚拟机问题:
    执行 virsh define test.xml (迁移新的虚拟机)
    中断后会造成kvm 被锁死的情况
    需要重启 libvirtd 一般会报错 service libvirtd restart
    ps -ef|grep 'libvirtd –daemon'
    杀死进程即可解决
    在重启 service libvirtd restart 后果
    但是会造成 物理机网络重启,防火墙开启的情况。——线上瞬间爆炸,对外提供的访问断开
    或者killall dmidecode 可能爆炸


    同版本的kvm迁移简单易成功,不通版本可能存在问题。
    后面决定升级老版本的kvm
    卸载老的:

    先清楚所有的libvirt环境。rpm -qa | grep libvirt
    yum remove 卸载
    删除对应的目录
    

    安装基本看提示结局问题,
    结局yum源后
    必装:gcc gcc-c++ automake libtool zlib-devel glib2-devel bzip2-devel libuuid-devel spice-protocol spice-server-devel usbredir-devel libaio-devel libvirt python-libvirt virt-sysprep libguestfs-tools libvirt-manger

    kvm 在centos7以上有个坑,创建桥接网络会把网口down,需要启动网口才行
    yum install -y kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager libvirt libvirt-python python-virtinst libguestfs-tools libguestfs-winsupport
    或者yum -y groupinstall KVM
    注:依赖包不好解决时采用暴力安装,如下:
    yum -y groupinstall \*X\* \*Virt\*
    2.检查kvm模块是否安装:
    lsmod | grep kvm
    [root@kvm034 ~]# lsmod | grep kvm
    kvm_intel              54285  0 
    kvm                   333172  1 kvm_intel
    3.启动virt-manager管理界面
    service libvirtd start
    chkconfig  libvirtd  on
    virt-manager
    4. 创建网卡桥接
    virsh  iface-bridge em1【物理机网口】 br0【虚拟】   centos7的坑,会导致网口down,网路不可用
     virsh  iface-bridge --interface eth0 --bridge br0       --可以试试,不会网络中断
    [root@kvm034 ~]# virsh iface-bridge em1 br0
    Created bridge br0 with attached device em1
    Bridge interface br0 started
    类似于【https://blog.51cto.com/cubix/1736750】
    

    【kvm详解】
    https://www.cnblogs.com/hukey/p/11246126.html

    相关文章

      网友评论

          本文标题:kvm 问题

          本文链接:https://www.haomeiwen.com/subject/ljofbqtx.html