KVM虚拟机安装使用教程(Ubantu)

背景:

  公司在某电信机房有50台ubantu的实体机,机器配置的ip是192.168.100.x的ip,内存和cpu都是高端配置。假如哪些端口需要对外映射,就通过机房的防火墙完成端口映射。

  100.1这台机器,能远程ssh,并已经做好了5个端口映射。其余的机器均未开通外网端口。

需求:

  现在需要10台centos的机器,来装一个环境,并对外提供一个web服务。

分析:

  鉴于机房山高路远,去机房把Ubantu缓存centos的操作系统的计划不能施行。然后就出现了KVM虚拟机的流程。

 

0.ssh登录100.1,然后以它做跳板,利用SecureCRT或者Xshell的socks代理,然后ssh连接后面的机器(方法请百度,我也不好描述,总之就是非常容易操作)。

ssh 192.168.100.2  
sudo su - root 

 

1.确认操作系统版本,修改apt-get源为aliyun,apt-get update.

cat /etc/issue   #12.04ubantu版本
vim /etc/apt/
deb http://mirrors.aliyun.com/ubuntu/ precise main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ precise-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ precise-backports main restricted universe multiverse
apt-get update

2.回到scrt的远程ssh界面.(注意,不要进到跳板100.1里面去了)
安装kvm虚拟机

apt-get install ubuntu-virt-server python-vm-builder kvm-ipxe

安装kvm虚拟机的图形化界面

apt-get install virt-manager

安装kvm桥接组件

apt-get install bridge-utils

3.配置kvm桥接.

vi /etc/network/interfaces
修改如下内容
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.100.2
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
gateway 192.168.100.254
dns-nameservers 8.8.8.8
为
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.100.2
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
gateway 192.168.100.254
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
dns-nameservers 114.114.114.114

再三确认,仔细确认,确认ok,下一步。
4.重启机器(若是前面没做好,估计你线上的这台机器,估计就要和你say good bye了),5分钟后重新连上去,切换到root用户.

reboot
漫长的等待
sudo su - root
ifconfig,确认:
br0网桥,并绑定有ip.
eth0,木有ip.
lo,绑定127.0.0.1.
virbr0,绑定一个192.168.122.1(也有可能是其他网段).

5.下载centos镜像到本机的/media/.

wget  CentOS-6.7-x86_64-bin-DVD1.iso

(推荐地址 mirrors.aliyun.com) 

6.安装vnc

apt-get install vnc4server
启动vnc
vncserver
输入vnc密码(第一次启动需要输入密码)
xxxxxxx
xxxxxxx
查看vnc端口.
netstat -lntup|grep vnc

7.配置vnc远程连接.

回到跳板机,修改rinnetd文件,完成vnc端口映射,并刷新rinetd进程.(rinetd是linux下一款比较好用的端口映射工具,ubantu下据说可以直接apt-get install rinetd完成安装)
192.168.100.1 已经映射好的端口 192.168.100.2 5901

8.使用vnc的windows客户端,连接Ubantu宿主机192.168.100.2.

选项,调整“颜色、编码”的“颜色底次”为“所有可用颜色”
服务器输入"ip:port",连接后输入密码即可.

9.vnc重新连接(跳过)

vncserver -kill :1
//这里的:1是桌面号
vncserver
netstat -lntup|grep vnc

10.打开kvm的管理界面,开始新装虚拟机。

virt-manager
等5秒。
安装虚拟机操作,选择合适的参数,下一步即可。
(ps经验:假如键盘输入无效,- -,记得切换回英文输入法,并敲空格。 )
65536M 内存 
16 核心
3000 G硬盘(下面的勾勾不要)
br0 网络
网卡信息也提前配置下

11.重启虚拟机之后,删除网卡绑定信息。

删除/etc/udev/rules.d/70-persistent-net.rules

12.关机并完成kvm复制。

13.KVM虚拟机的快速复制

ip文件设置
删除/etc/udev/rules.d/70-persistent-net.rules
history -c && history -w
关机
复制关机后的VM镜像模板文件
cd /var/lib/libvirt/images
cp -av 母板.img 新机器.img
复制模板配置文件
cd /etc/libvirt/qemu/
cp -av 母板.xml 新.xml
修改模板配置文件
修改虚拟机的名称,如:<name>
修改uuid编号 ,如:<uuid>倒数3位
修改mac地址,如:<mac 倒数2位
修改镜像指定位置 
重启libvirtd服务
service libvirt-bin restart
查看虚拟机
virsh list --all 
virsh start vir_new 
virsh list --all

14.上面有一项,网络桥接,这个操作一般不建议操作,为了弄这个桥接,我线上的2台机器失联了(强烈建议本地机器多测试)。

 我们需要10台centos,一个实体机可以做2台,5个实体机才能满足需求,那么问题来了,这10个机器进行互联,咋么办?
做法如下,仅供参考:

实体机的网络配置已在上面配置好桥接,现在来新建一个一个副ip:
ifconfig br0:1 192.168.50.1  netmask 255.255.255.0 up
(实体机计划使用50.1-50.5这一网段,我们只用5个实体机,192.168.100.1只做跳板用,不装虚拟机)
开启iptables,ubantu默认iptables都是放行的。
iptables -t nat -L
然后新建一个转发
iptables -t nat -A POSTROUTING -o br0 -s 192.168.50.0/24 -j MASQUERADE 
虚拟机的网络配置:
ip配成192.168.50.101(虚拟机计划使用50.101-50.110这1网段,10个机器)
网关配成各自对应的实体机对应的副ip(此处为192.168.50.1)
然后重启虚拟机的网卡,虚拟机192.168.50.101 192.168.50.1 192.168.100.2可以互联,虚拟机可以上外网。(5个实体机上面的虚拟机都弄好之后,50.1~50.5 50.101~50.110 100.2~100.6 都是可以随意互联的)

 

参考链接:

    http://help.aliyun.com/knowledge_detail.htm?knowledgeId=5974461 vnc安装参考

    http://www.cnblogs.com/york-hust/archive/2012/05/29/2523437.html  kvm/QEMU桥接网络

特别鸣谢:

    老朋友丁丁的帮助。他对网络的高深技术,给了我极大的帮助,在我最郁闷的时候,就像一盏明灯指引了我。嘿嘿。

posted on 2015-09-18 09:50  低调小门徒  阅读(1280)  评论(0编辑  收藏  举报