Chinaunix首页 | 论坛 | 博客
  • 博客访问: 45399
  • 博文数量: 3
  • 博客积分: 138
  • 博客等级: 入伍新兵
  • 技术积分: 62
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-23 10:18
文章分类
文章存档

2011年(3)

我的朋友

分类: 虚拟化

2011-04-07 16:53:23

硬件:    Dell PowerEdge R200 4 

          Dell PowerEdge T100 1

软件:    Ubuntu Server 10.04 Xen 4.01 Ghost For Linux

集群架构:

MainNode:    No.1 Blade Server

    OS: Ubuntu Server 10.04

Outer IP: xxx.xxx.xxx.xxx

Inner IP: 192.168.100.1

 

Node1:    No.2 Blade Server

OS: Ubuntu Server 10.04 + Xen 4.01

    Inner IP: 192.168.100.2

 

Node2:    No.3 Blade Server

OS: Ubuntu Server 10.04 + Xen 4.01

    Inner IP: 192.168.100.3

 

Node3:    No.4 Blade Server

OS: Ubuntu Server 10.04 + Xen 4.01

    Inner IP: 192.168.100.4

 

SharedStorageCentre:    Tower Server

OS: Ubuntu Server 10.04

    Inner IP: 192.168.100.5

 

首先安装配置好一台服务器的系统环境,然后使用G4LGhost For linux)将安装好的系统直接推到其它机器上,由于我使用Xen虚拟化环境,所以推系统时要求底层硬件相同;如果是在非虚拟化环境下,对于硬件一致性要求有待读者验证。

注:

1.         这里R200T100需要分别安装,不能直推;

2.         推系统前先安装ssh,在我设计的网络拓扑结构中需要用ssh进行节点间访问;

3.         Dell PowerEdge上安装Xen虚拟化环境时,安装后启动时会出现卡在“*Speech-dispatcher configured for user sessions”,应对办法是禁用图形界面。$vi /etc/X11/default-display-manager ,把里面内容改为false。此时,重启后会卡在“Checking battery state”,这时你已经成功启动Xen,只需要使用其它终端即可登录,例如Alt+F2

4.         G4L的使用将在后文给出。

 

在每台用G4L推装的系统上,需要进行以下三点修改:

一、更改主机名,方便日后使用。具体步骤如下:

       1.启用root用户

          运行命令 sudo su 

       2.root用户身份登录

           1)编辑文件/etc/hosts 将下面的一行

           127.0.1.1    xxxxx

         替换为

           127.0.1.1    newhostname

          2) 编辑 /etc/hostname文件 删除该文件的所有内容,添加newhostname

          3)运行一下命令 hostname newhostname

       3.退出root用户 改用一般用户登录即可

       注:其中 xxxxx为原来的主机名 newhostname为你想修改的主机名

             

二、更改各个节点的IP,由于各个节点的系统是由一台Copy的,这时会出现默认的第一块网卡不是eth0的现象。例如:我的机器是双网卡,推完系统后,输入ifconfig出现eth2eth3,而eth0eth1不见了;这时,编辑 /etc/udev/rules.d/70-persistent-net.rules 文件,发现eth0-eth3的信息都存在,要做的是删掉eth0eth1,并把eth2eth3改为eth1eth2,重启即可。

      

三、推装的系统还有可能出现网络不通的现象,不要着急,输入route,如果看到有两个default项,删除peth对应项即可。执行命令 sudo route del default dev peth0 。原因是机器路由表遇到两个default,不知该向哪发出数据包。

 

在我设计的网络拓扑环境下,内部节点不能访问外网,所以在主节点进行如下操作,利用主节点双网卡进行路由:

iptables -A POSTROUTING -t nat -s 192.168.100.0/24 -o eth1 -j SNAT --to-source xxx.xxx.xxx.xxx(Outer IP)

echo 1 > /proc/sys/net/ipv4/ip_forward 

 

       进行到这一步,你的集群系统环境基本搭建完毕,下面需要搭建共享存储器,以便虚拟机进行迁移。虚拟机迁移有存储还原迁移法和动态迁移法,我使用动态迁移法。

 

首先,/etc/hosts 添加所有节点的IP和节点名这样可以使用节点名在各个节点之间进行访问了

192.168.100.1   MainNode

192.168.100.2   Node1

192.168.100.3   Node2

192.168.100.4   Node3

192.168.100.5   SharedStorageCentre

 

SharedStorageCentre

1.         执行sudo apt-get install nfs-kernel-server

2.         sudo mkdir /xen-storage

3.         编辑/etc /exports 文件,加入下面一行来导出存储器目录:

# /xen-storage *rwsyncno_root_squash

 

Node1-Node3

1.         sudo mkdir /xen-storage

2.         执行临时挂载命令sudo mount SharedStorageCentre:/xen-storage /xen-storage

3.         /etc/fstab 中添加 SharedStorageCentre:/xen-storage /xen-storage nfs defaults 0 0 以便重启后自动挂载

4.         需要注意的是,要想改变Domain的运行地点,必须修改默认的Xend配置文件/etc/xen/xend-config.sxp。此外,要使所做的修改在主机上生效,必须重新启动Xen 服务器所在的主机。 我们需要修改以下配置:

 

Xend-relocation-server :该标志用于启用/取消服务器迁移功能。默认时,该标志设为no ,即不允许改变服务器的位置。在迁移过程中,Domain虚拟内存将变成未经任何加密的原始形式。所以,在不可信的网络上启用该选项时一定要倍加小心。

Xend-relocation-port Xend守护进程通过该端口进行迁移。这个端口的缺省值是8002

  另外,还有两个无需修改的参数,当在企业部署环境进行迁移时也要注意一下:

Xend-relocation-address :该标志将Domain的迁移限制到特定的接口上。指定的地址是侦听用于Domain迁移的入局连接的接口地址。只有启用Xend-relocation-server参数后,才会用到这个标志。默认为允许所有接口。

Xend-relocation-hosts-allow:这个标志定义了允许跟迁移端口进行通信的主机。其值为一个由空格分隔的正则表达式序列。如果该值为空,那么将允许全部输入连接,否则,该值要么与一个IP地址相匹配,要么与一个完整域名相匹配。

 

 

5.         建立多个运行在NFS 服务器存储器上的Xen Domain,并在Node1-Node3上启动各自对应的客户机Domain.具体方法是在Node1-Node3上建立并运行虚拟机,其路径为/xen-storage

6.         动态迁移命令:

# xm migrate –live DomName destinyIP

 

阅读(2400) | 评论(0) | 转发(0) |
0

上一篇:[原创] Ubuntu 10.04安装Xen 4.0.1添加Xenoprof支持

下一篇:没有了

给主人留下些什么吧!~~