在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机
前提:服务器端安装桌面版的centos系统
CentOS Linux release 7.5.1804 (Core)
 

 
(1)
检测是否支持KVM
KVM 是基于 x86 虚拟化扩展(Intel VT 或者 AMD-V) 技术的虚拟机软件,所以查看 CPU 是否支持 VT 技术,就可以判断是否支持KVM。有返回结果,如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的。
cat /proc/cpuinfo | egrep 'vmx|svm
 

 
(2)关闭SELinux,将 /etc/sysconfig/selinux 中的 SELinux=enforcing 修改为 SELinux=disabled
[root@healthserver ~]# nano /etc/sysconfig/selinux

 
(3)最小安装的CentOS安装一些最基本的包(可选项,因为我是刚安装好的CentOS,所以为了下面方便点,先把一些必要的工具安装下)
yum install epel-release net-tools vim unzip zip wget ftp -y
# 安装 kvm 基础包# ------------------------
yum -y install kvm
# 安装 kvm 管理工具# ------------------------
yum -y install qemu-kvm python-virtinst libvirt libvirt-python virt-manager libguestfs-tools bridge-utils virt-install
# qemu-kvm: KVM模块
# pyhon-virtinst: 包含python模块和工具(virt-install,virt-clone和virt-image),
# 用于安装和克隆虚拟机使用libvirt。 它完全支持paravirtulized客人和客人虚拟客人。
# 支持的虚拟机管理程序是Xen,qemu(QEMU)和kvm# libvirt: 虚拟管理模块# virt-manager: 图形界面管理虚拟机
# libguestfs* : virt-cat等命令的支持软件包
# 重启宿主机,以便加载 kvm 模块# ------------------------
reboot(也可不重启)
# 查看KVM模块是否被正确加载
[root@healthserver ~]# lsmod | grep kvm
kvm_intel 174841 0
kvm 578518 1 kvm_intel
irqbypass 13503 1 kvm
 
=========================================================
如果没有加载,运行以下命令:
[root@kevin ~]# modprobe kvm
[root@kevin ~]# modprobe kvm-intel
[root@kevin ~]# lsmod | grep kvm
kvm_intel 170086 0
kvm 566340 1 kvm_intel
irqbypass 13503 1 kvm
=========================================================
内核模块导出了一个名为/dev/kvm的设备,这个设备将虚拟机的的地址空间独立于内核或者任何应用程序的地址空间。
[root@kevin ~]# ll /dev/kvm
crw-rw-rw-. 1 root kvm 10, 232 1月 29 11:56 /dev/kvm
 

 
(4)开启kvm服务,并且设置其开机自动启动
 
systemctl start libvirtd.service
systemctl enable libvirtd.service
 
查看状态操作结果,如下图所示,说明运行情况良好
systemctl status libvirtd
查看状态操作结果,如Active: active (running),说明运行情况良好
systemctl is-enabled libvirtd
 

(5)
安装虚拟机
安装前要设置环境语言为英文LANG="en_US.UTF-8",如果是中文的话某些版本可能会报错。CentOS 7 在这里修改 /etc/locale.conf。这一步可不做,如果有影响在做。
 
如果没有brctl命令(用来管理网桥的工具),则需要安装bridge-utils ,
[root@healthserver ~]# yum -y install bridge-utils
 
然后为centos7配置网卡,由于我们安装的是centos桌面版系统,因此这一步可在服务器端图形界面进行设置,命令行也可以进行设置,此处我们不谈。
 
安装 epel 源
[root@healthserver ~]# yum install epel-release
 
libvirt是管理虚拟机的API库,不仅支持KVM虚拟机,也可以管理Xen等方案下的虚拟机。
 
[root@healthserver ~]# yum install virt-manager libvirt libvirt-Python python-virtinst libvirt-client virt-viewer qemu-kvm
 
因为我的主机是服务器,没有图形化界面,想要用virt-manager图形化安装虚拟机,还需要安装X-window。
 
[root@healthserver ~]# yum install libXdmcp libXmu libxkbfile xkeyboard-config xorg-x11-xauth xorg-x11-xkb-utils
 
