架设基于Linux(2.6内核)的服务器集群的论文
操作系统论文
什么是集群
集群是一组独立的计算机系统构成一个松耦合的多处理器系统 它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送实现分布式计算机。集群的工作方式类似于人们之间的协同工作。vs-nat集群是一种最简单的集群。他的结构类似于l inux透明代理服务器。
这是从网络上下载的一幅图这是一种典型的nat结构。可以用此种结构作简单测试。上图的lvs标识是一台l inux主机 它负责均衡流量。通常称它为l inux虚拟服务器。 rs1标识和rs2标识是实际的服务器。虚拟服务器不处理服务请求所有的请求都由实际服务器处理。 上图的nat结构非常简单可以根据实际情况修改网络结构。lvs上的配置过程
负载均衡是内核级别的一个功能模块发行版上一般不会提供负载均衡的功能。因此我们需要重新编译内核使其支持负载均衡功能。 Www. .cOM我们选择的是最新版的内核
2.6. 14版本。
以下是编译并使新内核正确工作的过程。
首先从上下载源代码包module-init-tools-3. 1 .tar.bz2
从名字上就可以看出这是和模块相关的一些工具。我们将负载均衡作为模块加载到内核里。
用tar ?cjzvf解压缩接着按照readme中的步骤安装即可。
./conf igure ?cpref ix=/make moveoldmakemake instal l
此时module-init-tools安装完毕。
下面安装2.6. 14内核的过程
从上下载源代码包l inux-2.6. 14.2.tar.bz2到/usr/src/目录
用tar ?cjxvf l inux-2.6. 14.2.tar.bz2命令解压缩
解压缩之后产生l inux-2.6. 14 目录
将此目录更名mv l inux-2.6. 14 l inux
然后执行cd /usr/src/l inuxmake menuconf ig这是一个图形化的内核配置工具。可以用这个工具来选择新内核的功能。在此就不详细说明了只需要选择exit即可。make这是编译内核的命令这个命令执行的时间比较长需要耐心等待了 :-)make modules这是编译内核模块的命令时间不会太长看你的cpu速度了make modules_instal l 当然是安装模块了
至此一个崭新的属于你自己的内核就编译完成了
接下来还需要做一些工作使新内核顺利工作
当内核编译完成的时候新的内核的位置是在/usr/src/l inux/arch/i386/boot下其中的bzimage就是你的新内核: -)cp bzimage /boot将新内核拷贝到系统的启动分区
接下来修改grub 如果你装的是l i lo也没关系方法大致上是一样的vi /etc/grub.conf
追加以下内容title l inux vi rtue serverroot (hd0,0)kernel /boot/bzimage root=/dev/hda1
然后保存退出。reboot重起就会发现在选择时多了一项l inux vi rtue server
选择该项就可以用你的新内核了.
接下来介绍ipvsadmipvsadm是配置内核流量分配策略的工具。它可以让我们选择采用什么策略来转发数据包。
最简单的策略就是轮循了。就象玩牌时发牌一样。外部的请求轮流发给实际服务器。它的安装太简单了在readme中有说明: )
安装完毕执行以下命令:echo 1 > /proc/sys/net/ipv4/ip_forward
./ipvsadm -c
./ipvsadm ?ca ?ct 192. 168.88.23:80 ?cs rr
./ipvsadm ?ca ?ct 192. 168.88.23:80 -r 10.0.0.2:80 - m
./ipvsadm ?ca ?ct 192. 168.88.23:80 -r 10.0.0.3:80 - m
./ipvsadm ?ca ?ct 192. 168.88.23:80 -r 10.0.0.4:80 - m
//第一句的意思是使l inux主机支持数据包转发
//第二句的意思是清空内核虚拟列表
//第三句的意思是加入一项虚拟服务提供服务的是192. 168.88.23的80端口
//-s参数指定调度方式rr为轮循
//第四句的意思是为上面的虚拟服务加入一个实际服务器 ip为10.0.0.2,端口为80
//-m参数指定nat方式
//接下来的不用我说了吧: -)
上面是我测试时用的代码。简单说明一下它的结构用一台机器做负载均衡 它有两块网卡 1块的ip为192. 168.88.23,这个ip是整个集群对外的ip.另一块的ip为10.0.0. 1 .这个ip
的作用当然就是连接实际的服务器了j我测试时用三台机器做实际服务器 ip为
10.0.0.2
10.0.0.3和10.0.0.3,他们的网关都设为10.0.0. 1 ,系统都为redhat9.0,都由apache做服务。
如果大家有公有ip的话就把原来ip为192. 168.88.23的网卡设为你的公有ip就行了。
关于iptables
我下了新版本的iptables-1 .3.4。解压缩之后按照instal l中的说明安装完毕之后执行
./iptables ?ct nat ?ca postrouting ?cs 10.0.0.0/24 ?cd 0.0.0.0/0 -j snat ?cto 192. 168.88.23。
测试
在10.0.0.2, 10.0.0.3. 10.0.0.4上分别布置不同的index. html . redhat9上默认的主页位置在
/var/www/html/.然后执行service httpd start就行了。在192. 168.88.21上浏览
192. 168.88.23,会出现其中的一个index. html .这里需要注意一下浏览器的设置需要
删除临时文件之后刷新一下才能看到其他的index. html .这是浏览器的问题不是配置出错。能够看到不同的主页面说明3个实际服务器都能正常工作集群就可以工作了。
问题
如果负责流量分配的机器瘫痪了怎么办或者实际服务器出了问题该怎么解决
第一个问题采用的方法是热备份。这也是大多数集群采用的方法。需要heatbeat软件
第二个问题采用的方法是在负载均衡机器上配置keepal ive软件。
-全文完-
tmthosting怎么样?tmthosting家本站也分享过多次,之前也是不温不火的商家,加上商家的价格略贵,之到斯巴达商家出现,这个商家才被中国用户熟知,原因就是斯巴达家的机器是三网回程AS4837线路,而且也没有多余的加价,斯巴达家断货后,有朋友发现TMTHosting竟然也在同一机房,所以大家就都入手了TMTHosting家的机器。目前,TMTHosting商家放出了夏季优惠,针对VPS推...
外贸主机哪家好?抗投诉VPS哪家好?无视DMCA。ParkinHost今年还没有搞过促销,这次parkinhost俄罗斯机房上新服务器,母机采用2个E5-2680v3处理器、128G内存、RAID10硬盘、2Gbps上行线路。具体到VPS全部200Mbps带宽,除了最便宜的套餐限制流量之外,其他的全部是无限流量VPS。ParkinHost,成立于 2013 年,印度主机商,隶属于 DiggDigi...
百纵科技怎么样?百纵科技国人商家,ISP ICP 电信增值许可证的正规公司,近期上线美国C3机房洛杉矶独立服务器,大带宽/高配置多ip站群服务器。百纵科技拥有专业技术售后团队,机器支持自动化,自助安装系统 重启,开机交付时间 30分钟内交付!美国洛杉矶高防服务器配置特点: 硬件配置高 线路稳定 洛杉矶C3机房等级T4 平价销售,支持免费测试,美国独服适合做站,满意付款。点击进入:百纵科技官方网站地...