浅析服务器上安装虚拟机

虽然事情比较简单,但我却做了将近一周的时间,不过还好最终解决了。我最大的体会是自己的知识太少了,好多指令都不太清楚,都把指令敲进去了。出现了问题不知道怎么解决,而且不知道问题出现在什么地方。下面把我安装过程中遇到的问题,以及如何解决的写下来,算是自己的总结,分享给大家。

一、安装kvm

安装时要知道这些指令的含义,为什么是这样的,花个几分钟查查,要养成这样的习惯!

KVM(kernel virtual machine)是模拟器,Linux的一个模块,需要CPU支持虚拟化技术。可以用modprobe去加载KVM模块。linux加载了模块后,就会成为一个hyperviso,r才能进一步通过其他工具创建虚拟机。作为虚拟机的上层管理和界面。

查看kvm包组信息

yum groupinfo KVM
安装kvm的组件

kvm

  • kmod-kvm : kvm kernel module(s) kvm : Kernel-based Virtual Machine
  • kvm-qemu-img : Qemu disk image utility kvm-tools : KVM debugging and diagnostics tools
  • python-virtinst : Python modules and utilities for
  • installing virtual machines
  • virt-manager : Virtual Machine Manager
  • virt-viewer: Virtual Machine Viewer (another lightweight app to view VM console and/or install
    VMs)
  • bridge-utils : Utilities for configuring the Linux Ethernet bridge (this is recommended for KVM networking)

每个组件是干什么的?

qemu-kvm
libvirt 提供一种虚拟机监控程序不可知的 API 来安全管理运行于主机上的客户操作系统。libvirt本身 不是一种工具,它是一种可以建立工具来管理客户操作系统的 API。Libvirt 库是一种实现 Linux 虚拟化功能的 Linux® API,它支持各种虚拟机监控程序,包括 Xen 和 KVM,以及 QEMU 和用于其他操作系统的一些虚拟产品。
python-virtinst
bridge-utils 桥包
virsh 它是一种虚拟 shell

具体流程

1、安装kvm

yum -y install kvm virt-viewer virt-manager libvirt libvirt-python python-virtinst

2、安装完后关闭 selinux 并重启系统,然后确认一下是否 kvm 安装成功:

vi /etc/sysconfig/selinux (打开selinux) 
SELINUX=disabled  (将selinux设置为disabled)  
reboot
lsmod | grep kvm kvm_intel       

3、重启libvirted服务

 /etc/init.d/libvirtd restart

4、安装虚拟机

yum -y install kvm

5、修改 qemu.conf 配置,把下面几个地方的注释去掉,然后把 dynamic_ownership 的值改成0,禁止 libvirtd 动态修改文件的归属

 vi /etc/libvirt/qemu.conf 
 user = "root" 
 group = "root" 
 dynamic_ownership=0

6、重启 libvirtd 服务再用上面的 virt-install 命令安装就应该可以了。这个时候 vnc 默认绑定的是本机 127.0.0.1,如果其他机器想用 vnc 客户端访问这台 kvm 服务器正在安装的centos6.5的话需要把 vnc 绑定到服务器的 IP 地址或者绑定到全局 0.0.0.0. 修改 qemu.conf 文件取消 vnc_listen 一行前面的注释,记得重启 libvirtd

 vi /etc/libvirt/qemu.conf
 vnc_listen = "0.0.0.0"

二、下载centos7镜像

http://mirrors.163.com/centos/7.1.1503/isos/x86_64/

../
0_README.txt 01-Apr-2015 16:30 2685
CentOS-7-x86_64-DVD-1503-01.iso 01-Apr-2015 08:05 4G
CentOS-7-x86_64-DVD-1503-01.torrent 01-Apr-2015 10:04 161K
CentOS-7-x86_64-Everything-1503-01.iso 01-Apr-2015 08:26 7G
CentOS-7-x86_64-Everything-1503-01.torrent 01-Apr-2015 10:04 283K
CentOS-7-x86_64-LiveCD-1503.iso 31-Mar-2015 17:13 696M
CentOS-7-x86_64-LiveCD-1503.torrent 31-Mar-2015 21:42 28K
CentOS-7-x86_64-LiveGNOME-1503.iso 31-Mar-2015 19:10 1G
CentOS-7-x86_64-LiveGNOME-1503.torrent 31-Mar-2015 21:42 43K
CentOS-7-x86_64-LiveKDE-1503.iso 31-Mar-2015 19:11 1G
CentOS-7-x86_64-LiveKDE-1503.torrent 31-Mar-2015 21:42 49K
CentOS-7-x86_64-Minimal-1503-01.iso 01-Apr-2015 08:08 636M
CentOS-7-x86_64-Minimal-1503-01.torrent 01-Apr-2015 10:04 26K
CentOS-7-x86_64-NetInstall-1503.iso 28-Mar-2015 06:34 360M
CentOS-7-x86_64-NetInstall-1503.torrent 31-Mar-2015 21:42 15K
md5sum.txt 01-Apr-2015 09:44 481
md5sum.txt.asc 01-Apr-2015 09:51 1341
sha1sum.txt 01-Apr-2015 09:44 537
sha1sum.txt.asc 01-Apr-2015 09:51 1397
sha256sum.txt 01-Apr-2015 09:44 705
sha256sum.txt.asc 01-Apr-2015 09:51 1565