开启libvirt服务
[root@healthserver ~]# cd /etc/yum.repos.d/
[root@healthserver yum.repos.d]# service libvirtd start
 
至此,前期准备已经完成,下面开始安装虚拟机
 
 
 
检查模块是否有加载
[root@healthserver ~]# virsh -c qemu:///system
安装桥接管理的工具
yum install bridge-utils
安装 GUI 的管理软件
yum install virt-manager
 
 
 
[root@healthserver ~]# /usr/libexec/qemu-kvm -version
QEMU emulator version 1.5.3 (qemu-kvm-1.5.3-156.el7_5.5), Copyright (c) 2003-2008 Fabrice Bellard
 
 
系统配置虚拟机管理工具VNC
 
使用virt-manager gui工具vncserver(服务器端)+vncviewer(windows客户端)管理KVM
 
 
服务器端linux安装vncserver;
[root@healthserver ~]# yum install tigervnc-server -y
 
安装完毕后输入“vncserver”启动VNC。
[root@healthserver tmp]# vncserver
xauth: (stdin):1: bad display name "healthserver:1" in "add" command
New 'healthserver:1 (root)' desktop is healthserver:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/healthserver:1.log
注意:启动后将自动在root/.vnc目录下创建xstartup文件。
输入“vncpasswd”并按回车键确定,开始输入VNC访问密码并按回车键确定。
密码为Elecspn
输入“netstat -tlup | grep vnc”查看VNC使用端口。
注意:VNC访问默认监听如下3个TCP端口:
RFB(Remote FrameBuffer)协议 默认端口 : 5900+显示器号
HTTP协议默认端口 : 5800+显示器号
X协议 默认端口 : 6000+显示器号
[root@healthserver tmp]# netstat -tlup | grep vnc
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 41343/Xvnc
tcp 0 0 0.0.0.0:cpdlc 0.0.0.0:* LISTEN 39708/Xvnc
tcp 0 0 0.0.0.0:fis 0.0.0.0:* LISTEN 40578/Xvnc
tcp6 0 0 [::]:5901 [::]:* LISTEN 41343/Xvnc
tcp6 0 0 [::]:cpdlc [::]:* LISTEN 39708/Xvnc
tcp6 0 0 [::]:fis [::]:* LISTEN 40578/Xvnc
输入“iptables -I INPUT -p tcp --dport 5901 -j ACCEPT”添加5901端口到iptables,同理可添加5908 5909等端口(如果有)。
 
输入“systemctl restart iptables.service”重启iptables服务(不建议停止)。
确认iptables重启无误后输入“service iptables save”保存。
 
客户端windows安装vncviewer;
安装省略
 
在执行:
[root@healthserver ~]# virt-manager
 
自动跳出vnc viewer操作界面,
Windows里面的VNC Viewer软件
“VNC Server”框里面输入服务器地址+端口:192.168.1.213:5901
“name”填写centos登录用户名root
注意:数字由第五步server.ytyzx.org:1确定,本例中为1。 1对应5901端口,以此类推9对应5909端口,如超过100则需使用完整端口号。
 
接续输入密码就可完成远程登录。
 
 
当我们推出vnc并重新登录时,执行步骤:
 
 
[root@healthserver ~]# vncserver
 
New 'healthserver:4 (root)' desktop is healthserver:4
 
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/healthserver:4.log
 
表明此时端口号变为5904 ,不是之前的5901
则VNC Server的地址变为:192.168.1.213:5904 密码Elecspn
 

 
(6)在远程桌面中使用KVM创建虚拟机
 
启动服务
service libvirtd start
输入命令brctl show 显示一下信息表示OK
 
[root@healthserver ~]# brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.525400dd3c25 yes virbr0-nic
 
输入命令,启动kvm图形化管理界面,进行虚拟机的创建。
[root@healthserver ~]# virt-manager
 
在centos服务器端,则可进入kvm图形化管理界面。
 
 
 
选择好Ubuntu16.04桌面版的iso镜像文件(自己放进去),
 
设置虚拟机属性:
 
 
 
已有的存储卷容量不满足我们的存储要求,则新建存储池,如下:
 
[root@healthserver mapper]# virsh -c qemu:///system
欢迎使用 virsh,虚拟化的交互式终端。
 
