热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS6.3系统安装配置KVM虚拟机

作业环境服务器端操作系统:CentOS6.3finalx86_64IP:133.133.10.50Hostname:myKVMKVM:qemu-kvm-0.12.1.2-2.295.el6_3.2.x86_64客户端Ubuntu和Win7,先在服务器端装好VNC,通过VNC连接服务器CentOS一、安装KVM及相关软件
作业环境

服务器端
操作系统:CentOS 6.3 final x86_64
IP: 133.133.10.50
Hostname:myKVM
KVM:qemu-kvm-0.12.1.2-2.295.el6_3.2.x86_64

客户端
Ubuntu和Win7,先在服务器端装好VNC,通过VNC连接服务器CentOS

一、安装KVM及相关软件
1、KVM 需要有 CPU 的支持(Intel vmx 或 AMD svm),在安装 KVM 之前检查一下 CPU 是否提供了虚拟技术的支持:
[root@myKVM ~]# egrep '^flags.*(vmx|svm)' /proc/cpuinfo
有显示, 有显示则说明处理器具有VT功能

2、在主板BIOS中开启CPU的Virtual Technolege(VT,虚化技术)

3、安装kvm及其需要的软件包
[root@myKVM ~]# yum install kvm kmod-kvm qemu kvm-qemu-img virt-viewer virt-manager libvirt libvirt-python python-virtinst

[root@myKVM ~]# yum groupinstall KVM

4、检查kvm模块是否安装,使用以下命令显示两个模块则表示安装完成
[root@myKVM ~]# lsmod | grep kvm
kvm_intel              52570  0 
kvm                   314739  1 kvm_intel

二、启动virt-manager管理界面

1、客户端
VNC到服务器端,因为需要用服务器的图形界面

2、服务器端
启动libvirtd服务,并保证下次自动启动
[root@myKVM ~]# service libvirtd start
Starting libvirtd daemon:                                  [ 确定 ]
[root@myKVM ~]# chkconfig libvirtd on

三、远程创建和管理KVM虚拟机
1. 打开Application=> System Tools => Virtual Machine Manager就可以装虚拟机了,功能跟VMware类似


2. “Details”中可查看或修改Guest OS的配置信息




3、安装完成后需要将默认的IDE硬盘和网卡换成virtio,并打上驱动程序,这样性能就可以得到提升。(默认好像就是这样的)




4、在远程管理KVM虚拟化物理主机的过程中,可以动态调节VM的内存,实现clone,开机,关机,暂停主机等操作。

5、服务器端使用virsh list命令可查看主机虚拟化情况
[root@myKVM ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 1     CentOSKVM                      running
我在myKVM上由装了centOS的虚拟机,命名为centOSKVM
8、KVM虚拟机的信息保存在 /var/lib/libvirt目录下


三、KVM默认网络配置
1、kvm上网有两种配置,一种是default,它支持主机与虚拟机的互访,同时也支持虚拟机访问互联网,但不支持外界访问虚拟机。另外一种方式是bridge方式,可以使用虚拟机成为网络中具有独立IP的主机。

四、配置bridge上网方式

1、创建桥接器
在/etc/sysconfig/network-scripts目录下,创建一个ifcfg-br0 文件,其类型设为Bridge:
[root@myKVM libvirt]# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE="br0"
TYPE="Bridge"
BOOTPROTO="static"
#HWADDR="00:23:AE:72:50:90"
NM_COnTROLLED="yes"
OnBOOT="yes"
#TYPE="Ethernet"
IPADDR=133.133.10.50
NETMASK=255.255.0.0

2、将物理接口桥接到桥接器
修改eth0的内容(本服务器是用eth0上网的),去掉其IP相关信息,加上“BRIDGE=br0”,将其桥接到br0上;如果是双网卡或是多网卡,照此过程修改:
[root@myKVM libvirt]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:23:AE:72:50:90"
NM_COnTROLLED="yes"
OnBOOT="yes"
TYPE="Ethernet"
#UUID="18ffa985-2081-4be5-951b-fb0d136741bf"
#IPADDR=133.133.10.50
#NETMASK=255.255.0.0
BRIDGE=br0

3、重启物理机网络服务
[root@etone ~]# service network restart

4、查看当前桥接情况(有一个虚拟机正在运行)
[root@myKVM libvirt]# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.0023ae725090       no              eth0
virbr0          8000.525400efd043       yes             virbr0-nic
                    vnet0

5、将虚拟机接口桥接到桥接器
[root@myKVM ~]# brctl delif virbr0 vnet0
[root@myKVM ~]# brctl addif br0 vnet0
[root@myKVM ~]# brctl show
[root@myKVM libvirt]# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.0023ae725090       no              eth0
vnet0
virbr0          8000.525400efd043       yes             virbr0-nic
这一步也可以在Virtual Machine Manager中进行。


6、将虚拟机centOSKVM IP设置为同一网段地址:133.133.10.51
此时,该虚机可以访问外部网络,并可被外部网络访问。
服务器可以连虚拟机
[root@myKVM libvirt]# ping 133.133.10.51
PING 133.133.10.51 (133.133.10.51) 56(84) bytes of data.
64 bytes from 133.133.10.51: icmp_seq=1 ttl=64 time=0.700 ms
64 bytes from 133.133.10.51: icmp_seq=2 ttl=64 time=0.093 ms
64 bytes from 133.133.10.51: icmp_seq=3 ttl=64 time=0.072 ms
^C
--- 133.133.10.51 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2137ms
rtt min/avg/max/mdev = 0.072/0.288/0.700/0.291 ms
虚拟机可以连外网
[root@centOSKVM ~]# ping 133.133.10.50
PING 133.133.10.50 (133.133.10.50) 56(84) bytes of data.
64 bytes from 133.133.10.50: icmp_seq=1 ttl=64 time=0.090 ms
64 bytes from 133.133.10.50: icmp_seq=2 ttl=64 time=0.075 ms
^C
--- 133.133.10.50 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1492ms
rtt min/avg/max/mdev = 0.075/0.082/0.090/0.011 ms
[root@centOSKVM ~]# ping 133.133.133.53
PING 133.133.133.53 (133.133.133.53) 56(84) bytes of data.
64 bytes from 133.133.133.53: icmp_seq=1 ttl=64 time=2.14 ms
64 bytes from 133.133.133.53: icmp_seq=2 ttl=64 time=0.323 ms
^C
--- 133.133.133.53 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1836ms
rtt min/avg/max/mdev = 0.323/1.235/2.147/0.912 ms

推荐阅读
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • 本文详细介绍了在Centos7上部署安装zabbix5.0的步骤和注意事项,包括准备工作、获取所需的yum源、关闭防火墙和SELINUX等。提供了一步一步的操作指南,帮助读者顺利完成安装过程。 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 概述H.323是由ITU制定的通信控制协议,用于在分组交换网中提供多媒体业务。呼叫控制是其中的重要组成部分,它可用来建立点到点的媒体会话和多点间媒体会议 ... [详细]
  • Ubuntu 用户安装 Linux Kernel 3.15 RC1
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
费小小微博_372
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有