三、安装centos7

一键安装

选择语言

汉语、英语

磁盘分区
/ root下,一般为总共磁盘空间的1/3
/home 存放数据的,分配的空间最大
/swap 一般2G
/boot 一般200M

下面基本上是一键安装了

四、配置网络
在台式机做过实验,通过vnc远程连接,在服务器上使用VMM不太好使,可以使用tiger-vnc打开qemu-kvm
然后进行相应的配置
虚拟机上网有三种方法

  • NAT
  • 桥接
  • Host-only

1、NAT 网络地址转换

链路: linux虚拟机>VMnet>物理机网卡
NAT是Network address translate的简称。NAT应用于Internet网管和路由器上。比如,192.168.0.123这个地址要访问Internet,它的数据包就要通过一个网关或者路由器,而网管或者路由器拥有一个能访问Internet的ip地址,这样的网关和路由器就要在收发数据包时,对数据包的ip协议层数据更改,以使私有网段的主机能够顺利访问Internet,此技术解决了ip地址稀缺的问题。
虚拟机上的NAT上网也是同样的道理,它在主机和虚拟机之间用软件伪造出出一块网卡,这块网卡和虚拟机的ip处于一个地址段。同时,在这块网卡和主机的网卡之间进行NAT。虚拟机发出的每一块数据包都会经过虚拟网卡,然后NAT,然后由主机的接口发出。
虚拟网卡和虚拟机处于同一地址段,虚拟机和主机不同一个地址段,主机相当于虚拟机的网关,所以虚拟机能ping到主机的ip,但主机ping不到虚拟机的ip

2、桥接 bridge

链路 :Linux虚拟机>物理网卡Linux>物理网卡

Bridge 桥”就是一个主机,这个机器拥有两块网卡,分别处于两个局域网中,同时在”桥”上,运行着程序,让局域网A中的所有数据包原封不动的流入B,反之亦然。这样,局域网A和B就无缝的在链路层连接起来了,在桥接时,VMWare网卡和物理网卡应该处于同一IP网段 当然要保证两个局域网没有冲突的IP。

现在只要在物理机上设置网桥。虚拟机上不要有任何的设置网桥,直接配置地址就可以了。

当采用桥接时,VMWare会虚拟一块网卡和真正的物理网卡就行桥接,这样,发到物理网卡的所有数据包就到了VMWare虚拟机,而由VMWare发出的数据包也会通过桥从物理网卡的那端发出。

联网方式

这一种联网方式最简单,在局域网内,你的主机是怎么联网的,你在虚拟机里就怎么连网。把虚拟机看成局域网内的另一台电脑就行了!
主机网卡处在一个可以访问Internet的局域网中,虚拟机才能通过Bridge访问Internet。

3、Host-only 私有网络共享主机

提供的是主机和虚拟机之间的网络互访。只想让虚拟机和主机之间有数据交换,而不想让虚拟机访问Internet,就要采用这个设置了。

Host-only技术只用于主机和虚拟机互访,于访问internet无关

我在服务器上安装虚拟机选择桥接方式
桥接网络配置文件,从ifcfg-eth0复制现有网卡的配置文件,改名为ifcfg-br0

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0

修改 ifcfg-br0,将DEVICE=eth0改为br0,TYPE=Ethernet改为Bridge,其他地方不要动,退出并保存

修改 ifcfg-eth0,在BOOTPROTO=none上面一行添加BRIDGE=br0,其他地方不要修改,退出并保存

重启网络

service network restart

reboot

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值