使用KVM服务创建虚拟机

本文详细介绍了如何在CentOS上安装和配置KVM,包括设置本地yum源、安装必要的组件、创建NAT模式虚拟机并验证。重点展示了如何使用qemu-kvm和libvirt管理虚拟机,适合Linux虚拟化初学者。
摘要由CSDN通过智能技术生成

kvm的概念

KVM(Kernel-based Virtual Machine)是一个开源软件,基于内核的虚拟化技术,实际是嵌入系统的一个虚拟化模块,通过优化内核来使用虚拟技术,该内核模块使得Linux变成了一个Hypervisor,虚拟机使用 Linux 自身的调度器进行管理。

KVM 是基于虚拟化扩展(Intel VT或者AMD-V)的X86硬件的开源的Linux原生的全虚拟化解决方案。KVM中,虚拟机被实现为常规的Linux进程,由标准Linux调度程序进行调度;虚机的每个虚拟CPU被实现为一个常规的Linux进程。这使得KVM能够使用 Linux内核的已有功能。但是,KVM本身不执行任何硬件模拟,需要客户空间程序通过/dev/kvm接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序是QEMU。
前期准备

使用 VMWare Workstation 软件安装 CentOS 7.2 操作系统,镜像使用提供的CentOS-7-x86_64-DVD-1511.iso,关闭防火墙并且配置 SELinux 规则,配置 IP 地址。YUM源使用提供的 kvm_yum 文件夹【VMware 虚拟机直接使用 centos 镜像安装,不需要提供的文件夹】
案例实施

1.安装KVM

    配置本地yum源。

    [root@localhost ~]rm -rf /etc/yum.repos.d/*

    [root@localhost ~]# vi /etc/yum.repos.d/local.repo

    [centos]

    name=centos

    baseurl=file:///opt/centos7.2

    gpgcheck=0

    enabled=1

    [root@localhost ~]mkdir /opt/centos7.2

    [root@localhost ~]mount CentOS-7-x86_64-DVD-1511.iso /opt/centos7.2

    关闭防火墙。

    [root@localhost ~]systemctl stop firewalld

    [root@localhost ~]setenforce 0

    使用yum安装KVM的主要组件及工具。

    [root@localhost ~]yum install qemu-kvm openssl libvirt -y net-tools

    命令解释:

    qemu-kvm qemu-img (qcow2,raw)作用:管理虚拟机的虚拟磁盘
    openssl: 进行安全通信,避免窃听,同时确认另一端连接者的身份
    libvirt 作用: 虚拟机的管理软件

    启动libvirtd服务。

    [root@localhost ~]systemctl start libvirtd

    将/usr/libexec/qemu-kvm 链接为/usr/bin/qemu-kvm。

    [root@localhost ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm

2.创建 NAT 模式 KVM 虚拟机

    将cirros-0.3.3-x86_64-disk.img镜像与qemu-ifup-NAT脚本文件上传到系统/root目录下。

 

    给脚本赋予执行权限。

    [root@localhost ~]# chmod +x /root/qemu-ifup-NAT

    通过 qemu-kvm 命令启动 KVM 虚拟机。

    [root@localhost ~]#qemu-kvm -m 1024 -drive file=/root/cirros-0.3.3-x86_64-disk.img,if=virtio -net nic,model=virtio -net tap,script=/root/qemu-ifup-NAT -nographic -vnc :1

        -m 内存大小
        drive file=/root/cirros-0.3.3-x86_64-disk.img 硬盘映像文件路径,采用这个镜像
        -net tap,[script=file]:通过物理机的TAP网络接口连接,可使用script=file指定的脚本(默认为/etc/qemu-ifup)来配置当前网络接口
        -nographic:默认情况下,qemu使用SDL来显示VGA输出,而此选项用于禁止图形接口,此时qemu类似于一个简单的命令行程序,其仿真串口设备将被重定向到控制台

3.验证

     创建虚拟机完成后,cirros 用户登录虚拟机,输入用户名为 cirros,密码为 cubswin:)。然后输入 ip addr list 命令查询 IP 地址,最后输入 route -n 命令查询路由表。示例代码如下:

 

 查询后,退出KVM虚拟机,代码如下所示:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值