设为首页 收藏本站
查看: 844|回复: 0

[经验分享] KVM安装部署

[复制链接]

尚未签到

发表于 2017-6-21 16:45:03 | 显示全部楼层 |阅读模式
KVM安装部署
  公司开始部署KVM,KVM的全称是kernel base virtual machine,对KVM虚拟化技术研究了一段时间,
  KVM是基于硬件的完全虚拟化,跟vmware、xen、hyper-v是同一个级别的,而且已经内置在Linux内核
  而且KVM是开源产品,最新的虚拟化技术都会优先应用在KVM上,KVM的定制和配置项也很多,比封闭的hyper-v好玩多了
  一直觉得微软的产品太封闭,之前一直用hyper-v,可配置项相比于KVM实在太少,而且KVM性能比hyper-v要好
  KVM各个组件的关系
  libvirt(virt-install,API,服务,virsh)-》qemu(qemu-kvm进程,qemu-img)-》KVM虚拟机-》kvm.ko 内核模块  
  libvirt:红帽提供的一个管理KVM虚拟机的API库,提供了virsh命令和一些python API
  qemu:KVM的用户空间管理工具,用于管理内核空间kvm.ko
  kvm.ko:KVM的核心,提供了虚拟CPU的工具,centos6系统安装的时候默认已经自带kvm.ko,只需要加载这个内核模块
  安装流程
  物理机部署流程
  安装KVM组件
1、首先检查系统是否支持kvm,有两个先决条件
a、系统是x86的,通过命令



uname -a
  b、CPU 支持虚拟化技术



egrep 'vmx|svm' /proc/cpuinfo
  其中intel cpu支持会有vmx,amd cpu支持会有svm
如果看到有输出结果,即证明cpu 支持虚拟化。同时特别注意需要检查 BIOS 中是否开启VT,如果没有启用,虚拟机将会十分慢。
  
2、使用yum安装kvm
安装kvm内核



yum install -y qemu-kvm.x86_64 qemu-kvm-tools.x86_64 qemu-img
  安装virt管理工具



yum -y install libvirt.x86_64 libvirt-cim.x86_64 libvirt-client.x86_64 libvirt-java.noarch libvirt-python.x86_64 python-virtinst bridge-utils
  说明:
kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序
libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。
bridge-utils:设置网络网卡桥接。
qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。
  加载kvm 内核



modprobe kvm
modprobe kvm-intel
  查看kvm内核模块是否加载成功



modprobe -ls | grep kvm
  
3、配置网络桥接,
进入目录 /etc/sysconfig/network-scripts,复制一份原有的ifcfg-eth0 为 ifcfg-br0
cp ifcfg-eth0 ifcfg-br0
修改ifcfg-br0,内容如下:



DEVICE="br0"
BOOTPROTO=static
ONBOOT="yes"
TYPE="Bridge"
IPADDR=10.11.30.52
NETMASK=255.255.255.0
GATEWAY=10.11.30.1
DEFROUTE=yes
  IPADDR、GATEWAY、NETMASK根据自己的实际情况修改。
修改 ifcfg-em1 内容如下:



DEVICE="em1"
BOOTPROTO=none
NM_CONTROLLED="no"
ONBOOT=yes
TYPE=Ethernet
BRIDGE="br0"
HWADDR=34:17:EB:F0:01:1F
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME="System em1"
  重启网络服务即可。



/etc/init.d/network restart
  如果出现问题,关闭 NetworkManager 后重试。



chkconfig NetworkManager off
service NetworkManager stop
  
4、启动或重启libvirtd服务和messagebus 服务



/etc/init.d/libvirtd start
/etc/init.d/messagebus restart
  此时可以查看网络接口列表
brctl show 结果如下:
bridge name     bridge id               STP enabled     interfaces
br0             8000.000c2955a70a       no              eth0
virbr0          8000.52540014efd5       yes             virbr0-nic
  
生成虚拟机流程(在物理机上执行)
1 安装screen 工具



yum install -y screen
  2 生成qcow2 格式的镜像文件



qemu-img create -f qcow2 /data/kvmimg/gzwtest01.qcow2 60G
  3 在screen里面新开一个session



screen -S instSys
  4 安装一台Windows虚拟机



virt-install --name=gzwtest01 --ram 4096 --vcpus=16 --autostart --hvm \
--disk path=/data/kvmimg/gzwtest01.qcow2,size=60,format=qcow2 \
--cdrom /data/download/cn_windows_server_2012_r2_with_update_x64_dvd_6052725.iso \
--graphics vnc,listen=0.0.0.0,port=5902 \
--network bridge=br0,model=e1000 --force --connect qemu:///system
  说明
  name:虚拟机名称
ram:内存,单位MB
vcpus:逻辑CPU数
autostart:随母鸡开机启动而启动,母鸡开机,虚拟机也一起开机
hvm:完全虚拟化
model:指定网卡为千兆
disk path:镜像文件位置
size:虚拟机磁盘大小,单位GB
format:镜像文件格式
accelerate:
force:跳过所有交互提示,相当于yum install -y里的-y选项
cdrom:操作系统安装文件路径
graphics: 指定安装通过哪种类型,可以是vnc,也可以没有图形,这里是VNC,如果是文本graphics none
listen:0.0.0.0表示侦听所有来源地址,可以修改/etc/libvirt/qemu.conf
port:vnc端口号
vncport:VNC端口
network:指定网络类型
bridge:宿主机的桥接网卡是br0
connect:连接到一个非默认的hypervisor
  
5 使用VNC软件连接虚拟机进行系统安装
VNC软件名称 vnc-4_1_2-x86_win32_viewer
10.11.30.53:5902
10.11.30.53:物理机的IP
5902:虚拟机对应端口
  

  至此,一台Windows的KVM虚拟机部署完毕
  本文版权归作者所有,未经作者同意不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-386314-1-1.html 上篇帖子: L1 Machine Learning to Deep Learning 下篇帖子: html的常用标签
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表