输入:'help' 来获得命令的帮助信息
'quit' 退出
 
virsh # pool-list
名称 状态 自动开始
-------------------------------------------
default 活动 是
xlp 活动 是
 
 
查看某一存储池的具体信息(以XML形式存在)
 
virsh # pool-dumpxml xlp <pool type='dir'>
<name>xlp</name>
<uuid>ed5c8657-35ba-479d-80a3-27c03b7ec445</uuid>
<capacity unit='bytes'>53660876800</capacity>
<allocation unit='bytes'>16004517888</allocation>
<available unit='bytes'>37656358912</available>
<source> </source>
<target>
<path>/run/media/root/26f7078f-03f7-4e54-9142-66dc4e38a137/opt/xlp</path> <permissions>
<mode>0755</mode>
<owner>0</owner>
<group>0</group>
<label>unconfined_u:object_r:usr_t:s0</label>
</permissions>
</target>
</pool>
 
 
查看具体信息,结果类似于解析上面的XML:
 
virsh # pool-info xlp
名称: xlp
UUID: ed5c8657-35ba-479d-80a3-27c03b7ec445
状态: running
持久: 是
自动启动: 是
容量: 49.98 GiB
分配: 14.91 GiB
可用: 35.07 GiB
 
上述存储池大小不够!
创建一个新的存储池
这里仿照上面的XML文件,编写一个命为kvmstorage的XML文档,内容如下[位于/home/poolB]
此处省略,换用kvm图形化界面进行创建。步骤如下:
因为自带的存储池容量不足,所以选择“选择或创建自定义存储”选项。
 
 
名字取为“kvmstorage”。类型如下图所示。
 
目标路径选择硬盘中容量较大的,
 
在该硬盘目录下创建文件夹“kvmstorage”,以后数据都存储在该文件夹下。
 
 
 
 
此时就创建成功,查看:
[root@healthserver mapper]# virsh -c qemu:///system
欢迎使用 virsh,虚拟化的交互式终端。
 
输入:'help' 来获得命令的帮助信息
'quit' 退出
 
virsh # pool-info kvmstorage
名称: kvmstorage
UUID: ee843e5f-cf47-4502-a3f1-55c6d11548d9
状态: running
持久: 是
自动启动: 是
容量: 14.49 TiB
分配: 3.62 GiB
可用: 14.48 TiB
 
virsh #
 
 
现在在kvmstorage存储池下创建分存储卷,点击“+”,创建存储卷kvm1,设置如下
 
 
 
 
 
 
现在正式进入Ubuntu16.04桌面版的安装过程。
按照步骤进行安装即可。
(注:如果安装时你选的镜像文件时Ubuntu16.04 的server版本的话,安装时几乎每一步都直接默认即可,安装语言默认英文,不要选中文,否则安装不成功!)
 
 
 

 
(7)重新打开KVM并创建虚拟机
 
在vnc远程界面的命令行中输入:
 
[root@healthserver ~]# virt-manager
弹出kvm界面。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

(亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)的更多相关文章

  1. IDEA安装actiBPM插件,亲测成功!避免直接在线安装或下载jar包硬盘都会报错问题!

    在安装actiBPM之前先对IEDA进行如下设置: 开始安装网上的教程直接IDEA安装actiBPM,能安装成功,但无法打开新建bpmn文件.多次重新安装重启还是不行,苦苦弄了几个小时,最后才找到下面 ...

  2. CentOS7配置图形界面及设置vnc远程连接、windows远程桌面连接

    安装CentOS桌面 yum groupinstall "GNOME Desktop" 重启,进入终端,将启动模式变更为图形模式 systemctl set-default gra ...

  3. Caffe初学者第一部:Ubuntu14.04上安装caffe(CPU)+Python的详细过程 (亲测成功, 20180524更新)

    前言: 最近在学习深度学习,最先要解决的当然是开源框架的环境安装了.之前一直在学习谷歌的Tensorflow开源框架,最近实验中需要跟别人的算法比较,下载的别人的代码很多都是Caffe的,所以想着搭建 ...

  4. eclipse 安装 activiti-designer-5.18.0,亲测成功

    转: eclipse 安装 activiti-designer-5.18.0,亲测成功 2018年06月02日 15:50:05 ldw4033 阅读数:2826   版权声明:本文为博主原创文章,未 ...

  5. 华为荣耀畅玩5C NEM-UL10 ROOT那些事儿(亲测成功)

    以前ROOT手机都是在手机上安装KingRoot 刷机精灵等软件分分钟成功(不排除偶然,,比如这款华为荣耀...) 手机安装KingRoot等软件,,,失败   电脑上安装连接手机Root,,,,失败 ...

  6. 【转】Win7下VS2010中配置Opencv2.4.4的方法(32位和64位都有效)(亲测成功)

    在vs2010下配置opencv是件痛苦的事情,一点点错误可能就会导致莫名其妙的报错,各种error让人郁闷不已,这里提供给大家一篇vs2010下配置opencv2.4.4的方法,我是64位的win7 ...

  7. Linux CentOS-7.0上安装Tomcat7

    Linux CentOS-7.0上安装Tomcat7   安装说明 安装环境:CentOS-7.0.1406安装方式:源码安装 软件:apache-tomcat-7.0.29.tar.gz 下载地址: ...

  8. webstorm2017.3最新激活教程(激活码、注册码)亲测成功

    1 前言 webstorm2017.3最新激活教程(旧版本可用,亲测成功,有疑问随时联系),20180411测试成功,还是注册机靠谱~ 2 下载地址 链接: https://pan.baidu.com ...

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

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

随机推荐

  1. 爸爸在家庭中最应该扮演的角色,是爸爸本爸!zz

    不然呢?还是爸爸应该cosplay什么物种?细想下,爸爸这个角色很多人是不称职的,经常加班或完全不管孩子的隐形人.肆意把脾气撒在孩子身上的炸弹君.动不动就不耐烦的刺猬......孩子经常挂在嘴边的不是 ...

  2. BJOI2018 简要题解

    二进制 序列上线段树维护DDP好题. 题解可以看这篇 代码: #include<bits/stdc++.h> #define ri register int using namespace ...

  3. golang 快速排序及二分查找

    二分查找 func main() { arr := []int{0, 1, 2, 3, 4, 5, 6} fmt.Println(BinarySearch(arr, 5)) } func Binary ...

  4. python sort()方法

    https://www.cnblogs.com/whaben/p/6495702.html https://www.cnblogs.com/sunny3312/p/6260472.html

  5. 使用pdf.js预览实现读取服务器外部文件

    不知道大家使用百度网盘的文件预览功能,f12看过控制台没有. 发现百度网盘使用的预览文件功能全是基于开源pdf .js的 接下来正题,我们在使用pdf.js默认是读取发布容器内部的文件,读取外部的文件 ...

  6. python_flask 基础巩固 (URL传输传递方式)

    URL传输传递@app.route('/'):@app.route('/list/')@app.route('/list/<int:id>/')@app.route('/list/< ...

  7. latex_引用参考文献格式,引用多篇参考文献

    以下内容在TeXstudio中实现: LaTeX 标准选项及其样式命令为: \bibliographystyle{type} 共有以下8种: plain,按字母的顺序排列,比较次序为作者.年度和标题. ...

  8. 黑群晖DS3617xs-DSM6.1.7up3/up2 开启ROOT用户,同时SATA改eSATA,挂载NTFS硬盘设置(二)

    这两天闲来没事在某宝上搞了个黑群晖主机就j1900/4G小主机系统是DCM 6.1.7up3 15284版 网上修改的教程很多,走了好多弯路终于搞定我的黑群NAS,现分享给各位道友,有不足的地方请给位 ...

  9. 微软SSAS 错误 Internal error: Invalid enumeration value. Please call customer support! 不是此元素的有效值。

    错误 118 Internal error: Invalid enumeration value. Please call customer support! 不是此元素的有效值. 错误 119 分析 ...

  10. 一、Java和JavaScript

    JavaScript诞生于1995年,所以他得叫我一声姐姐,(*^__^*) .当时它的主要任务就是表单验证,在还没JavaScript的时候,进行表单验证的时候必须要把数据提交到服务器,才能进行表单 ...