1.认识理解KVM虚拟机

Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。
它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。
KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。
而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己的进程调度器,存储管理模块等,所以代码较为庞大。
广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。

2.探讨目标
在CentOS7母机系统上安装KVM服务,并启动一个CentOS虚拟机

安装说明
KVM建立在母机系统上,因此对机器有一定的配置要求,比如svm, selinux等,这些基本问题不大。
另外有网友说不能用VMware虚拟机做母机安装KVM,本次实验用的母机系统使用的是VMware Workstation 14 Pro安装的CentOS7,结果证明可以使用。

KVM使用libvirt这个开源的API进行管理。
libvirt是提供了一个方便的方式来管理虚拟机和其他虚拟化功能的软件的集合,如存储和网络接口管理。这些软件包括一个API库,一个守护进程(Libvirtd),和一个命令行实用程序(virsh)。
libvirt的首要目标是能够管理多个不同的虚拟化供应商/虚拟机管理程序提供一个单一的方式。例如,命令“virsh列表等等都可以用于任何支持现有的虚拟机管理程序列表(KVM、Xen、VMware ESX,等)不需要学习管理程序特定的工具!

3.依赖包安装
yum install -y qemu-kvm libvirt virt-install bridge-utils
安装完上述依赖包好最好重启一下服务器

查看KVM安装的状态,可以使用lsmod查看状态
[root@linux-node1]# lsmod |grep kvm

有上面三行输出,说明KVM安装成功

4.管理服务
启动libvirtd守护进程
systemctl start libvirtd
systemctl status libvirtd

5.安装虚拟机
首先需要下载一个镜像文件到母机本地
我们的KVM虚拟机将要安装CentOS系统,于是到CentOS官网找一个镜像的下载链接,使用wget命令下载到本地
之前测试将镜像下载到/root目录,结果安装开始时提示无法读取镜像文件,为了避免权限问题,我们将镜像文件下载到/home目录
wget http://mirrors.163.com/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso -P /home/

执行安装虚拟机命令:

virt-install \
--virt-type=kvm \
--name=kvm- \
--vcpus= \
--memory= \
--location=/home/CentOS--x86_64-Minimal-.iso \
--disk path=/data/vms/kvm-.qcow2,size=,format=qcow2 \
--network bridge=virbr0 \
--graphics none \
--extra-args='console=ttyS0' \
--force

参数解析:
--name=kvm-1   虚拟机名字为kvm-1
--vcpus=2        2个虚拟CPU核心
--memory=2048      2G内存
--disk path=/data/vms/kvm-1.qcow2,size=15,format=qcow2   虚拟机硬盘文件所在目录及名字,大小为15G,格式为qcow2,此参数会自动生成该硬盘文件在对应目录
--network bridge=virbr0    虚拟机桥接用的网卡,不一定是这个名字,在母机上用ifconfig查看实际名字 (这里默认使用的是NAT模式,如果要使用Bridge模式,请参考另外一篇文章)

如果一切正常,会进入安装iso安装界面。

上面的设置跟在图形界面安装操作一样,分别进去设置一下就可以继续安装了,设置完如下

然后敲b开始进行安装,成功安装到最后页面:

回车后虚拟机会从开机界面一直进入到登陆界面,输入root和密码就登陆进了虚拟机系统

CentOS Linux (3.10.0-862.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-8707fc0ebc304aecae24959960933077) 7 (Core)

......

[ 10.953832] Netfilter messages via NETLINK v0.30.
[ 10.967303] ip_set: protocol 6

CentOS Linux 7 (Core)
Kernel 3.10.0-862.el7.x86_64 on an x86_64

localhost login: root
Password:
[root@localhost ~]#

查看虚拟机信息

6.退出虚拟机回到母机系统

同时按Ctrl+]

7.重新连接虚拟机
virsh console kvm-1

8.KVM 操作虚拟机常用命令:
列出所有的虚拟机
virsh list --all

显示虚拟机信息
virsh dominfo kvm-1

显示虚拟机内存和cpu的使用情况
yum install virt-top -y
virt-top

显示虚拟机分区信息
virt-df kvm-1

关闭虚拟机(shutodwn)
virsh shutdown kvm-1

启动虚拟机
virsh start kvm-1

设置虚拟机(kvm-1)跟随系统自启
virsh autostart kvm-1

关闭虚拟机自启
virsh autostart --disable kvm-1

删除虚拟机
virsh undefine kvm-1

