lvs-nat 模式-piranha
系統: redhat 6.5 mini
機器名 |
ip |
vip |
gw |
lvs01(主lvs) |
192.168.10.10(外網) 192.168.20.10(內網) |
192.168.10.254 |
|
lvs02(備lvs) |
192.168.20.10(外網) 192.168.20.20(內網) |
192.168.10.254 |
|
rs01 (web) |
192.168.20.100 |
192.168.20.254 |
192.168.20.254 |
rs02 (web) |
192.168.20.200 |
192.168.20.254 |
192.168.20.254 |
1、 在各個機器上配置ip地址,機器名,關閉selinux,同步時間
[root@lvs01 ~]# hostname
lvs01
[root@lvs01 ~]# getenforce
Disabled
[root@lvs02 ~]# hostname
lvs02
[root@lvs02 ~]# getenforce
Disabled
[root@rs01 ~]# hostname
rs01
[root@rs01 ~]# getenforce
Disabled
[root@rs02 ~]# hostname
rs02
[root@rs02 ~]# getenforce
Disabled
[root@lvs01 yum.repos.d]# cat /etc/hosts
192.168.20.10 lvs01
192.168.20.20 lvs02
192.168.20.100 rs01
192.168.20.200 rs02
[root@lvs01 yum.repos.d]# ntpdate 0.rhel.pool.ntp.org
[root@lvs02 yum.repos.d]# ntpdate 0.rhel.pool.ntp.org
[root@rs01 yum.repos.d]# ntpdate 0.rhel.pool.ntp.org
[root@rs02 yum.repos.d]# ntpdate 0.rhel.pool.ntp.org
2、 在各個機器關閉防火墻,配置yum源
[root@lvs01 yum.repos.d]# service iptables stop
[root@lvs01 yum.repos.d]# chkconfig iptables off
[root@lvs02 ~]# service iptables stop
[root@lvs02 ~]# chkconfig iptables off
[root@rs01 ~]# service iptables stop
[root@rs01 ~]# chkconfig iptables off
[root@rs02 ~]# service iptables stop
[root@rs02 ~]# chkconfig iptables off
[root@lvs01 yum.repos.d]# service iptables stop
[root@lvs01 yum.repos.d]# chkconfig iptables off
[root@lvs01 yum.repos.d]# cat rhel-source.repo
[base]
name=base
baseurl=file:///mnt
enabled=1
gpgcheck=0
[LB]
name=LB
baseurl=file:///mnt/LoadBalancer
enabled=1
gpgcheck=0
[HA]
name=HA
baseurl=file:///mnt/HighAvailability
enabled=1
gpgcheck=0
[RS]
name=RS
baseurl=file:///mnt/ResilientStorage
enabled=1
gpgcheck=0
[root@lvs01 yum.repos.d]# scp rhel-source.repo lvs02:/etc/yum.repos.d/rhel-source.repo
3、 在rs01.rs02上部署web服務
[root@rs01 ~]# yum install -y httpd
[root@rs01 ~]# echo "rs01">/var/www/html/index.html
[root@rs01 ~]# service httpd restart
[root@rs01 ~]# chkconfig httpd on
[root@rs02 ~]# yum install -y httpd
[root@rs02 ~]# echo "rs02">/var/www/html/index.html
[root@rs02 ~]# service httpd restart
[root@rs02 ~]# chkconfig httpd on
4、 在lvs01,lvs02安裝LB,開啟路由轉發功能,在lvs01上配置lvs集群登錄用戶和密碼
[root@lvs01 yum.repos.d]# yum groupinstall "Load Balancer"
[root@lvs02 yum.repos.d]# yum groupinstall "Load Balancer"
[root@lvs01 yum.repos.d]# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@lvs01 yum.repos.d]# sysctl –p
[root@lvs02 yum.repos.d]# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@lvs02 yum.repos.d]# sysctl –p
[root@lvs01 yum.repos.d]# piranha-passwd
New Password:
Verify:
Adding password for user piranha
[root@lvs01 yum.repos.d]# /etc/init.d/piranha-gui start
[root@lvs01 yum.repos.d]# chkconfig piranha-gui on
5、 通過瀏覽器來配置lvs集群
5.1 在瀏覽器輸入http://192.168.10.10:3636,點擊login,輸入用戶名和密碼
5.2 配置lvs01,選擇nat 模式,最後點擊accept
5.3 配置lvs02的ip,先點擊ENABLE,配置ip 後,最後點擊accept確定
5.4 配置對外的服務,點擊add->edit->accept
5.5 配置真實服務器(rs01和rs02)步驟add->edit->accept->active
5.6 up對外服務的vip
5.7 將在lvs01 上的配置文件復制到lvs02 上,
[root@lvs01 ~]# scp /etc/sysconfig/ha/lvs.cf lvs02:/etc/sysconfig/ha/lvs.cf
root@lvs02‘s password:
lvs.cf 100% 865 0.8KB/s 00:00
[root@lvs01 ~]# cat /etc/sysconfig/ha/lvs.cf
serial_no = 17
primary = 192.168.10.10
primary_private = 192.168.20.10
service = lvs
backup_active = 1
backup = 192.168.10.20
backup_private = 192.168.20.20
heartbeat = 1
heartbeat_port = 539
keepalive = 6
deadtime = 18
network = nat
nat_router = 192.168.20.254 eth1:0
nat_nmask = 255.255.255.0
debug_level = NONE
monitor_links = 0
syncdaemon = 0
virtual http {
active = 1
address = 192.168.10.254 eth0:1
vip_nmask = 255.255.255.0
port = 80
send = "GET / HTTP/1.0\r\n\r\n"
expect = "HTTP"
use_regex = 0
load_monitor = none
scheduler = rr
protocol = tcp
timeout = 6
reentry = 15
quiesce_server = 0
server rs01 {
address = 192.168.20.100
active = 1
weight = 1
}
server rs02 {
address = 192.168.20.200
active = 1
weight = 2
}
}
5.8 在lvs01,lvs02 上啟動負載均衡的監控進程
[root@lvs01 ~]# /etc/init.d/pulse restart
Shutting down pulse: [失敗]
Starting pulse: [確定]
[root@lvs01 ~]# chkconfig pulse on
[root@lvs02 ~]# /etc/init.d/pulse restart
Shutting down pulse: [失敗]
Starting pulse: [確定]
[root@lvs02 ~]# chkconfig pulse on
5.9 查看lvs的正常運行狀態
6、 測試
6.1 訪問vip,web的內容是後臺兩臺真實服務器網頁內容,輪替提供服務
6.2 lvs01失效的情況下服務依然可用(我直接把lvs01關機了)
[root@lvs02 ~]# elinks -dump http://192.168.10.254
rs01
lvs-nat 模式-piranha