LVS+NAT负载_均衡器

一、负载均衡器端

1.安装(MASTER、BACKUP)

A、wget http://mirrors.163.com/.help/CentOS6-Base-163.repo -O /etc/yum.repos.d/CentOS-Base.repo

B、yum makecache

C、yum -y update

D、yum -y install ipvsadm modcluster piranha system-config-cluster 

2.撰写配置文件



# 在内核里打开ip转发功能

# Kernel sysctl configuration file

net.ipv4.ip_forward = 1

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

net.core.netdev_max_backlog = 32768

net.core.somaxconn = 32768

net.core.rmem_max = 16777216

net.core.rmem_default = 8388608

net.core.wmem_max = 16777216

net.core.wmem_default = 8388608

net.ipv4.tcp_sack = 1

net.ipv4.tcp_window_scaling = 1

net.ipv4.tcp_rmem = 8192 436600 873200

net.ipv4.tcp_wmem = 8192 436600 873200

net.ipv4.tcp_mem = 94500000 915000000 927000000

net.ipv4.tcp_max_orphans = 3276800

net.ipv4.tcp_synack_retries = 2

net.ipv4.tcp_syn_retries = 2

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_timestamps = 0

net.ipv4.tcp_tw_recycle = 1

# net.ipv4.tcp_tw_len = 1

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_fin_timeout = 30

net.ipv4.tcp_keepalive_time = 1200

net.ipv4.ip_local_port_range = 1024 65500

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 5000



[root@lvs1 ~]# cat /etc/sysconfig/ha/lvs.cf

serial_no = 28

primary = 183.62.176.148

primary_private = 172.20.20.121

service = lvs

backup_active = 1

backup = 183.62.176.149

backup_private = 172.20.20.122

heartbeat = 1

heartbeat_port = 539

keepalive = 6

deadtime = 18

network = nat

nat_router = 172.20.20.7 eth0:1

nat_nmask = 255.255.252.0

reservation_conflict_action = preempt

debug_level = NONE

virtual web_http {

     active = 1

     address = 183.62.176.154 eth1:1

     vip_nmask = 255.255.255.240

     port = 8888

     send = "GET / HTTP/1.0\r\n\r\n"

     expect = "HTTP"

     use_regex = 0

     load_monitor = none

     scheduler = wrr

     protocol = tcp

     timeout = 3

     reentry = 15

     quiesce_server = 1

     server web_realserver1 {

         address = 172.20.20.5

         active = 1

         port = 80

         weight = 1

     }


     server web_realserver2 {

         address = 172.20.20.5

         active = 1

         port = 81

         weight = 1

     }

}



[root@storage2 ~]# cat /etc/rc.local 

#!/bin/sh

iptables -t nat -A POSTROUTING -s 172.20.20.0/22 -j MASQUERADE

/sbin/modprobe ip_tables

/sbin/service pulse start

ulimit -SHn 65535



watch ipvsadm -L -n

/sbin/service pulse restart