发布时间:2014-09-05 17:22:19作者:知识屋
SUN 每隔一段事件都会有一些折旧的服务器捐给大学、实验室、研究机构等。我们项目组就刚 “骗” 了几台免费的 Sun Fire 服务器,当然也和我们是 SUN(也许现在应该叫 Oracle)的长期客户有关,我们的服务器基本都是 SUN 的。现在只要新机器一进来就先虚拟化,虚拟化后才能上机柜,技术变化太快了,记得几年前我们买机器一上来首先装的是操作系统,现在 hypervisor 代替了操作系统。
首先最小化安装64位的 Debian,下面的安装步骤和配置过程基于 Debian 5.04 版本,CentOS 版本可以参看:在 CentOS 上安装和配置 Xen,Ubuntu 版本可以参看:在Ubuntu 上安装和配置Xen ,OpenSolaris 版本参看:在 OpenSolaris 上安装和配置 Xen .
安装 Xen
检查一下 source list:
# vi /etc/apt/sources.list
deb http://http.us.debian.org/debian stable main contrib non-free
#deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free
安装 Xen 及相关工具:
# apt-get install xen-hypervisor-3.2-1-amd64
xen-linux-system-2.6.26-1-xen-amd64 xen-utils-3.2-1
xenstore-utils xenwatch xen-shell xen-tools
我们需要很多 loop devices 来挂载基于文件的虚拟机,所以需要把 loop device 的数目限制设成最大:
# vi /etc/modules
loop max_loop=64
安装完 Xen 后,Debian 上的 Xen 的默认网络配置用的是 network-dummy,和 CentOS 上有点不一样,我们需要修改成 bridge 以便每个虚拟机都像一个独立机器一样运行在网络上:
# vi /etc/xen/xend-config.sxp
#(network-script network-dummy)
(network-script network-bridge)
安装成功后,检查 Xen 内核是否已经装好,并给内核加上 dom0_mem=256M 限制 Xen Dom0 的内存,防止 dom0 把内存耗光:
# vi /boot/grub/menu.lst
...
title Xen 3.2-1-amd64 / Debian GNU/Linux, kernel 2.6.26-2-xen-amd64
root (hd0,0)
kernel /xen-3.2-1-amd64.gz dom0_mem=256M
module /vmlinuz-2.6.26-2-xen-amd64 root=/dev/mapper/vpsee-root ro console=tty0
module /initrd.img-2.6.26-2-xen-amd64
...
重启系统后检查一下是否是 Xen 的内核以及 Xen 是否启动:
# reboot
# uname -r
2.6.26-2-xen-amd64
# xm list
Name ID Mem VCPUs State Time(s)
Domain-0 0 256 2 r----- 9.3
创建和安装 guest
如果把正在运行的 Xen 内核的操作系统看成 host 的话,那么运行在 host 上面的操作系统就可以看成 guest。先建一个目录用来存放所有的 guest 操作系统的 image,vm01.img,vm02.img 等,1个 guest 对应1个 image。
# mkdir /vm
# xen-create-image --hostname=vm01 --size=10Gb --swap=512Mb --ide
--ip=172.16.39.121 --netmask=255.255.254.0 --gateway=172.16.38.1 --force
--dir=/vm --memory=512Mb --arch=i386
--kernel=/boot/vmlinuz-2.6.26-2-xen-amd64
--debootstrap --dist=etch --mirror=http://ftp2.de.debian.org/debian/ --password
可以根据需要调整 /etc/xen-tools/xen-tools.conf
进入 guest
安装成功后需要增加给对应的虚拟机器增加一个 Xen 配置文件以便 Xen 能启动这个虚拟机:
# vi /etc/xen/vm01
kernel = /boot/vmlinuz-2.6.26-2-xen-amd64
ramdisk = /boot/initrd.img-2.6.26-2-xen-amd64
memory = 512
root = /dev/xvda2 ro
disk = [
file:/vm/domains/vm01/swap.img,xvda1,w,
file:/vm/domains/vm01/disk.img,xvda2,w,
]
name = vm01
vif = [ ip=172.16.39.121,mac=00:16:3E:C0:21:DE ]
on_poweroff = destroy
on_reboot = restart
on_crash = restart
启动刚安装的 Debian 虚拟机后就可以登录了,
# xm create vm01
# xm console vm01
如果要退出 guest 的话,用 Ctrl + ],就会回到 host。
如果想每次启动 host 时自动启动 guest 的话:
# ln -s /etc/xen/vm01 /etc/xen/auto
更懒的办法
如果觉得安装 guest 操作系统太麻烦,可以到 http://stacklet.com/ 下载一个已经装好的镜像文件,调整 Xen guest 的配置文件,然后在 host 下启动 guest 镜像就可以了,这里和这里有更详细的介绍。
增加 swap
如何给 guest 系统(domU)增加 swap,这里有介绍
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能