KVM部署及硬件参数更改
- 格式:docx
- 大小:25.20 KB
- 文档页数:21
KVM是一个基于linux内核的虚拟机解决方案。
本文介绍KVM的使用方法,以及注意要点。
参考资料:KVM虚拟机和QEMU linux brctl先决条件硬件环境CPU硬件虚拟化32位与64位安装KVM虚拟机连网brctl桥接安装以及运行虚拟机kvm常用命令安装虚拟操作系统远程登录先决条件硬件环境x86(包括32位和64位),就是我们常用的系统。
CPU硬件虚拟化kvm需要系统CPU支持,下面命令如果有输出,说明CPU支持硬件虚拟化:egrep "flags.*:.*(svm|vmx)" /proc/cpuinfo32位与64位下面是32bit与64bit和主机系统与虚拟操作系统的关系:总结为一句话:不能在32位主机上装64位的操作系统。
安装KVMyao@debian:~$ apt-get install kvm qemu uml-utilities一般情况下,安装好kvm后能就自动加载内核模块,你也可以手动加载:yao@debian:~$ modprobe kvm_intel #or kvm_amd虚拟机连网虚拟机连网是头等大事,所以我们先解决这个问题。
通过桥接可以实现联网,主要用到的命令有:brctl,ifconfig,tunctl,routebrctlbrctl是一个以太网桥接工具,常见的用法有:如果发现无法删除网桥,那么可能是还没有将其关闭:yao@twomoon:~$ sudo brctl delbr br0bridge br0 is still up; can't delete ityao@twomoon:~$ sudo ifconfig br0 downyao@twomoon:~$ sudo brctl delbr br0桥接说了这么多,到这才是重点。
首先,将物理网卡桥接:yao@twomoon:~$ ifconfig -a |grep etheth0 Link encap:Ethernet HWaddr 90:fb:a6:14:cd:42yao@twomoon:~$ brctl addbr br0yao@twomoon:~$ brctl addif br0 eth0yao@twomoon:~$ ifconfig eth0 0.0.0.0yao@twomoon:~$ ifconfig br0 192.168.1.51 up这样又多了一个网络设备br0:yao@twomoon:~$ LANG=C ifconfig -a |grep Ethernetbr0 Link encap:Ethernet HWaddr 2a:24:d3:aa:99:e7eth0 Link encap:Ethernet HWaddr 90:fb:a6:14:cd:42如果没有弄明白为什么,可以上网找找桥接的资料和brctl的用法。
一、查看cpu是否支持kvmKVM 需要有CPU 的支持(Intel vmx或AMD svm),在安装KVM 之前检查一下CPU 是否提供了虚拟技术的支持:egrep '(vmx|svm)' --color=always /proc/cpuinfo如果输出的结果包含VMX,它是Intel处理器虚拟机技术标志:如果包含SVM,它是AMD 处理器虚拟机技术的标志,如果你什么都没有得到,那应你的系统并没有支持虚拟化的处理,不能使用KVM,另处linux发行版本必须在64bit环境中才能使用KVM。
二、BIOS中开启Virtual Technolege在主板BIOS中开启CPU的Virtual Technolege(VT,虚化技术),不同主板所在菜单不同例如:华硕主板开启虚拟化Intel主板开启虚拟化三、安装KVM服务器安装KVM 虚拟机和安装其他服务器一样,在选择操作系统类型是选择“Virtual Host”即可,其它步骤可参考“AiSchool平台安装指导”中操作系统安装部分。
如果使用此服务器管理其他KVM 主机,需要额外安装openssh-askpass软件包。
注:(已安装好的操作系统,里面有重要资料无法重新安装的可以在已有的系统上安装如下软件包yum install kvmkmod-kvmqemukvm-qemu-imgvirt-viewer virt-manager libvirtlibvirt-python python-virtinstopenssh-askpass或者如下图,安装需要的组四、检查kvm模块是否安装使用以下命令显示两个模块则表示安装完成[root@vm76 ~]# lsmod | grepkvmkvm_intel54285 0kvm 333172 1 kvm_intel以上表明安装完成五、配置宿主机1、关闭防火墙(如不用)chkconfigiptables offserviceiptables stop2、执行如下命令打开文件selinux配置文件。
KVM(多电脑切换器)KVM:Keyboard Video Mouse的缩写。
KVM 交换机通过直接连接键盘、视频和⿏标 (KVM) 端⼝,让您能够访问和控制计算机。
KVM 技术⽆需⽬标服务器修改软件。
这就意味着可以在 Windows 的 BIOS 环境下,随时访问⽬标计算机。
KVM 提供真正的主板级别访问,并⽀持多平台服务器和串⾏设备。
KVM 技术已经从最初的基础SOHO办公型,发展成为企业 IT 基础机房设施管理系统。
可以从kvm 客户端管理软件轻松的直接访问位于多个远程位置的服务器和设备。
KVM over IP 解决⽅案具备完善的多地点故障转移功能、符合新服务器管理标准 (IPMI)的直接界⾯,以及将本地存储媒体映射⾄远程位置的功能。
KVM Keyboard Video Mouse 计算机技术⽀持多平台服务器和串⾏设备⽹络中的管理设备⽀持串⼝overIP远程调试串⼝设备1 KVM的发展模拟 KVM 技术交换机系统直接连接任意计算机上的键盘、视频和⿏标。
它提供完全独⽴于软件和⽹络操作系统的简易即插即⽤安装系统,并使⽤户能够对多台计算机进⾏实时访问。
模拟 KVM 最适⽤于⽤户和系统处于同⼀位置的环境,是访问集中化多 PC 和多机架环境的理想技术。
KVM over IPKVM over IP将键盘、视频和⿏标数据数字化,并使⽤ IP 技术移动 KVM 数据。
KVM over IP 直接连接⾄任意计算机上的 KVM 信号,⽆需侵⼊计算机,⽆需添加软件/硬件。
该技术利⽤了现有⽹络基础设施,⽀持本地和远程⽤户。
KVM over IP 在不同硬件环境中⼯作,是管理多地点数据中⼼和分⽀办公室的理想技术。
KVM over IP设备⼀般具备⼀个本地⽤户和多个远程⽤户,实现多⽤户同时管理服务器。
3G KVM3G KVM 定义了⼀种新的远程访问⽅法。
通过移动互联⽹(3G ⽹络)提供更为便利的远程KVM(Keyboard, Video, Mouse)控制。
linux下配置和安装KVM虚拟机的步骤最近要在外⽹搞⼀套监控系统,正好有⼀台服务器配置⽐较⾼,也没跑什么重要的业务,就拿来划了⼀个KVM虚拟机,可能是平时各种虚拟机⽤的⽐较多,配置起来感觉⽐想象中简单的多,简单记录下过程准备⼯作宿主机为centos 6.8 64位,检查宿主机CPU是否⽀持虚拟化:cat /proc/cpuinfo | egrep '(vmx|svm)' | wc -l;结果⼤于0表⽰⽀持安装kvmKVM核⼼软件包:复制代码代码如下:yum install kvm libvirt python-virtinst qemu-kvm virt-viewer bridge-utils如果服务器上有桌⾯环境,想使⽤图形界⾯管理器virt-manager,可以安装完整的KVM环境:复制代码代码如下:yum groupinstall Virtualization 'Virtualization Client' 'Virtualization Platform' 'Virtualization Tools'验证内核模块是否加载:lsmod | grep kvm启动虚拟机管理接⼝服务:/etc/init.d/libvirtd start设置开机启动:chkconfig libvirtd on启动libvirtd后,会⾃动创建了⼀个⽹卡,并启动dnsmasq服务,⽤来为虚拟机分配IP地址创建虚拟机下载虚拟机要安装的ISO系统镜像⽂件,之后需创建存储池,指定在宿主机上虚拟机磁盘的存储位置,创建存储⽬录:mkdir -p /opt/kvm定义⼀个储存池和绑定⽬录:virsh pool-define-as vmspool --type dir --target /opt/kvm建⽴并激活存储池:virsh pool-build vmspoolvirsh pool-start vmspool使⽤存储池创建虚拟机,并通过vnc连接:virt-install \--hvm \ #全虚拟化--name=zabbix \#虚拟机名字--ram=4096 \ #分配内存--vcpus=4 \ #分配CPU数--cdrom=/opt/kvm/iso/CentOS-7-x86_64-DVD-1511.iso \ #使⽤的ISO--virt-type=kvm \ #虚拟机类型--disk path=/opt/kvm/zabbix.qcow2,device=disk,format=qcow2,bus=virtio,cache=writeback,size=100 \ #磁盘⼤⼩,格式--network netwrok=default \ #⽹络设置,defalut为NAT模式--accelerate \ #KVM内核加速--graphics vnc,listen=0.0.0.0,port=5922,password=123123\ #vnc配置--force \--autostart之后使⽤vnc客户端连接宿主机IP:5922,即可使⽤图形安装系统;也可以选择nographics模式,⽆需vnc在命令⾏下安装,建议使⽤vnc安装完成后会⽣成:虚拟机的配置⽂件:/etc/libvirt/qemu/zabbix.xml虚拟硬盘⽂件:/opt/kvm/zabbix.qcow2NAT⽹络配置⽂件:/etc/libvirt/qemu/networks/default.xml配置⽹络KVM可以配置两种:NAT⽹络: 虚拟机使⽤宿主机的⽹络访问公⽹,宿主机和虚拟机能互相访问,但不⽀持外部访问虚拟机桥接⽹络:虚拟机复⽤宿主机物理⽹卡,虚拟机与宿主机在⽹络中⾓⾊完全相同,⽀持外部访问配置NAT⽹络默认会有⼀个叫default的NAT虚拟⽹络,查看NAT⽹络:virsh net-list --all如果要创建或者修改NAT⽹络,要先编辑default.xml:virsh net-edit default重新加载和激活配置:virsh net-define /etc/libvirt/qemu/networks/default.xml启动NAT⽹络:virsh net-start defaultvirsh net-autostart default启动NAT后会⾃动⽣成⼀个虚拟桥接设备virbr0,并分配IP地址,查看状态:brctl show正常情况下libirtd启动后就会启动virbr0,并⾃动添加IPtables规则来实现NAT,要保证打开ip_forward,在/etc/sysctl.conf中:net.ipv4.ip_forward = 1sysctl -p启动虚机并设置⾃动获取IP即可,如果想⼿动指定虚拟机IP,要注意配置的IP需在NAT⽹段内配置桥接⽹络系统如果安装了桌⾯环境,⽹络会由NetworkManager进⾏管理,NetworkManager不⽀持桥接,需要关闭NetworkManger:chkconfig NetworkManager offchkconfig network onservice NetworkManager stopservice network start不想关闭NetworkManager,也可以在ifcfg-br0中⼿动添加参数"NM_CONTROLLED=no"创建⽹桥:virsh iface-bridge eth0 br0创建完后ifconfig会看到br0⽹桥,如果eth0上有多个IP,更改下相应的⽂件名,如:ifcfg-eth0:1改为ifcfg-br0:1编辑虚拟机的配置⽂件,使⽤新的⽹桥:virsh edit zabbix找到⽹卡配置,改为:<interface type='bridge'><mac address='52:54:00:7a:f4:9b'/><source bridge='br0'/><model type='virtio'/><address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/></interface>我是⽤的br0,为虚拟机添加多块⽹卡只需复制多个interface,并确保mac address和PCI地址不同即可重新加载配置:virsh define /etc/libvirt/qemu/zabbix.xml重启虚拟机:virsh shutdown zabbixvirsh start zabbix之后使⽤VNC连接虚拟机并设置下⽹络即可常⽤操作KVM相关操作都通过vish命令完成,参数虽然多,但是功能⼀⽬了然,很直观创建虚拟机快照:virsh snapshot-create-as --domain zabbix --name init_snap_1也可以简写成:virsh snapshot-create-as zabbix init_snap_1快照创建后配置⽂件在/var/lib/libvirt/qemu/snapshot/zabbix/init_snap_1.xml查看快照:snapshot-list zabbix删除快照:snapshot-delete zabbix init_snap_1排错1、ERROR Format cannot be specified for unmanaged storage.virt-manager 没有找到存储池,创建储存池即可2、KVM VNC客户端连接闪退使⽤real vnc或者其它vnc客户端连接kvm闪退,把客户端设置中的ColourLevel值设置为rgb222或full即可3、virsh shutdown ⽆法关闭虚拟机使⽤该命令关闭虚拟机时,KVM是向虚拟机发送⼀个ACPI的指令,需要虚拟机安装acpid服务:yum -y install acpid && /etc/init.d/acpid start否则只能使⽤virsh destroy 强制关闭虚拟机以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
Linux KVM虚拟机PVE使用指南1引言KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。
使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等PVE使用图形化安装方式,支持裸机安装,管理界面是WEB方式,易于操作,浏览器(fireox,chrome等)支持JAVA即可以进行guest OS的图形管理,无须安装客户端,方便快捷。
本文将详细介绍PVE的安装,使用,部署优化等各方面的内容。
2KVM/QEMU体系架构2.1总体架构QEMU作为一个开源的硬件模拟器项目,除了支持x86体系架构之外,还支持ARM、MIPS、PowerPC、IA64等多种硬件架构。
QEMU采用模块化设计的方法,因此,还能支持多种多样的外设硬件,并且能够方便地进行扩充。
除了支持KVM之外,QEMU还支持全模拟化和kqemu加速模块等方式,这三种方式的架构区别如图5-6所示。
第一种模式是通过kqemu模块实现内核态的加速。
通过在内核中加入kqemu 的相关模块,在用户态的QEMU则通过访问/dev/kqemu设备文件接口调用改进型加速。
在这种模式中,主要针对虚拟机和宿主机运行于统一架构的情况下进行虚拟化。
第二种模式是在用户态直接运行QEMU,由QEMU对目标机的所有指令进行翻译后执行,相当于全虚拟化。
在这种模式下,可以运行各种不同形态的体系结构,如Android开发环境中即使用了QEMU来为其模拟ARM运行环境,但是在这种模拟环境下,每一条目标机的执行指令都需要耗费少则数个,多则成千上万个宿主机的指令周期来模拟实现,速度方面不太理想。
第三种模式则是KVM官方提供的kvm-qemu加速模式。
运行在内核态的KVM 模块通过/dev/kvm字符设备文件向外提供操作接口。
Centos7安装kvm虚拟机(centos6也可以)1.本教程以vmware虚拟机为例子,在其中的centos7虚拟机上安装kvm虚拟机首先开启虚拟化模块2.安装qemu-kvm 、libvirtyum install-y qemu-kvm libvirt,其中qemu-kvm用来创建虚拟机硬盘,libvirt 用来管理虚拟机qemu下载地址:https:///(多种版本)3.安装virt-install,yum -y install virt-install(virt-install用来创建虚拟机)4.启动libvirtd并且设置开机自启动,systemctl start libvirtd 、systemctl enable libvirtd5.创建虚拟机硬盘,(使用qemu来创建一个虚拟机硬盘,大小可以自定义),qemu-img create -f raw /opt/CentOS-7-x86_64.raw 10G,硬盘名称为CentOS-7-x86_64.raw,硬盘大小为10G6.也可以用qcow2格式,此格式支持快照但是速度没有raw的快,命令方式类似,qemu-img create -f qcow2 /opt/centos.qcow2 10G7.在根目录下创建一个文件夹iso,将centos7的镜像上传到此目录下8.利用virt-install 创建一个名称为CentOS-7-x86_64的虚拟机,内存为10249.virt-install --virt-type kvm --name=centos --ram 1024 --vcpus=16 --cdrom=/iso/centos.iso --disk path=/data2/centos.raw --network bridge=br0 --graphics vnc,listen=0.0.0.0,port=5988, --force--autostart10.如果启动报错:ERROR internal error: process exited while connecting to monitor: 2019-05-10T17:10:20.075431Z qemu-kvm: -drivefile=/root/window.iso,format=raw,if=none,id=drive-ide0-0-1,readonly=o n: could not open disk image /root/window.iso: Could not open'/root/window.iso': Permission deniedDomain installation does not appear to have been successful.If it was, you can restart your domain by running:virsh --connect qemu:///system start windowsotherwise, please restart your installation.表示权限不足可以编辑配置文件 vi /etc/libvirtd/qemu.conf文件取消#user=”root” #group=”root”注释然后重启libvirtd systemctl restart libvirtd11.其中--name表示名称,ram表示内存为1024M,--vcpus表示cpu核数,cdrom 表示镜像所在目录,disk表示创建的虚拟机硬盘位置,port指定哪个端口安装时通过vnc连接就用哪个端口连接,安装多台机器时可以指定不同的端口然后来分别安装不同的操作系统,--graphics表示指定图形界面工具表示安装成功12.接下来通过vnc来连接虚拟机进行安装,地址为宿主机地址,端口为5988(防火墙提前开放端口)如果报错提示如下:修改成rgb222连接即可13.然后开始正常的系统安装过程,不在赘述14.安装成功后可以通过命令virsh list --all上述表示虚拟机是关闭状态开启kvm虚拟机命令virsh start CentOS-7-x86_64,关闭虚拟机命令为virsh shutdown CentOS-7-x86_64 重启为virsh reboot CentOS-7-x86_64有的时候virsh shutdown 命令不能关闭虚拟机,此时要在虚拟机(不是宿主)内安装acpid软件并设置开机自启动,然后就可以执行shutdown|reboot来关闭和重启了了yum -y install acpidservice acpid startchkconfig acpid on如果想连接此虚拟机还是要通过vnc来连接登陆安装net-tools 安装后才可以执行ifconfig命令ip地址走的是宿主机的虚拟网卡virbr0,宿主机网卡如下:上图中的虚拟机默认的是nat模式,内部的虚拟机可以访问外部网络,但是外部网络无法访问内部的虚拟机(xshell无法连接),可以通过配置成桥接的方式来实现xshell连接内部虚拟机15.配置桥接网络:系统如果安装了桌面环境,网络由NetworkManager来管理,它不支持桥接网络,所以需要先关闭NetworkManager,一定要关闭,否则容易报错,配置完桥接后还要启动NetworkManager要不桌面无法使用,是黑屏状态。
Centos7的KVM安装配置详解KVM和虚拟化虚拟化有⼏种类型:完全虚拟化(Full virtualization), 虚机使⽤原始版本的操作系统, 直接与CPU通信, 是速度最快的虚拟化.半虚拟化(Paravirtualization), 虚机使⽤修改过的操作系统, 与hypervisor通信, hypervisor不修改请求, 直接转发给CPU和其他接⼝.软件虚拟化(Software virtualization), 使⽤模拟器运⾏原始版本的操作系统. hypervisor将虚机请求翻译为宿主系统可以理解的格式. ⽐半虚拟化更慢.容器化(Containerization). 与KVM虚拟化创建⼀个单独的内核实例不同, 容器化直接在现有的内核实例上创建互相隔离的容器环境. 容器在适⽤性上不如KVM 虚拟化, 但是更加轻量与灵活.关于KVMKVM (Kernel-based Virtual Machine) 属于完全虚拟化在内核中内置了KVM与QEMU (Quick Emulator) 集成libvirt API ⽤于管理KVMvirt-manager和virsh是libvirt提供的管理⼯具使⽤virsh edit guestname修改虚机配置⽽不是直接编辑虚机xml⽂件. 如果直接编辑虚机xml⽂件, 容易导致修改被覆盖. 通过virsh edit修改完配置后, 需要保存xml⽂件并重启虚机才能⽣效.KVM模拟的⽹络设备e1000 设备模拟 Intel E1000 network adapter (Intel 82540EM, 82573L, 82544GC).rtl8139 设备模拟 Realtek 8139 network adapter.Centos KVM环境硬件环境CPU需要⽀持虚拟化主板需要⽀持VT-x, 最好⽀持VT-dVT-x: 运⾏64bit Guest OS基本指令VT-d: 虚拟机可以直接针对硬件设备做存取,由北桥晶⽚来⽀援及BIOS来开启VT-c: 以Network为主, 要由I/O装置来⽀援, 包含Virtual Machine Direct Connect 及 Virtual Machine Device Queues两项技术, 前者使⽤了SR-IOV(Single Root I/O Virtualization).系统环境总核数 = 物理CPU个数 X 每颗物理CPU的核数总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数# 查看物理CPU个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l# 查看每个物理CPU中core的个数(即核数)cat /proc/cpuinfo| grep "cpu cores"| uniq# 查看逻辑CPU的个数cat /proc/cpuinfo| grep "processor"| wc -l# 查看物理机的cpu是否⽀持虚拟化, 找到flags部分,如果其中输出有VMX或SVM,即表明⽀持虚拟化技术。
KVM数量及技术参数一. 采购清单要求1.供货商提供的产品必须为原厂产品,符合国家相关规范,并提供原厂售后服务承诺函,提供不少于两年的保修服务。
2.供货商中标后,需将货物送至甲方,设备安装时间以甲方通知为准。
3.供货商接到甲方安装通知后须及时安排技术工程师进行设备安装及调试。
4.货物交货时间为:合同签订后不超过三周。
二、系统组网功能要求:●本次数据机房集中控制系统必须包含所有机房服务器设备,采用数字方式。
●考虑将来服务器数量对控制端用户数的匹配,充分保证用户远程并发访问的需要。
●系统必须以IP方式组网,用户可以不受地域制约进行全域操作。
●系统可以实现BIOS诊断及系统重启动等深层次功能。
KVM交换机产品要求一、基本要求(1) 数字KVM产品硬件要求:单台设备具备双电源,双10/100/1000M自适应网络接口,且双电源,双网络接口支持冗余。
支持Modem拨号。
(2) 系统具有良好的兼容性,能支持多种硬件平台(包括Sun、PS/2、USB 以及Console口接口类型等),并在多种平台间“无缝”切换。
(3) 提供硬件中断抑制,KVM系统设备掉电或出现故障,仍能保证服务器鼠标、键盘、显示器处于激活状态,换上备用设备后只需连上线缆,即可重新管理服务器,而不影响服务器的正常工作。
卖方应提供当KVM系统故障时的恢复解决方案。
(4) 数字式KVM交换机提供独立的跨平台客户端可以独立操作访问。
(5) 系统应支持KVM视频信号整屏显示,远程访问KVM信号支持分辨率1600×1200,支持宽屏分辨率1680×1050,同时支持HDMI高清分辨率显示标准,最大支持1920*1080分辨率,支持DVI-A/DVI-I制式。
画面色彩要求达到真彩色。
在不同分辨率服务器之间切换时,自动调节视频大小,无需人工手动调节。
(6) 系统在支持集中远程管理的同时,提供本地管理方式,以便在网络出现问题时,保证本地正常的操作。
CLOUD云版本部署KVM虚拟机switch模式手册网测科技2021.09.271.安装centos系统1.1 使用光盘驱动安装系统使用光盘驱动安装centos系统,开机后点delete进入bios,选取光盘驱动为启动盘1.2 点击保存退出1.3 选择语言启动后进入centos系统安装步骤,选择语言1.4 选择安装分区点击安装位置,选择系统储存分区1.5 软件选择点击软件选择,创建系统软件的环境,按图中的勾选选项1.6 开始安装点击开始安装后,设置root用户账号密码为netitest,等待安装完成。
安装完成后点击重启,centos系统就装好了1.7 给虚拟机配置ip地址给主机连接网线,进入终端,配置管理口的ip地址。
选择一个口作为管理口,按图中编辑此网口IP地址,修改完后重启服务,这样就可以在外部电脑中连接此地址啦2.下载secureCRT Application2.1解压安装secureCRT安装包或者下载安装secureCRT2.2添加ip地址登陆之前添加centos系统的ip地址2.3登录crt登录的账号密码为root,netitest3.安装VNC Viewer命令:yum install -y tigervnc-server3.1关闭防火墙命令:systemctl stop firewalldsystemctl disable firewalld3.2复制配置文件命令:cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service 编辑复制出来的配置文件命令:vi /etc/systemd/system/vncserver@:1.service3.4重新加载配置文件命令:systemctl daemon-reload3.5设置VNC密码命令:vncpasswd root3.6开启VNC并设置成开机启动命令:systemctl start vncserver@:1.servicesystemctl enable vncserver@:1.service3.7启动命令:vncserver3.8如果启动成功端口是监听状态(VNC端口号默认5900+1)命令:netstat -an |grep 59013.9客户端连接测试连接成功。
KVM部署及硬件参数更改一.kvm虚拟化环境搭建准备1.硬件环境kvm只能部署在物理机上面。
2.BIOS开启VTVirtualization Tech [Enabled]3.查看cpu 是否支持kvm 全虚拟化# grep "flags" /proc/cpuinfo|uniqflags : fpu vme de pse tsc msr pae mce cx8 apic sepmtrr pge mca cmov patpse36 clflush dts acpi mmx fxsr sse sse2 ss ht tmsyscall nx pdpe1gb rdtscp lmconstant_tsc nonstop_tsc arat pni monitor ds_cpl vmx smx est tm2 ssse3 cx16xtpr sse4_1 sse4_2 popcnt lahf_lm如果输出的结果包含VMX,它是Intel 处理器虚拟机技术标志,如果包含SVM,它是AMD 处理器虚拟机技术的标志,看到VMX 或SVM,说明支持全虚拟化。
另处linux 发行版本必须在64bit 环境中才能使用KVM。
二.虚拟化环境部署1.安装kvm 和虚拟化管理软件包yum -y install kvm virt-* libvirts bridge-utils qemu-imgkvm 软件包。
kvm 软件包中含有KVM 内核模块,它可在默认Linux 内核中提供KVM 管理程序。
libvirts 安装虚拟机管理工具,使用virsh 等命令来管理和控制虚拟机bridge-utils 安装网络支持,设置桥接virt-* 创建、克隆虚拟机等命令,以及图形化管理工具virt-managerqemu-img 安装qemu 组件,使用qemu 命令来创建磁盘等2.加载kvm 模块# modprobe kvm-intel3.查看kvm 模块是否被加载# lsmod |grep kvmkvm_intel 85256 0kvm225952 1 kvm_intel4.reboot 并确认确认kvm 模块是否被加载# lsmod |grep kvmkvm_intel 85256 0kvm 225952 2 ksm,kvm_intel#如出现以上内容,说明kvm 模块正确加载kvm 相关模块的路径# cd /lib/modules/2.6.18-348.1.1.el5/weak-updates/kmod-kvm/ # pwd/lib/modules/2.6.18-348.1.1.el5/weak-updates/kmod-kvm[root@wg-vm-s2 kmod-kvm]# lsksm.ko kvm-amd.ko kvm-intel.kokvm.ko5.检查物理主机虚拟化完成情况# virsh listId Name State----------------------------------#如出现以上提示说明虚拟化被正确安装6.关闭防火墙和selinux由于防火墙和selinux会阻止libvirt为虚拟机创建网络设备。
关闭防火墙# /etc/init.d/iptables stop关闭selinux[root@test22~]# cat /etc/selinux/config#This file controls the state of SELinux on the system.#SELINUX= can take one of these three values:# enforcing - SELinux security policy isenforced.# permissive - SELinux prints warningsinstead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=disabled #更改为disabled#SELINUXTYPE= can take one of these two values:# targeted - Targeted processes areprotected,# mls - Multi Level Security protection.SELINUXTYPE=targeted然后命令行执行:setenforce07.配置网络桥接# cat /etc/sysconfig/network-scripts/ifcfg-eth0# Broadcom Corporation NetXtreme BCM5720 GigabitEthernet PCIeDEVICE=eth0HWADDR=90:B1:1C:2A:A4:40ONBOOT=yesBOOTPROTO=noneTYPE=EthernetBRIDGE=br0#注意不要写错。
# cat /etc/sysconfig/network-scripts/ifcfg-br0# Broadcom Corporation NetXtreme BCM5720 GigabitEthernet PCIe DEVICE=br0#HWADDR=90:B1:1C:2A:A4:40ONBOOT=yesBOOTPROTO=staticTYPE=BridgeIPADDR=192.168.3.200NETMASK=255.255.255.0GATEWAY=192.168.3.254配置完eth0 和br0 重启网卡:serivce network restart查看已有桥接:# brctl showbridge name bridge id STP enabled interfacesbr0 8000.90b11c2aa440 no eth0 (配置正确的桥接是有mac地址的)br1 8000.90b11c2aa441 no eth1错误桥接:# brctl showbridge name bridge id STP enabled interfacesbr0 8000.000000000000 no eth08.修改vnc 监听端口# cd /etc/libvirt/# lslibvirtd.conf nwfilter qemu qemu.conf# cp qemu.conf qemu.conf.panglu-$(date +%F)# vi qemu.conf+1211 #12 # vnc_listen ="0.0.0.0" #把前面的#注释去掉,开启vnc 监听131415 # Enable use of TLS encryption on the VNC server.This requires16 # a VNC client which supports the VeNCryptprotocol extension.17 # Examples include vinagre, virt-viewer,virt-manager and vencrypt 9.开启相应的服务# /etc/init.d/messagebusstart #linux ICP 服务Starting system message bus:[ OK ]# /etc/init.d/libvirtd restart#启动virbr0libvirtd (pid 3665) is running...添加到开机启动# chkconfig messagebus onecho “/etc/init.d/libvirtdstart”>>/etc/rc.local到此,kvm 服务端安装完成。
三.安装虚拟机1.创建虚拟机磁盘目录#mkdir /data/vmdisk -p2.创建iso文件目录#mkdir /iso把光盘放入到光驱,dd 命令把iso 文件拷贝到/iso目录下# dd if=/dev/cdromof=/iso/centos5.iso3.创建虚拟磁盘文件qemu-img create -f qcow2 -opreallocation=metadata dev_5931.img 300G重要参数:-opreallocation=metadata 预分配磁盘,硬盘空间不会立即占用注意:ext3不支持此参数,ext4支持。
4.安装虚拟机命令及参数virt-install --name=dev_5934_44 --ram 8192--vcpus=2 -fdev_5934_44.img --cdrom../iso/CentOS-6.4-x86_64-bin-DVD1to2/CentOS-6.4-x86_64-bin-DVD1.iso --g raphics vnc,listen=0.0.0.0,port=5934, --force --autostart注意端口号设定值,用vnc连接时需要用。
5.接下来客户端vnc去连接。
#192.168.3.200 是宿主机IP,5900 是安装命令指定的vnc 端口##vnc viewer连接闪退解决方法只需修改vnc option里面Advanced–>expert–>ColourLevel的值为“rgb222” or “full”即可。
四. 虚拟机硬件配置更改篇1.解决kvm环境下可以使用shutdown命令让虚拟机关机,但不生效。
进入不能关机的虚拟机中:[root@localhost ~]# yum -y installacpid ;安装acpid服务[root@localhost ~]# service acpid restart ;启动服务[root@localhost ~]# chkconfig acpid on ;加入开机启动通过以上步骤后就可以让虚拟机响应shutdown 和reboot命令了2.修改kvm中虚拟机的内存大小及cpu数量。
a.查看虚拟机virsh # list --allId 名称状态----------------------------------------------------2 test_centos running4 qishi running13 qishi2 running14 cloud_monitor_5921 running20 test22 running- test33 关闭b.更改要修改的配置文件[root@nfs ~]# virsh edittest22 ##注意vi直接编辑不生效<domain type='kvm'><name>test22</name><uuid>eb342f67-e70c-194b-5291-e91010ed996f</uuid><memory unit='KiB'>5120000</memory><currentMemory unit='KiB'>5120000</currentMemory> #512000→为内存大小,单位为K 修改此数字,例如要调整为8G 则设置为8192000<vcpu placement='static'>4</vcpu> #4→为cpu数量,更改为5个则将4修改为5<os><type arch='x86_64'machine='rhel6.5.0'>hvm</type><boot dev='hd'/></os>修改完保存→关闭虚拟机→启动虚拟机(注意直接重启不生效)[root@nfs ~]# virsh shutdown test22Domain vm01 is being shutdown[root@nfs ~]# virsh start test22检查:启动后登录虚拟机,查看内存及cpu,发现已经更改。