HonestQiao 发表于 2006-12-09 12:03

原帖由 @kang 于 2006-12-9 11:57 发表
有時間試下ucarp。

  有没有好的开源的存储方案?
  LB负载均衡这些现在都可实现,就存存储方面我还在苦苦追寻,不知道什么时候她在丛中笑。

HonestQiao 发表于 2006-12-09 12:05

ZFS和本坛精华里面的那个海量文件系统,也不知道什么时候才可以正式使用。

硬-盘 发表于 2006-12-14 14:15

原帖由 @kang 于 2006-11-28 19:27 发表
srv01# sysctl net.inet.carp.preempt=1
请问楼主,这句有何作用?谢谢。

以下命令
srv01# kldload /boot/modules/ipvs.ko
srv01# kldload /boot/modules/rr/ip_vs_rr.ko
srv01# ipvsadm –A –t 192.168.2.144:80 -s rr
srv01# ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.133:80 -g
srv01# ipvsadm -a -t 192.168.2.144:80 -r 192.168.1.130:80 –g

机器重启后岂不又要重做?有没有办法让机器重启后自动执行以上命令?谢谢。

[ 本帖最后由 硬-盘 于 2006-12-14 14:19 编辑 ]

jsn 发表于 2006-12-14 14:43

好东东!

@kang 发表于 2006-12-14 19:03

原帖由 硬-盘 于 2006-12-14 14:15 发表

请问楼主,这句有何作用?谢谢。

以下命令
srv01# kldload /boot/modules/ipvs.ko
srv01# kldload /boot/modules/rr/ip_vs_rr.ko
srv01# ipvsadm –A –t 192.168.2.144:80 -s rr
srv01# ipvsadm -a -t...
sysctl net.inet.carp.preempt=1
是指:允許carp搶占,就是說當某台主機的物理網卡故障(down)時,carp interfaces的advskew值將變為240,該主機的角色將被其他主機代替。

[ 本帖最后由 @kang 于 2006-12-14 19:48 编辑 ]

@kang 发表于 2006-12-14 19:14

srv01# kldload /boot/modules/ipvs.ko
srv01# kldload /boot/modules/rr/ip_vs_rr.ko
以上行為加載ipvs相關模塊,如果不加載則ipvsadm命令無法使用。

srv01# ipvsadm –A –t 192.168.2.144:80 -s rr          #在虛擬服務器表中添加一條新的虛擬服務器記錄(httpd服務)
srv01# ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.133:80 -g
srv01# ipvsadm -a -t 192.168.2.144:80 -r 192.168.1.130:80 –g
以上三行為:在虛擬服務器表中添加一條新的真實服務器記錄,該服務為httpd(80 port)服務。以實現httpd的負載均衡。

srv01#ipvsadm -l            #設定好以後查看虛擬服務器情況。

IP Virtual Server version 1.0.10 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port         Forward Weight ActiveConn InActConn
TCP192.168.2.144:http rr
-> srv01:httpRoute   1      0          0         
-> srv02:httpRoute   1      0          0

[ 本帖最后由 @kang 于 2006-12-14 19:49 编辑 ]

@kang 发表于 2006-12-14 19:34

...机器重启后岂不又要重做?有没有办法让机器重启后自动执行以上命令?...
建立開機自啟動腳本如下:
srv01#vi /usr/local/etc/rc.d/LVS.sh    #srv01主機

#!/bin/sh

sysctl net.inet.carp.preempt=1
ifconfig carp0 create
ifconfig carp0 vhid 1 pass 123456 192.168.2.144/32 up
kldload /boot/modules/ipvs.ko
kldload /boot/modules/ip_vs_rr.ko
ipvsadm -A -t 192.168.2.144:80 -s rr
ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.133:80 -g
ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.130:80 -g

srv01#chmod 555 /usr/local/etc/rc.d/LVS.sh

srv02#vi /usr/local/etc/rc.d/LVS.sh    #srv02主機

#!/bin/sh

sysctl net.inet.carp.preempt=1
ifconfig carp0 create
ifconfig carp0 vhid 1 advskew 100 pass 123456 192.168.2.144/32 up
kldload /boot/modules/ipvs.ko
kldload /boot/modules/ip_vs_rr.ko
ipvsadm -A -t 192.168.2.144:80 -s rr
ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.133:80 -g
ipvsadm -a -t 192.168.2.144:80 -r 192.168.2.130:80 -g

srv02#chmod 555 /usr/local/etc/rc.d/LVS.sh

@kang 发表于 2006-12-14 19:59

ipvsadm的用法和格式

ipvsadm的用法和格式如下:

ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p ] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port [-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h

命令选项解释:
命令选项长短格式具有相同的意思。在实际使用时,两种都可以。
-A --add-service 在虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器,每个服务为一条记录。
-E --edit-service 编辑虚拟服务器表中的一条虚拟服务器记录。
-D --delete-service 删除虚拟服务器表中的一条虚拟服务器记录。
-C --clear 清除虚拟服务器表中的所有记录。
-R --restore 恢复虚拟服务器规则
-S --save 保存虚拟服务器规则,输出为-R选项可读的格式
-a --add-server 在虚拟服务器表里添加一条新的真实服务器记录。
-e --edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录
-d --delete-server 删除一条虚拟服务器记录中的某条真实服务器记录
-L|-l --list 显示虚拟服务器表
-Z --zero 虚拟服务表计数器清零(清空当前的连接数量等)
--set tcp tcpfin udp 设置连接超时值
--start-daemon 启动同步守护进程。它后面可以是master或backup,用来说明LVS Router是master或是backup。在这个功能上也可以采用keepalived的VRRP功能。
--stop-daemon 停止同步守护进程
-h --help 显示帮助信息
其它的选项:
-t --tcp-service service-address 说明虚拟服务器提供的是tcp的服务
-u --udp-service service-address 说明虚拟服务器提供的是udp的服务
-f --fwmark-service fwmark 说明是经过iptables标记过的服务类型。
-s --scheduler scheduler 使用的调度算法,有这样几个选项rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默认的调度算法是: wlc.
-p --persistent 持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理。timeout的默认值为300秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真实的服务器
-g --gatewaying 指定LVS的工作模式为直接路由模式(也是LVS默认的模式)
-i --ipip 指定LVS的工作模式为隧道模式
-m --masquerading 指定LVS的工作模式为NAT模式
-w --weight weight 真实服务器的权值
--mcast-interface interface 指定组播的同步接口
-c --connection 显示LVS目前的连接 如:ipvsadm -L -c
--timeout 显示tcp tcpfin udp的timeout值 如:ipvsadm -L --timeout
--daemon 显示同步守护进程状态
--stats 显示统计信息
--rate 显示速率信息
--sort 对虚拟服务器和真实服务器排序输出
--numeric -n 输出IP地址和端口的数字形式

硬-盘 发表于 2006-12-15 10:00

回复 59楼 @kang 的帖子

谢谢楼主热情回复

qdmacat 发表于 2006-12-15 11:46

這樣的好文,,不得不頂!
页: 1 2 3 4 5 [6] 7 8 9 10 11
查看完整版本: FreeBSD6.x(7.x) +CARP+IPVS双机热备份负载均衡Ver1.0