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

[经验分享] Ubuntu部署KVM服务器

[复制链接]

尚未签到

发表于 2018-5-6 12:52:32 | 显示全部楼层 |阅读模式
  这个KVM跟控制台切换器之类的东西一点关系没有,KVM全称Kernel-based Virtual Machine,是基于Linux核心的虚拟机。KVM被正式导入Linux是在2007年的2.6.20核心上,以替代XEN,不过相对XEN来说,KVM要求CPU硬件上支持虚拟化技术,即Intel-vt或者AMD-v的支 持。这对于2008年之后的机器来说几乎是标配的。对于这一个时期的CPU都一个劲的堆核心,内存也空前的便宜,硬盘也逐步到了320G起板的水平,可以 大胆的玩虚拟机了!
  再此之前,还是先确认系统的CPU是否支持虚拟化:
#egrep ‘(vmx|svm)’ /proc/cpuinfo
  应该有返回,如果没有返回,且确认您的CPU支持虚拟化的话,建议去看看BIOS设置,大多数的主板都支持关闭此技术的。
  还是以最常用的Ubuntu Server 做例子,desktop的可以直接apt-get install ubuntu-server之后,用server的核心启动。如果你全程参考本文,个人建议还是通过后一种方式来做,因为本文的过程需要X环境。
  首先,设置好桥接,由于我使用的机器在远程,操作全部通过ssh,桥接的过程断开过网络。让机房重起数次之后,找到了最稳妥的方法,虽然也要断网,但好在会自己恢复。
  #sudo apt-get install bridge-utils uml-utilities
  #vi /etc/network/intefaces
  auto lo
iface lo inet loopback
  auto tap0
iface tap0 inet manual
up ifconfig $IFACE 0.0.0.0 up
down ifconfig $IFACE down
tunctl_user root
  auto br0
iface br0 inet static
bridge_ports eth0 tap0
address 192.168.1.3
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.254
  注意这个br0,我通过前端防火墙做的DMZ通道,所以设置了内网地址。主机通过这个ip访问。所有的虚拟主机也直接设置到192.168.1.0/24网段。
  #/etc/init.d/network restart
  断网了,等待几分钟后网络恢复,直接ifconfig
  br0       Link encap:Ethernet  HWaddr 02:0b:b1:f7:79:01
inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
inet6 addr: fe80::b:b1ff:fef7:7901/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:506941 errors:0 dropped:0 overruns:0 frame:0
TX packets:733910 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:45469237 (45.4 MB)  TX bytes:654152049 (654.1 MB)
  eth0      Link encap:Ethernet  HWaddr e4:1f:13:95:82:cf
inet6 addr: fe80::e61f:13ff:fe95:82cf/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:1367878 errors:0 dropped:0 overruns:0 frame:0
TX packets:1541493 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:689206805 (689.2 MB)  TX bytes:1062795975 (1.0 GB)
Memory:81a80000-81aa0000
  eth0:0    Link encap:Ethernet  HWaddr e4:1f:13:95:82:cf
inet addr:192.168.1.2  Bcast:0.0.0.0  Mask:0.0.0.0
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
Memory:81a80000-81aa0000
  桥接成功!
  相对来说,我还是比较喜欢图形化的管理工具,命令行实在太痛苦
  #apt-get install virt-manager libvirtd kvm libvirt-bin
  看看是否安装成功
  # ls /dev | grep kvm
  直接用ssh通道执行gnome-session就可以连到远程桌面,执行系统工具里的“虚拟系统管理器”。添加连接中选择本地,QEMU/KVM。
DSC0000.png DSC0001.png 然后建立新的虚拟主机,个人觉得这块跟用VM之类的工具没有什么区别了,直接跳过了。不过在第五步的时候,请将网卡设置为桥接设备,除非仅仅用于NAT方式联网。 DSC0002.png

  需要注意的是,如果你跟我一样通过远程连接,直接打开主机的控制台的时候,键盘会不听使唤。这不是切换键盘设置可以搞定的问题,我尝试过不同的X客 户端和操作系统,涵盖了windows mac linux,全都如此。只能认为是一个bug。我的最终解决方法是通过ssh通道,将远程主机的5900  VNC端口转接回本地,然后再通过vnc客户端连接本地才得以通过,键盘的问题得以解决。很傻,如果你有更好的方式,敬请赐教了!
  照旧建立一个虚拟主机,我还是选择了Ubuntu Server 1110 64bit,也没有什么好说的。安装好之后,配置好了ssh。从此就可以直接抛弃vnc和宿主主机的X访问了。
  在虚拟主机上安装定制的内核:
  #apt-get install kernel-virtual
  重起的速度那是嗖嗖的!直接lsmod发觉真的是定制内核,和标准的server内核比起来一点多余的没有:
  root@www:~# lsmod
Module                  Size  Used by
psmouse                73882  0
serio_raw              13166  0
lp                     17799  0
parport                46562  1 lp
8139too                32177  0
8139cp                 27412  0
  对比一下性能吧,python原版,稍作优化:
  虚拟机:
  root@www:/home/litrin# python TimeCost.py
10240
Cost: 0.508388996124
root@www:/home/litrin# python TimeCost.py
10240
Cost: 0.507208108902
root@www:/home/litrin#
  宿主机:
  root@vserver:~# python TimeCost.py
10240
Cost: 4.35039806366
root@vserver:~# python TimeCost.py
10240
Cost: 4.35194683075
  我开始真的不知道该如何解释。虚拟机的性能竟然强于宿主机。后来检查了python的版本才明白,宿主是py2.6而客户机是2.7,版本不同,性能有差距,但可以肯定的是,从这一点上来说虚拟化的性能损失不大。
  最后一步,去掉虚拟机上不需要的东西,精简主义者!
  这次就直接用宿主的命令行操作吧:
  #virsh
  virsh # list
Id Name                 State
———————————-
30 www.litrin.net       running //我的虚拟主机名为www.litrin.net,请注意!
  virsh # edit www.litrin.net
  删掉vnc, pty, mouse, graphic
  virsh # destroy www.litrin.net
  virsh # start www.litrin.net
  这里有一个问题也凸现,就是无法使用宿主机的reboot和halt命令,只能强行的destroy。
  你同时还可以配合DHCP和主机克隆,大规模快速甚至自动化的架设多个虚拟机,本文不再探讨。
  尽管现在“云”已经被用滥了,搞个虚拟机就敢号称云托管的大有人在。个人觉得其实对于少数几台主机的虚拟化来说,更多的是节约机房的托管费用和主机 成本,这对于稍微大一点的项目并没有什么太多的优势。如果配合上open stack之类的故障平滑迁移技术才是虚拟化方案的终极利器。
  美国VPS专题 更多参考

运维网声明 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-456575-1-1.html 上篇帖子: Ubuntu系统下配置IP地址方法介绍 下篇帖子: Ubuntu Linux下配置虚拟主机及其配置文件详细说明
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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