虚拟服务器负载均衡实现方法
虚拟
服务器:对外它是单一的入口,对内有很多台计算机为它服务.对使用它的人来说,它是一台机器,有单一的入口点.具体的实现技术包括两种: 应用层的虚拟
服务器,网络层的虚拟
服务器.
1.应用层的虚拟 服务器是利用应用层的转发实现的,相当于一台代理 服务器,这正是经常提到的虚拟 服务器.
实现方式:利用apache的 ProxyPass 可以实现对虚拟 服务器的配置.(httpd.conf中)
如某公司的WWW 服务器为 / 在httpd.conf中作如下设置:
ProxyPass /sales http://192.168.0.1/
ProxyPass /rd http://192.168.0.2/
ProxyPass /head http://192.168.0.3/
如上设置生效了以后,对/rd的方位会转到http://192.168.0.2上来.
对/head的访问会转到http://192.168.0.2上来,
客户不直接同 192.168.0.x交互,所有的请求都通过www.fuancn.cn来转发.
过程如下:
client (/sales) <--> www.fuancn.cn <--> 192.168.0.1
`
2.ip层的虚拟 服务器.它是利用ip层的反向masq来实现的.
实现方式:通过对ip包头的目的地址的改写来实现的.linux kernel 2.2.x中带的ip port forward 就是实现的方式.你需要一个管理工具来管理这个方式.此种方式也称为反向NAT.
设置方法:
1. 内核编译中选择 ip_port_forward(??)
2. 利用ipmasqadm 来设置 ip_port_forward.
ipmasqadm -A www.fuancn.cn:80 -R 192.168.0.1:80
具体用法请参考man..这里不对.
ipmasqadm -A www.fuancn.cn:80 -R 192.168.0.2:80
3.设置ipchains
ipchains -A forward -j MASQ -s 192.168.0.0/24
ipchains -A forward -j MASQ -d 192.168.0.0/24
4. OK..
测试:
1 现在你访问/
2 你访问的ip包发到www.fuancn.cn然后目标地址改为192.168.0.x, x为1或2可以由系统的负载平衡算法来选定.
3 处理完毕,请求包发回www.fuancn.cn,然后在发回给客户.
这样,机器就可以扩充了.....你的www 服务器负载太大,利用以上两种方式均可以实现.你的telnet 服务器负载太大,可以用方法2实现.
1.应用层的虚拟 服务器是利用应用层的转发实现的,相当于一台代理 服务器,这正是经常提到的虚拟 服务器.
实现方式:利用apache的 ProxyPass 可以实现对虚拟 服务器的配置.(httpd.conf中)
如某公司的WWW 服务器为 / 在httpd.conf中作如下设置:
ProxyPass /sales http://192.168.0.1/
ProxyPass /rd http://192.168.0.2/
ProxyPass /head http://192.168.0.3/
如上设置生效了以后,对/rd的方位会转到http://192.168.0.2上来.
对/head的访问会转到http://192.168.0.2上来,
客户不直接同 192.168.0.x交互,所有的请求都通过www.fuancn.cn来转发.
过程如下:
client (/sales) <--> www.fuancn.cn <--> 192.168.0.1
`
2.ip层的虚拟 服务器.它是利用ip层的反向masq来实现的.
实现方式:通过对ip包头的目的地址的改写来实现的.linux kernel 2.2.x中带的ip port forward 就是实现的方式.你需要一个管理工具来管理这个方式.此种方式也称为反向NAT.
设置方法:
1. 内核编译中选择 ip_port_forward(??)
2. 利用ipmasqadm 来设置 ip_port_forward.
ipmasqadm -A www.fuancn.cn:80 -R 192.168.0.1:80
具体用法请参考man..这里不对.
ipmasqadm -A www.fuancn.cn:80 -R 192.168.0.2:80
3.设置ipchains
ipchains -A forward -j MASQ -s 192.168.0.0/24
ipchains -A forward -j MASQ -d 192.168.0.0/24
4. OK..
测试:
1 现在你访问/
2 你访问的ip包发到www.fuancn.cn然后目标地址改为192.168.0.x, x为1或2可以由系统的负载平衡算法来选定.
3 处理完毕,请求包发回www.fuancn.cn,然后在发回给客户.
这样,机器就可以扩充了.....你的www 服务器负载太大,利用以上两种方式均可以实现.你的telnet 服务器负载太大,可以用方法2实现.
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?