CentOS 7.5 安装KVM虚拟机(Linux)的更多相关文章

  1. CentOS 7.5 安装KVM虚拟机(Windows)

    一.KVM环境搭建1.检测系统是否支持cat /proc/cpuinfo | egrep 'vmx|svm' KVM是基于x86虚拟化扩展(Intel VT 或者 AMD-V)技术的虚拟机软件,所以查 ...

  2. 命令行安装kvm虚拟机、桥接网络、用virt-manager管理

    宿主机CentOS Linux release 7.2.1511 (Core),内核3.10.0-327.el7.x86_64 1.配置宿主机网络桥接 想让虚拟机有自己的ip且外网可访问,需要在安装虚 ...

  3. CentOS 6.5安装KVM实践

    一,安装CentOS6.5,使用最小化的minimal安装二.安装完CentOS后,使用root登录配置网卡,使虚拟机可以使用外网上网 vi /etc/sysconifg/network-script ...

  4. (转)CentOS7安装KVM虚拟机详解

    原文:https://github.com/jaywcjlove/handbook/blob/master/CentOS/CentOS7%E5%AE%89%E8%A3%85KVM%E8%99%9A%E ...

  5. 6、安装kvm虚拟机

    6.1.虚拟机开启虚拟化: 6.2.检查linux虚拟机cpu是否开启了虚拟化: egrep -o 'vmx|svm' /proc/cpuinfo vmx 6.3.安装kvm管理和安装kvm虚拟机的软 ...

  6. 11.安装KVM虚拟机

    安装KVM虚拟机是一大难题,不按照虚拟机物理机128G内存和强劲的CPU无法充分利用.也不便于后面的jenkins自动部署.安装KVM虚拟机过程我是借鉴了网上下载的马哥linux   KVM那块的内容 ...

  7. Centos7使用pxe安装KVM虚拟机

    Centos7使用pxe安装KVM虚拟机 一.安装服务所需的软件 [root@localhost ~]yum install nginx dhcp vsftpd syslinux -y [root@l ...

  8. centos7安装kvm虚拟机

    一 centos7安装kvm虚拟机 1.验证CPU是否支持KVM 结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. [root@centos ~]# egrep '(vmx| ...

  9. centos6.2安装kvm虚拟机

    http://www.wenzizone.com/2012/03/06/centos_6-2_install_kvm.html KVM虚拟机简介 kernel-based Virtual Machin ...

随机推荐

  1. RabbitMQ主题模式

    Send类 package topics; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; imp ...

  2. [蓝点ZigBee] Zstack 之点亮LED灯 ZigBee/CC2530 视频资料

    LED点灯实验,主要是依据Zstack 现有程序修改LED相关驱动,适配到我们自己的开发板上,我们开发板共有4个LED灯,其中一个是电源指示灯,剩余3个都是GPIO控制的LED灯,有LED 灯连接方式 ...

  3. docker -v挂载

    docker run -d -p 3306:3306 -v /var/lib/mydata:/var/lib/mysql  my_sql docker exec -it mys_sql /bin/ba ...

  4. python系统编程(十二)

    异步 同步调用就是你 喊 你朋友吃饭 ,你朋友在忙 ,你就一直在那等,等你朋友忙完了 ,你们一起去 异步调用就是你 喊 你朋友吃饭 ,你朋友说知道了 ,待会忙完去找你 ,你就去做别的了. from m ...

  5. C++程序设计方法4:模板特化

    模板参数的具体化/特殊化 有时,有些类型不适用,则需要对模板进行特殊化处理,这称为“模板特化” 对函数模板,如果有多个模板参数,则特化时必须提供所有参数的特例类型,不能部分特化: 如: char *s ...

  6. 学习Struts--Chap07:Struts2文件上传和下载

    1.struts2文件上传 1.1.struts2文件上传的基本概述 在开发web应用的时候,我们一般会为用户提供文件上传的功能,比如用户上传一张图像作为头像等.为了能上传文件,我们必须将表单的met ...

  7. 正则表达式零宽断言详解(?=,?<=,?!,?<!)

    在使用正则表达式时,有时我们需要捕获的内容前后必须是特定内容,但又不捕获这些特定内容的时候,零宽断言就起到作用了 正则表达式零宽断言: 零宽断言是正则表达式中的难点,所以重点从匹配原理方面进行分析.零 ...

  8. win7的python3.5安装numpy包

    1.你需要先确保已经安装了pip(因为我是我们需要用pip安装numpy包),我在cmd里面输入pip能显示pip的有关信息,所以我已经安装了pip了(其实是python3.x自带了pip) 如果没有 ...

  9. Servlet(10)—请求转发和请求重定向

    请求转发与请求重定向 ①区别: 本质区别:请求转发只发出一次请求,请求重定向则发出两次请求. 请求转发:地址栏是初次发出请求的地址在最终的Servlet中,request对象和中转的那个request ...

  10. 【jvm】windows下查看java进程下多线程的相关信息

    微软工具:Process Explorer v15.3 下载地址:http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx 参考教程: ...