美文网首页
基于KVM的虚拟机环境搭建

基于KVM的虚拟机环境搭建

作者: 扶海狐 | 来源:发表于2019-03-18 18:45 被阅读0次

    一 使用KVM的原因

    云计算(云存储、云计算、软件定义网络、openstack等技术)测试需要搭建分布式节点,在作小型实验环境的时候,使用虚拟机模拟硬件环境可以减少成本,也更方便管理,可以更快帮助新手入门。
    virtual box是一个跨平台虚拟化软件,也有很多用户,但是在选型过程中,发现经常性报错,认为不是很稳定,不适合新手入门;而KVM是linux内核的一部分,也是目前事实上的开源虚拟化标准解决方案,比如openstack底层就默认使用KVM做虚拟化。

    二 环境信息

    cpu:Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz //4core
    mem:total 7686,swap 7935
    os:Linux promote.cache-dns.local 3.10.0-957.el7.x86_64

    三 KVM介绍

    Kernel-based Virtual Machine,基于内核的虚拟机。
    开源,linux core 2.6 之后集成在linux内核中,是内核模块的一部分;
    性能,主板级别访问稳定;
    稳定,目前共有云环境70%的市场;

    四 KVM安装

    1. 查看CPU是否支持VMX
    grep -E -o 'vmx|svm' /proc/cpuinfo
    

    如下结果表示CPU支持VMX虚拟化:


    KVM_Check_01.png
    1. 打开VMX虚拟化
    • BIOS虚拟化开关
      开机进入 BIOS,通常在【secruity】设置项下,将 【Virtualization Technology】(不同主板可能叫法不一样,就是虚拟化技术的意思)设置为【enabled】。

    • VMX模式

    modprobe kvm
    lsmod|grep kvm
    

    如下结果表示KVM模块已经加载:


    KVM_Check_02.png

    如下结果表示CPU支持未打开,参考上一步,打开BIOS虚拟化开关:


    KVM_Check_03.png
    1. 安装libvirt管理工具
    yum install -y qemu-kvm 
    yum install -y libvirt-bin
    yum install -y virt-manager
    
    1. 创建镜像池路径
      选择磁盘可用空间较大的挂载点,同常选择【/home】路径
    • 创建镜像池路径
    mkdir /home/iso;
    mkdir /home/data
    
    • 下载系统镜像
    cd /home/iso;
    wget http://mirrors.neusoft.edu.cn/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso
    
    • 创建磁盘镜像
      见下文第六部分

    五 虚拟网络配置(暂使用默认网络配置)

    • 增加虚拟网卡
    brctl addbr cent-virt
    ifconfig  cent-virt 192.168.100.1/24
    ip link set cent-virt up
    
    • NAT虚拟网络
    • Bridge虚拟网络
    • 网络配置文件
    <network>
      <name>centos-nat</name>
      <uuid>e64eeef7-9be3-4db2-9cc0-2e2cddd966e9</uuid>
      <forward mode='nat'/>
      <bridge name='cent-virt' stp='on' delay='0'/>
      <mac address='52:54:00:c7:19:22'/>
      <ip address='192.168.100.1' netmask='255.255.255.0'>
        <dhcp>
          <range start='192.168.122.2' end='192.168.122.254'/>
        </dhcp>
      </ip>
    </network>
    

    六 使用GUI进行虚拟机管理

    1. 创建
    • 启动virt
    virt-manager
    
    KVM_Manager_01.png
    • 创建磁盘镜像
      [Edit]-->[Connection details],选择[Storage]
      KVM_Manager_05.png
      点击左下角[+]创建硬盘镜像池
      KVM_Manager_06.png
      [Forward]选择硬盘镜像池的挂载路径
      KVM_Manager_07.png
      选择[第四节]中创建的磁盘镜像池路径 /home/data
      点击[Volume]右侧[+]创建磁盘镜像
      KVM_Manager_08.png
      命名、设置磁盘空间
      KVM_Manager_09.png
    • 开始创建虚拟机


      KVM_Manager_02.png

      选择本地媒介安装,点击[Foreard]

    • 从系统镜像存放路径中选择之前下载的镜像文件 /home/iso/CentOS-7-x86_64-Minimal-1810.iso


      KVM_Manager_03.png
    • 设置内存和CPU资源,此处根据需要设定


      KVM_Manager_04.png
    • 选择已存在的磁盘镜像


      KVM_Manager_10.png
    • 命名、网络选择
      **默认(NAT网络)


      KVM_Manager_11.png
    1. 安装
    • 选择安装[Install CentOS 7]


      KVM_Install_01.png
    • 语言选择[Englisg]


      KVM_Install_02.png
    • 安装设置[SYSTEM]
      KVM_Install_03.png
      [SYSTEM]-->[INSTALLATION DESTINATION]
      KVM_Install_04.png

    [SYSTEM]-->[NETWORK & HOST NAME]

    KVM_Install_05.png
    note:这一步没有操作正确,虚拟机启动之后无法连接网络
    answer:[open]虚拟机,用root用户执行以下命令
    ifup /etc/sysconfig/network-scripts/ifcfg-eth0
    
    • 开始安装、设置root密码**


      KVM_Install_06.png

    等待安装结束

    1. 起停


      KVM_Start_01.png
    • 开启
      选中虚拟机,点击运行,或者右击虚拟机选择[run]
    • 停止
      选中虚拟机,点击停止,或者右击虚拟机选择[shutdown]
    1. 克隆
    • 右击虚拟机选择[clone];


      KVM_Clone_01.png
    • 按照提示进行,注意磁盘镜像选择的位置;


      KVM_Clone_02.png
    • 修改克隆机的IP,并重启网络服务
    1. 添加磁盘
    • 按照前述步骤 创建磁盘镜像,假设镜像名为:newdisk.qcow2
    • 关闭虚拟机
    • 修改配置文件 /etc/libvirt/qemu/[vm-name].xml
      添加到devices
     <disk type='file' device='disk'>
          <driver name='qemu' type='qcow2'/>
          <source file='/home/data/newdisk'/>
          <target dev='vdb' bus='virtio'/>
     </disk>
    
    1. 添加内存

    七 无GUI虚拟机管理

    1. 创建磁盘镜像
    #virsh vol-create --pool [pool-name] --file [configuration-name]
    
    1. 创建虚拟机
    #virt-install
    
    1. 起停虚拟机
    • 启动虚拟机
    #virsh start [vm-name]
    virsh start CentOS7.0-01
    
    • 停止虚拟机
    #virsh shutdown [vm-name]
    virsh shutdown CentOS7.0-01
    
    1. 克隆虚拟机
    #virt-clone -o [origin-vm-name] -n [new-vm-name] -f [new-vm-disk-img-file]
    irt-clone -o CentOS7.0-01 -n CentOS7.0-02 -f /home/data/CentOS7.0-02.qcow2
    
    1. 添加硬盘资源
    #qemu-img create -f [raw\qcow2] [file-path] [size]
    qemu-img create -f qcow2 /home/data/osd.qcow2 50g
    

    参考文档

    linux虚拟化技术
    KVM四种简单网络配置

    相关文章

      网友评论

          本文标题:基于KVM的虚拟机环境搭建

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