lvs+keepalived+vsftp配置FTP服务器负载均衡
2017-04-20 12:49
330 查看
LVS+Keepalive 实现服务器的负载均衡高可用
一、安装
两台机器的安装是一样的,这里只记录一遍。
1. 下载LVS+Keepalive 所需安装包 http://www.keepalived.org/software/keepalived-1.2.7.tar.gz http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz http://down1.chinaunix.net/distfiles/linux-2.6.18.tar.bz2 http://down1.chinaunix.net/distfiles/linux-2.6.32.tar.bz2
2. 安装所需环境
[root@ZH-LVS01 ~]# yum -y install glibc* gcc* cc*
[root@ZH-LVS01 ~]# yum -y install openssl-devel
[root@ZH-LVS01 ~]# yum -y install kernel-devel
3. 安装keepalive
[root@ZH-LVS01 ~]# tar -xzf keepalived-1.2.7.tar.gz
[root@ZH-LVS01 ~]# cd keepalived-1.2.7
[root@ZH-LVS01 keepalived-1.2.7]# ./configure
编译时出现以下问题原因是未安装popt的开发包
/usr/local/bin/check_ftpget.pl
配置文件参考博客:http://www.cnblogs.com/MacoLee/p/5858995.html
[root@ZH-LVS01 ~]# vim /etc/init.d/lvsrs
#!/bin/bash
##
Script to start LVS DR real server.
# Decription: LVS DR real server.
. /etc/rc.d/init.d/functions
VIP=10.143.117.200
host=`/bin/hostname`
case "$1" in
start)
# Start LVS-DR real server on this machine.
/sbin/ifconfig lo down
/sbin/ifconfig lo up
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
;;
stop)
# Stop LVS-DR real server loopback device(s).
/sbin/ifconfig lo:0 down
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
;;
status)
# Status of LVS-DR real server.
islothere=`/sbin/ifconfig lo:0 | grep $VIP`
isrothere=`netstat -nr | grep "lo:0" | grep $VIP`
if [ ! "$islothere" -o ! "isrothere" ];then
# Either the route or the lo:0 device
# not found.
echo "LVS-DR real server Stoped."
else
echo "LVS-DR real server Running."
fi
;;*)
# Invalid entry .
echo "$0 : Usage: $0 {start|status|stop}"
exit 1
;;
esac
[root@ZH-LVS01 ~]# chmod +x /etc/init.d/lvsrs
4. 安装http 服务测试负载。
[root@ZH-LVS01 ~]# yum -y install http*
[root@ZH-LVS01 ~]# echo "ZH-LVS01" > /var/www/html/index.html
[root@ZH-LVS01 ~]# service httpd start
启动 httpd: [确定]
[root@ZH-LVS01 ~]# netstat -ntlp
5.启动服务
[root@ZH-LVS01 ~]# service keepalived restart
停止 keepalived: [确定]
启动 keepalived: [确定]
[root@ZH-LVS01 ~]# /usr/local/bin/check_interface &
[1] 10719
[root@ZH-LVS01 ~]# /etc/init.d/lvsrs start
[root@ZH-LVS01 ~]# /etc/init.d/lvsrs status
LVS-DR real server Running.
[root@ZH-LVS01 ~]#
ZH-LVS02的配置基本和ZH-LVS01上的配置是一样的,可以直接scp过去。有以下几点不同。
1. /etc/keepalived/keepalived.conf 中将MASTER改为BACKUP
2. 在LVS02中/etc/keepalived/keepalived.conf 中不需要写nopreempt
3.其他的/etc/init.d/lvsrs 可以直接拷贝过去就给执行权限即可。
日志写在 /var/log/messages 中ZH-LVS01配置
[root@ZH-LVS02 ~]# scp root@192.168.211.166:/etc/keepalived/keepalived.conf /etc/keepalived/
[root@ZH-LVS02 ~]# scp root@192.168.211.166:/etc/init.d/lvsrs /etc/init.d/
安装http服务并添加测试网页内容
[root@ZH-LVS02 ~]# echo "ZH-LVS02" > /var/www/html/index.html
[root@ZH-LVS02 ~]# service httpd start
启动 httpd: [确定]
[root@ZH-LVS02 ~]# netstat -ntlp启动服务
[root@ZH-LVS02 keepalived]# service keepalived restart
停止 keepalived: [确定]
启动 keepalived: [确定]
[root@ZH-LVS02 keepalived]# /etc/init.d/lvsrs start
[root@ZH-LVS02 keepalived]# /etc/init.d/lvsrs status
LVS-DR real server Running.
[root@ZH-LVS02 keepalived]#
使用ipvsadm 查看负载节点
一、安装
两台机器的安装是一样的,这里只记录一遍。
1. 下载LVS+Keepalive 所需安装包 http://www.keepalived.org/software/keepalived-1.2.7.tar.gz http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz http://down1.chinaunix.net/distfiles/linux-2.6.18.tar.bz2 http://down1.chinaunix.net/distfiles/linux-2.6.32.tar.bz2
2. 安装所需环境
[root@ZH-LVS01 ~]# yum -y install glibc* gcc* cc*
[root@ZH-LVS01 ~]# yum -y install openssl-devel
[root@ZH-LVS01 ~]# yum -y install kernel-devel
3. 安装keepalive
[root@ZH-LVS01 ~]# tar -xzf keepalived-1.2.7.tar.gz
[root@ZH-LVS01 ~]# cd keepalived-1.2.7
[root@ZH-LVS01 keepalived-1.2.7]# ./configure
编译时出现以下问题原因是未安装popt的开发包
1 #!/usr/bin/perl -w 2 ## Written 12/5/00 Jeremy Hanmer 3 # $Id: check_ftpget.pl,v 1.1 2000/12/07 14:40:44 karldebisschop Exp $ 4 use strict; 5 use Net::FTP; 6 use Getopt::Std; 7 use vars qw($opt_H $opt_u $opt_p $opt_f); 8 getopts("H:u:p:f:"); 9 my $host = $opt_H || 10 die "usage: check_ftp.pl -h host [<-u user> <-p pass> <-f file>]\n"; 11 my $username = $opt_u || 'anonymous'; 12 my $pass = $opt_p || "$ENV{'LOGNAME'}\@$ENV{'HOSTNAME'}" ; 13 my $file = $opt_f; 14 my $status = 0; 15 my $problem; 16 my $output = "ftp ok"; 17 my $ftp = Net::FTP->new("$host") || 18 &crit("connect"); 19 $ftp->login("$username", "$pass") || 20 &crit("login"); 21 $ftp->get($file) || 22 &crit("get") if $file; 23 sub crit() 24 { 25 $problem = $_[0]; 26 $status = 2; 27 if ( $problem eq 'connect' ) { 28 $output = "can't connect"; 29 } elsif ( $problem eq 'login' ) { 30 $output = "can't log in"; 31 } elsif ( $problem eq 'get' ) { 32 $output = "cant get $file"; 33 } 34 } 35 print "$output\n"; 36 exit $status;
/usr/local/bin/check_ftpget.pl
配置文件参考博客:http://www.cnblogs.com/MacoLee/p/5858995.html
[root@ZH-LVS01 ~]# vim /etc/init.d/lvsrs
#!/bin/bash
##
Script to start LVS DR real server.
# Decription: LVS DR real server.
. /etc/rc.d/init.d/functions
VIP=10.143.117.200
host=`/bin/hostname`
case "$1" in
start)
# Start LVS-DR real server on this machine.
/sbin/ifconfig lo down
/sbin/ifconfig lo up
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
;;
stop)
# Stop LVS-DR real server loopback device(s).
/sbin/ifconfig lo:0 down
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
;;
status)
# Status of LVS-DR real server.
islothere=`/sbin/ifconfig lo:0 | grep $VIP`
isrothere=`netstat -nr | grep "lo:0" | grep $VIP`
if [ ! "$islothere" -o ! "isrothere" ];then
# Either the route or the lo:0 device
# not found.
echo "LVS-DR real server Stoped."
else
echo "LVS-DR real server Running."
fi
;;*)
# Invalid entry .
echo "$0 : Usage: $0 {start|status|stop}"
exit 1
;;
esac
[root@ZH-LVS01 ~]# chmod +x /etc/init.d/lvsrs
4. 安装http 服务测试负载。
[root@ZH-LVS01 ~]# yum -y install http*
[root@ZH-LVS01 ~]# echo "ZH-LVS01" > /var/www/html/index.html
[root@ZH-LVS01 ~]# service httpd start
启动 httpd: [确定]
[root@ZH-LVS01 ~]# netstat -ntlp
5.启动服务
[root@ZH-LVS01 ~]# service keepalived restart
停止 keepalived: [确定]
启动 keepalived: [确定]
[root@ZH-LVS01 ~]# /usr/local/bin/check_interface &
[1] 10719
[root@ZH-LVS01 ~]# /etc/init.d/lvsrs start
[root@ZH-LVS01 ~]# /etc/init.d/lvsrs status
LVS-DR real server Running.
[root@ZH-LVS01 ~]#
ZH-LVS02的配置基本和ZH-LVS01上的配置是一样的,可以直接scp过去。有以下几点不同。
1. /etc/keepalived/keepalived.conf 中将MASTER改为BACKUP
2. 在LVS02中/etc/keepalived/keepalived.conf 中不需要写nopreempt
3.其他的/etc/init.d/lvsrs 可以直接拷贝过去就给执行权限即可。
日志写在 /var/log/messages 中ZH-LVS01配置
[root@ZH-LVS02 ~]# scp root@192.168.211.166:/etc/keepalived/keepalived.conf /etc/keepalived/
[root@ZH-LVS02 ~]# scp root@192.168.211.166:/etc/init.d/lvsrs /etc/init.d/
安装http服务并添加测试网页内容
[root@ZH-LVS02 ~]# echo "ZH-LVS02" > /var/www/html/index.html
[root@ZH-LVS02 ~]# service httpd start
启动 httpd: [确定]
[root@ZH-LVS02 ~]# netstat -ntlp启动服务
[root@ZH-LVS02 keepalived]# service keepalived restart
停止 keepalived: [确定]
启动 keepalived: [确定]
[root@ZH-LVS02 keepalived]# /etc/init.d/lvsrs start
[root@ZH-LVS02 keepalived]# /etc/init.d/lvsrs status
LVS-DR real server Running.
[root@ZH-LVS02 keepalived]#
使用ipvsadm 查看负载节点
![](https://images2015.cnblogs.com/blog/839910/201704/839910-20170420124813009-496826368.png)
相关文章推荐
- LVS+keepalived负载均衡兼高可用集群配置
- LVS+Keepalived构建高可用负载均衡配置方法(配置篇)
- 配置LVS + Keepalived高可用负载均衡集群之图文教程
- LVS+Keepalived 高可用性负载均衡自动化配置
- [配置应用]LVS+keepalived负载均衡CentOS5.6环境下布署(32位)V2
- LVS DR模式 + keepalived 负载均衡配置详解(基础篇)
- 配置LVS + Keepalived高可用负载均衡集群之图文教程
- 配置LVS+keepalived 高可用负载均衡集群
- Lvs+Keepalived高可用负载均衡配置
- lvs+keepalived负载均衡高可用集群的配置
- LVS DR + Keepalived 负载均衡配置详解(测试篇)
- apache+inotify-tools+keepalived+lvs-NAT模式配置高可用负载均衡集群 推荐
- Cent OS上安装配置LVS(DR方式)+keepalived,实现负载均衡和双机热备
- LVS+Keepalived+IIS 配置过程高可用负载均衡web服务器
- Lvs+keepalived 高可用性负载均衡自动化配置
- lvs+keepalived+vsftp实现主备负载均衡ftp集群.txt
- LVS+keepalived+Nginx(前后端故障处理)全自动化负载均衡配置
- apache+inotify-tools+keepalived+lvs-DR模式配置高可用负载均衡集群
- 配置LVS + Keepalived高可用负载均衡集群之图文教程
- Linux下Keepalived+LVS-DR模式配置高可用负载均衡集群