免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2722 | 回复: 3
打印 上一主题 下一主题

在Redhat上部署DHCP Server的负载均衡[08年月10月刊] [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-12 17:22 |只看该作者 |倒序浏览
黄雨
【前言】
传统的DHCP服务器的冗余部署都是采用80/20原则,即在主服务器上配置80%的地址池,备机上配置20%的地址池,以避免发生地址冲突问题。当主服务器宕机时,备机可以在短期内接替主服务器工作。但这种做法,无疑需浪费大量的地址池空间,因为需保证20%的备机地址池能够满足客户机的地址需求。

【摘要】
近几年随着技术的发展,已经可以实现DHCP服务器的负载均衡配置。本文的部署的软件环境为:Red Hat Enterprise Linux AS release 4 (Nahant Update 5),采用操作系统自带的DHCP软件;主要硬件为24核至强CPU8G内存。最多配置了8千多个地址池,为十数万用户提供DHCP服务。

第一节:安装软件包
用命令行安装软件包(在第5张光盘上)或直接“添加删除程序--网络服务器”,只要安装dhcp-3.0.1-59.EL4.i386.rpm


第二节:配置DHCP双机负载均衡
目前DHCP-Failover(虽然叫failover,但实际上是双机同时在工作)仅支持最多两个节点。配置文件和单机配置一样,依然是/etc/dhcpd.conf;但出于方便管理的目的,在部署时,我们把地址池的配置放在/etc/dhcpd.master文件中,然后在/etc/dhcpd.conf中调用。
主节点的/etc/dhcpd.conf
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
primary;
address 10.14.0.9;
port 520;
peer address 10.14.0.13;
peer port 519;
max-response-delay 60;
max-unacked-updates 10;
mclt 600;
split 128;
load balance max seconds 3;
}
include "/etc/dhcpd.master";
次节点的/etc/dhcpd.conf
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
secondary;
address 10.14.0.13;
port 519;
peer address 10.14.0.9;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
}
include "/etc/dhcpd.master";

【注意】
1、两台dhcp server的时间必须同步,可用ntp
2Dhcp Failover的互相监听地址可以采用专用网卡互相直连做心跳的方式,甚至心跳卡可以考虑双网卡绑定!从而使监听和网络数据流分开,即使网络中断亦不会因此导致dhcp双机中断,如下所示:
这种时候Failover专用接口所在网段,可在地址池中定义一个空池,不做任何地址分配操作:
subnet x.x.x.x netmask 255.255.255.248 {
}

本文列出的配置是采用心跳和数据网卡混用的方式。
/etc/dhcpd.conf
主控服务器
authoritative;
ddns-update-style interim;
ignore client-updates;
one-lease-per-client true;
failover peer "dhcp" {
primary;
address 10.14.0.9;
port 520;
peer address 10.14.0.13;
peer port 519;
max-response-delay 60;

max-unacked-updates 20;
mclt 3600;
split 128;
load balance max seconds 3;
}
include "/etc/dhcpd.master";
说明
说明这是正式(官方)服务器,而非测试用
动态DNS的更新方式,有31
不允许客户机更新DNS记录
每一个客户机对应一个租约信息(文件)2
指定本机所属failover域的识别码为dhcp
指定本机为主控服务器
指定本机的监听地址
指定本机的监听端口
对端的监听地址
对端的监听端口
最大无响应时间 60秒,如果地址池很多这个时间可加大3
在得到对端响应之前,最多连续发送20个消息
双机联系中断时所分配的地址的租约时间,3600
负载分担比例,取值0256128为平均分担负载


地址池文件
【注1】这个style参数必须是interim(推荐)ad-hoc或者none
【注2假如这个标志配置成trueenabled),当一个客户端发送一个DHCPREQUEST信息来租用租约时,服务器会自动释放任何这个客户的任何其他租约。服务器假定当一个客户端发送DHCPREQUEST信息时,他已忘记任何他没有在 DHCPREQUEST中提到的租约,例如,客户端只是个简单的网络接口,不能记住原来拥有而现在不用的租约。这些假定都是没有确保,而且不可证实的,因此小心使用这个语句。
【注3】如果这个值不够大,会发生地址池还未同步结束,就产生连接中断现象。在拥有近1万个地址池时,这个值被设为180
/etc/dhcpd.master
两个节点的地址池配置必须保持完全一致。
option domain-name-servers 10.14.0.9,10.14.0.13;
default-lease-time 21600;
max-lease-time 43200;

subnet 10.14.0.8 netmask 255.255.255.248 {
option routers 10.14.0.14;
pool {
failover peer "dhcp";
range 10.14.0.11 10.14.0.12;
deny dynamic bootp clients;
}
}

#shuniu
subnet 10.0.0.0 netmask 255.255.224.0 {
option routers 10.0.31.254;
pool {
failover peer "dhcp";
range 10.0.0.1 10.0.31.250;
deny dynamic bootp clients;
}
}
......
有多少个网段就有多少个地址池,一个个配置下去。
域名服务器
默认租约时间(6小时)
最大租约时间

定义子网/掩码
定义子网的网关
地址池
属于名为 dhcp failover
地址范围,可多条range
拒绝bootp客户端

第三节:管理操作
  • 在两个节点依次启动dhcp服务,先主后备。
# service dhcpd start
  • 配置自动启动
# chkconfig dhcpd on
  • 验证
# netstat -anutp | grep dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 6581/dhcpd
  • 查看地址租借信息
# cat /var/lib/dhcp/dhcpd.leases
3.1、租约文件
dhcpd每次都会把所有的租借信息写到/var/lib/dhcpd.leases文件中,上一次的租借文件被改名成dhcpd.leases~
3.2、地址池同步
每次重启DHCP服务时,双机都会自动执行地址池同步操作。
在次服务器上:
# service dhcpd congrestart
3.3、查看日志信息
凡是有任何和DHCP服务器的地址分配有关的故障,都可以通过查看日志文件分析出原因并得以处理。
# tail -f /var/log/messages
其他的故障绝大部分是由于作为中转的DHCP-RELAY设备配置有问题导致。
3.4、简要故障
1、某台服务器无法为某个网段的客户机提供地址租借服务
有时会由于某种原因导致双机地址池无法合理分配,比如主服务器掌控了某个地址池的所有地址,这时需要先停止两个节点的dhcp服务,删除两个节点的地址租约文件,然后依次重启服务。
2、无法形成双机
请注意两个节点的时间是否一致,如果时间差距太大,比如2分钟,两台dhcp服务器将无法形成集群。可通过配置ntp保持两个节点的时间同步。

论坛徽章:
0
2 [报告]
发表于 2009-03-25 08:37 |只看该作者
我在实际操作过程中.遇见了这样一个问题.当一台DHCP 服务器Down时.  别一台服务器是起了作用.  而且客户端也能分到地址,但是当客户端用ipconfig /release 释放地址之后就会获得一个新的IP,直到地址池耗尽不能在分到IP.试过了改很多东西都不灵.  高人赐教吗?

论坛徽章:
0
3 [报告]
发表于 2009-03-26 15:45 |只看该作者

楼主试过吗?

实验过没?呵呵。   有没有遇到和我一样的情况

论坛徽章:
0
4 [报告]
发表于 2009-06-24 10:34 |只看该作者
release了当然是重新分配了。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP