设本站为首页
|
添加到收藏夹
首 页
课件下载
论文中心
教学教案
试题下载
语文教学
作文大全
实习报告
技术教程
资源搜索:
技术教程
语文教学
试题下载
论文中心
教学教案
课件下载
作文大全
实习报告
数据库教程
|
病毒防治教程
|
网络安全教程
|
服务器网络教程
|
软件开发教程
|
网站建设教程
|
操作系统教程
|
办公软件教程
|
软件教程
您当前的位置:
365bet官方
->
技术教程
->
服务器网络
->
服务器教程
->
域名服务器教程
-> 教程内容
[ 收藏本页教程 ]
lvs安装手册域名服务器教程
教程作者:佚名 教程来源:不详 教程栏目:域名服务器教程
收藏本页
摘要:lvs安装手册 lvs安装手册
RedHat 8.0/9.0 LVS安裝手冊
来源:linuxaid
作者:apile(apilecheng@yahoo.com.tw)
完成日期:2003/08/04
附注:欢迎传阅转寄,并希望可以保留原作者名字
1、前言:
RedHat在 9.0以后,就将ipvsadm这些套件去除,因此如果想使用LVS(Linux Virtual Server),就得自己重新编译核心(kernel),而编译核心是一件穷极无聊的事情,不管是make menuconfig、make xconfig、make config,触目所及都是一堆不是很懂的驱动程序,本文利用一些技巧,将compile kernel变得比较简单,但是如果你有一些不常见的硬设备,请自己想办法Compile,或者利用linux的load module功能自行将该硬件的驱动程序加载进kernel。
Redhat 8.0选择完整安装时,预设已经会支持ipvs,但是他却不支持-NOARP这个网络卡设定选项,因为没有这个-NOARP选项,则LVS无法在同一个网段内设定LVS/DR与LVS/IP Tunnel,会遭遇ARP Problem,所以只好重新编译核心,顺便将kernel更新至比较新的版本,另外RedHat 8.0上比较新的核心,预设不支持ipvs。
首先简单介绍一下LVS到底是什么东西,其实他是一种丛集(Cluster)的
技术
,透过支持IPVS的kernel,来达到LVS/Direct Routing (DR)、LVS/IP Tunnel、LVS/NAT的功能,详细内容请看LVS官方网站。而这些
技术
有什么用呢?其实就是拿来当成High Availability软件,Unix大厂SUN、HP、IBM、SCO等等都有提供这类的软件,但是都要很多钱,而我们没什么钱,只好用Open Source,而Open Source的好处,就是可以达到类似的功能,但不需要花钱。?
以下安装内容主要参考下述网页,非常感谢这些提供基本知识的人,如果你不清楚LVS是什么,看看下面文章,可以有个头绪顺便练练基本的功夫,以免后面的内容你完全不晓得我再写什么。
http://linux.vbird.idv.tw/ 鸟哥的Linux私房菜(Linux基本常识)
http://www.adj.idv.tw/server/linux_lvs.php 在RedHat 7.3上架设LVS
http://www.linuxvirtualserver.org/ LVS的官方网站
http://www.linuxaid.com.cn/articles/2/0/202490941.shtml LinuxAid说明(上)
http://www.linuxaid.com.cn/articles/8/0/807154206.shtml LinuxAid说明(下)
http://mail.incredimail.com/howto/lvs/install/ Alex的网站,重要的patch都从这儿抓取
附带一提:
如果你参考Linux Virtual Server的官方网站上的作法,我在REDHAT 8上编译了十多次的kernel也作不出来,后来发现是因为RedHat在kernel-2.4.20-19.8的source中将ipvs的程序代码拿掉,且CIPE版本也不对。
目前最适合拿来当Linux Virtual Server的RedHat版本为7.3,其它的都不是很stable,有兴趣可以用google查查看。
下列方法适用于2.4的kernel,主要在Redhat 8.0上使用,但是RedHat 9.0应该也差不多。
PART I :编译核心
1、首先安装RedHat 8.0
选择全部安装。关闭一些不用的Service与并将vsftp激活。即着手进行kernel的重新编译,此时的kernel版本为2.4.18-18.4。
2、下载oprofile
首先上google找寻oprofile版本要大于0.4的,因为在安装kernel 2.4.20-18.8.rpm的时候会需要这个rpm,如果找不到rpm,就搜寻oprofile-0.4-xx.src.rpm。
2.1、安装oprofile
# rpm -ivh oprofile-0.4-44.8.1.src.rpm
# cd /usr/src/redhat/SPECS
# vi oprofile.spec 将(BuildPreReq: kernel-source >=2.4.20)用# mark起来
# rpmbuild -bb oprofile.spec
# cd /usr/src/redhat/RPMS/i386/
# rpm -ivh oprofile-0.4-44.8.1.i386.rpm(安装oprofile)
3、安装内核
安装kernel 2.4.20-18.8的kernel,上
http://ftp.nsysu.edu.tw/Linux/RedHat/updates/
抓取kernel-2.4.20-18.8的rpm核心,因为我测试环境有三部,一部是我的notebook (P4 CPU、512MB RAM),一部是有4GB RAM与两颗CPU(PIII 700)的机器,一部是有1GB RAM与两颗有hyper threading P4 CPU的计算机。所以我总共抓了三个RPM,分别是
kernel-2.4.20-18.8.i686.rpm 02-Jun-2003 23:34 13.3M
kernel-bigmem-2.4.20-18.8.i686.rpm 02-Jun-2003 23:34 13.9M
kernel-smp-2.4.20-18.8.i686.rpm 02-Jun-2003 23:34 13.9M
然后在各部机器上先安装上述RPM:若不清楚倒底要用那个,可以用uname -r
2.4.20-18.8bigmem (就用bigmem的版本)
#rpm -ivh kernel-2.4.20-18.8.i686.rpm
检查grub(/boot/grub/grub.conf)或lilo(/etc/lilo.conf)的设定是不是正确?
如果正确,就重新激活机器(shutdown -i 6 now),用2.4.20-18.8开机,检查有无错误。
4、安装内核源码
然后上
http://www.redhat.com
抓取kernel-source-2.4.20-19.8.i386.rpm这个kernel的核心。利用
# rpm -ivh kernel-source-2.4.20-19.8.i386.rpm
安装,他会建立两个目录:
/usr/src/linux-2.4.20-19.8 (directory)
/usr/src/linux-2.4->/usr/src/linux-2.4.20-19.8 (Symbolic Link)
但是我们还要另外建立一个symbolic link
#ln -s ./linux-2.4.20-19.8 ./linux
因为等会要上ipvs patch的时候,他一定会link到/usr/src/linux这个目录,所以要另外建立这个Soft Link。
5、因为我们先前有安装过2.4.20-18.8的rpm文件,所以在/boot目录下,可以找到
-rw-r--r-- 1 root root 44764 5月 29 19:49 config-2.4.20-18.8
这个档案,将这个档案copy至/usr/src/linux/.config
# cp /boot/config-2.4.20-18.8 /usr/src/linux/.config
因为等会我要利用make oldconfig去作…他default会去读取/usr/src/linux/.config这个file
注意:这就是我所说的技巧,因为我先前用make config、make menuconfig选取那些modules,但是因为数量实在太多,看得眼花撩乱,而且选完不知道为什么总有一两地方有问题无法compile成功,无意间被我发现2.4.20-18.8的config档案与2.4.20-19.8的config档案一模一样,加上kernel的README中又有写make oldconfig会去读取,.config这个档案,所以我才会想到用这个方法或许可行,因为2.4.20-18.8都可以正常激活机器了,不可能用相同的config 档案,2.4.20-19.8就无法激活。其它版本,应该也差不多,先安装一个差不多版本的kernel,再用他的config去重新compile支持ipvs的kernel。
6、给kernel的source file上Patch:
6.1、使用LVS的内核补丁
上Linux Virtual Server的网页抓取kernel-2.4.0-20的PATCH档案下来,我是抓下面这个档案:
The IPVS Netfilter module for kernel 2.4 - Version 1.0.9 - May 21, 2003 (
http://www.linuxvirtualserver.org/software/kernel-2.4/ipvs-1.0.9.tar.gz
)
取得ipvs-1.0.9.tar.gz 这个档案
我试过抓linux-2.4.20-ipvs-1.0.9.patch.gz 这个档案,但是从来没有compile成功过,所以放弃。
6.2、将ipvs-1.09.tar.gz解开,放在/usr/src/source/ipvs-1.0.9这个目录下,然后在这个目录下,输入
# make patchkernel
# make installsource
将IPVS的Patch加载到kernel的source中
6.3、加载 "hidden"的patch
可以到
http://mail.incredimail.com/howto/lvs/install/src/
这个目录中抓取(hidden-2.4.20pre10-1.diff)这个patch档案,放在/usr/src/linux目录下,利用:
# cat hidden-2.4.20pre10-1.diff | patch -p1
对Kernel进行patch,非常感谢Alex提供上述Patch。
注意:为什么这里要对kernel进行hidden的patch,因为在使用LVS中的DR与IP Tunnel的时候,会需要有一块网络卡要设定两个IP的情形,但是Linux在2.2.14之后,就将eth0:1的-NOARP这个FLAG关闭。也就是说在kernel 2.2.14以后,eth0:1就视为eth0的别名,任何对eth0:1的设定也同样作用在eth0,换句话说,我对eth0:1下-NOARP,同样也会对eth0有作用,这样会使得整张网络卡收不到封包。
在上述两种模式下,因为我所有的机器都放在同一个网段,当该网段的Router接收到客户端(Client)对虚拟IP(Virtual IP)的TCP connection要求时,会先在网段中利用Arp request询问谁有VIP的地址,而包含Director与RealServers上所有的interface(不管Primary还是Subinterface),只要他有那个ip,都会发送arp reply回去,造成网段内所有拥有Virtual IP的interface都会reply给Router,最后结果就是看谁的速度快,Router就将该封包送给谁,如此会造成LVS的Server并无法发挥其效果,因此需要利用hidden这个pattch,将Subinterface上的Virtual IP给隐藏起来,如此他就不会对Arp Request进行Reply,如此就可以解决ARP的问题,而这个NOARP的问题,kerne
上一篇:
关闭Linux中响铃的方法域名服务器教程
下一篇:
BIND 高级特性-- 动态更新域名服务器教程
【
加入收藏
】【
告诉好友
】【
大
中
小
】【
打印此文
】【
回到顶部
】【
关闭窗口
】
相关教程
·
带认证的Sendmail安装手册邮件服务器教程
·
PHP+JSP/servlets+Mysql+postgresql+apache完全安装
·
ArGoSoftMailServer安装手册Web服务器教程
·
EasyMail安装手册Web服务器教程
·
POSTFIX和CYRUSIMAP安装手册Web服务器教程
·
WU-FTPD安装手册Web服务器教程
·
MySQL的DBI/DBD简明安装手册Mysql教程
教程评论
评论:
!
查看更多评论
内容:
!
验证码:
(注“
!
”为必填内容。)
教程分类
Windows 9XMEXP教程
Windows NT20002003
LinuxBSD教程
系统综合教程
IISApache教程
硬件技术教程
Web服务器教程
FTP服务器教程
邮件服务器教程
域名服务器教程
Windows服务器教程
代理服务器教程
服务器综合教程
最新教程
·
dig命令的使用.域名服务器教程
·
DNS的全称及组成域名服务器教程
·
bind9做泛域名和次级域名解析的例子域
·
DNS相关定义介绍域名服务器教程
·
全国DNS地址查询域名服务器教程
·
这个帖彻底提高了我的DNS认识域名服务
·
dns全攻略域名服务器教程
·
一个自动ftp的脚本域名服务器教程
·
ANSI控制码的说明域名服务器教程
·
DNS MX记录一定要放在A记录之前域名服
·
10进制转换为2,8,16进制.[bash]域名服
·
在as4上配置dns(1)域名服务器教程
·
DNS安装配置全过程(BIND)域名服务器教
·
安装设置动态域名QDNS域名服务器教程
·
简单配置dns过程域名服务器教程
本周热门教程
BIND 高级特性(一)-- 转发 forwarder域
安装设置动态域名QDNS域名服务器教程
DNS安装配置全过程域名服务器教程
DNS安装配置全过程(BIND)域名服务器教程
dig 命令的基本用法域名服务器教程
反向解析域是怎么授权的域名服务器教程
dns中soa和ns记录的作用???域名服务器教
BIND 高级特性(二)-- 动态更新域名服务
从源文件构件bind9域名服务器域名服务器教程
在防火墙环境下DNS的安装与设置域名服务器教
10进制转换为2,8,16进制.[bash]域名服务器教
简单配置dns过程域名服务器教程
架设DNS服务器要谨慎域名服务器教程
nslookup 错误 Cant find server name for
DNS Cache 的一些小技巧汇总域名服务器教程
热门教程
全国DNS地址查询域名服务器教程
DNS安装配置全过程(BIND)域名服务器教程
nslookup 错误 Cant find server name for
BIND 高级特性(一)-- 转发 forwarder域
关于windows下的hosts文件为何不起作用域名
安装设置动态域名QDNS域名服务器教程
dig命令的使用.域名服务器教程
DNS MX记录一定要放在A记录之前域名服务器教
dns中soa和ns记录的作用???域名服务器教
一个疑问:为何某些门户网站直接输入IP地址
JAVA操作Excel电子表格域名服务器教程
DNS的全称及组成域名服务器教程
如何在Linux服务器上设置DNS域名服务器教程
bind9做泛域名和次级域名解析的例子域名服务
10进制转换为2,8,16进制.[bash]域名服务器教
我要投稿
-
广告合作
-
关于本站
-
友情连接
-
网站地图
-
联系我们
-
版权声明
-
设为首页
-
加入收藏
-
网站留言
Copyright © 2009 - 20012
www.www.ct131.com
All Rights Reserved.
365bet官方
版权所有