首页 > 系统相关 >LVS VS-DR ipvsadm+heartbeat-ldirectord搭建linux集群

LVS VS-DR ipvsadm+heartbeat-ldirectord搭建linux集群

时间:2022-10-17 20:02:08浏览次数:40  
标签:ldirectord LVS ipvsadm 192.168 echo sys ipv4 net proc

测试环境

  • 一台调度机,两台真实机,使用ipvsadm+ldirectord搭建vs-tun的linux集群
  • 3台服务器都安装centos5.4
  • 调度机IP:eth0:192.168.1.210
  • 调度机VIP:eth0:0:192.168.1.219
  • 真实机1IP:eth0:192.168.1.223
  • 真实机1VIP:tunl0:192.168.1.219
  • 真实机2IP:eth0:192.168.1.224
  • 真实机2VIP:tunl0:192.168.1.219
  • ipvsadm与ldirectord都只需在调度机安装,真实机不用安装软件。

调度机操作

#安装ipvsadm
yum install ipvsadm
#安装heartbeat-ldirectord
yum install heartbeat-ldirectord
#配置VIP地址到eth0:0
ifconfig eth0:0 192.168.11.20 netmask 255.255.255.255 broadcast 192.168.11.20 up
#增加eth0:0路由
route add -host 192.168.11.20 dev eth0:0
#配置网络系统参数(eth0为绑定VIP的网卡设备)
echo "1" >/proc/sys/net/ipv4/ip_forward //DR模式需要开启转发
echo "1" >/proc/sys/net/ipv4/conf/all/send_redirects
echo "1" >/proc/sys/net/ipv4/conf/default/send_redirects
echo "1" >/proc/sys/net/ipv4/conf/eth0/send_redirects
#配置IPVS的服务类型、VIP地址以及对应的真实机信息
ipvsadm -C #清空规则

ipvsadm -A -t 192.168.1.219:8198 -s wlc
ipvsadm -a -t 192.168.1.219:8198 -r 192.168.1.223:8198 -g -w 1
ipvsadm -a -t 192.168.1.219:8198 -r 192.168.1.224:8198 -g -w 1

-A:为add-service的意思,此参数表示随后的设定将为群集新增一个网路服务
-t:表示此网络使用TCP通讯协议
192.168.11.20:80表示对外的VIP和端口
-s:设定此网路服务器将采用哪一种调度演算法进行负载均衡的调度,
wlc:为加权最少链接调度算法的所写
---------------------------
-a:为add-server的意思,表示随后将为群集添加一个真实服务器
-t:使用TCP
192.168.11.20:80表示对外的VIP和端口
-r:设定真实服务器IP
-m:设定网路服务采用的运作方式, -m:VS-NAT; -g:VS-DR; -i:VS-TUN
-w:权重
ipvsadm还有一个“--persistent”的参数,可以让真实服务器间保持固定连线,也就是虚拟服务器将某个使用者的第一次连线分配至真实服务器,未来同一个使用者的连线都会被分配到相同的真实服务器。


[root@lb1 ~]# ipvsadm //检查运行状况
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.1.219:8198 wlc
-> 192.168.1.223:8198 Route 1 0 0
-> 192.168.1.224:8198 Route 1 0 0
Route:lvs运作的方式
1:真实服务器的权重,越大权重越高,说明服务器性能越高
0:正在连线至该真实服务器的数目
0:已连线至该真实服务器的连线数目

[root@lb1 ~]# ipvsadm -lnc //检查连接情况

#复制ldirectord配置文件到/etc/ha.d/目录
cp /usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf /etc/ha.d/
#默认启动不了ldirectord,需要修改/etc/rc.d/init.d/ldirectord
注释掉该行: . /etc/ha.d/shellfuncs
#修改/etc/ha.d/ldirectord.cf 配置文件:
# Global Directives
checktimeout=3 //检查超时
checkinterval=1 //检查间隔
autoreload=yes //是否自动重载
logfile="/var/log/ldirectord.log"
logfile="local0"
quiescent=yes //为yes时,设置真实机器权值为0即不可达,设置为no时,则删除不可达的真实机器
# Sample for an http virtual service
virtual=192.168.1.219:8198
real=192.168.1.223:8198 gate 1 // gate(VSDR)、masq(VSNAT)或ipip(VSTUN)指出要使用的转发方法 1表示权重
real=192.168.1.224:8198 gate 1
service=http
scheduler=wlc
#persistent=600
protocol=tcp
checktype=connect //检测端口是否可达
#checktype=negotiate
checkport=8198
#request="index.html" //checktype=negotiate时候检查的页面文件
#receive="Test Page" //返回的内容

#启动ldirectord
service ldirectord start

真实机操作(两台)

echo 1 > /proc/sys/net/ipv4/ip_forward
ifconfig lo:0 192.168.200.200 netmask 255.255.255.255 broadcast 192.168.200.200 up
route add -host 192.168.200.200 dev lo:0



如果使用tun模式配置的那2条会出现socket应用的负载均衡VIP访问不成功(比如:riak数据库socket模式),DR模式应该使用如下命令即可:
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X //这4条清除所有规则.
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.219 --dport 8198(应用端口) -j REDIRECT
#关闭转发功能
echo "0" >/proc/sys/net/ipv4/ip_forward
#解决arp问题
echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
#解决源地址验证问题
echo 0 > /proc/sys/net/ipv4/conf/tunl0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter

#启动两台真实机的apache应用首页index.htm写入不同的内容,访问测试.

附:lvs.sh

#!/bin/sh
# VIP installation for LVS-DR

IPEND=25
VIP=10.100.63.$IPEND
NETWORK_INIT_SCRIPT="/etc/init.d/network"

service=LVS

case "$1" in

start)
echo -n "Starting $service: "
# Down the network
$NETWORK_INIT_SCRIPT stop
echo ""

# Alter ARP behaviour
echo "Modifying kernel ARP params..."
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

# Bring the interface back up
# (doing it this way prevents ARP broadcasts you don't want)
$NETWORK_INIT_SCRIPT start

#install_realserver_vip
/sbin/ifconfig lo:$IPEND $VIP broadcast $VIP netmask 255.255.255.255 up
echo "Added VIP locally:"
/sbin/ifconfig lo:$IPEND

# installing route for VIP $VIP on device lo:$IPEND
/sbin/route add -host $VIP dev lo:$IPEND
echo "Modified routing table:"
/bin/netstat -rn
;;

stop)
echo -n "Stopping $service: "
/sbin/ifconfig lo$IPEND down
;;
esac


LVS VS-DR ipvsadm+heartbeat-ldirectord搭建linux集群_服务器

标签:ldirectord,LVS,ipvsadm,192.168,echo,sys,ipv4,net,proc
From: https://blog.51cto.com/starsliao/5764168

相关文章

  • LVS 搭建集群的一些介绍(方案,优化)
    ​LVS集群介绍三种运作方式VS-NAT(VirtualServerviaNAT)VS-DR(VirtualServerviaDirectRouting)VS-TUN(VirtualServerviaIPTunneling)LVS运作方式的比较/VS-NATVS......
  • LVS负载均衡+高可用集群解决方案 ipvsadm+heartbeat+ldirectord
    ​前言LVS的介绍可以查看本公众号的文章:LVS搭建集群的一些介绍(方案,优化)首先按照本公众号中的前两篇日志:LVSVS-TUNipvsadm+heartbeat-ldirectord搭建linux集群 LVSV......
  • LVS+Keepalived+httpd安装及配置
    LVS+Keepalived+httpd安装及配置目录1环境...12安装LVS软件(分别在LVS-Master和LVS-Backup中)...11.1.查看是否有IPVS模块...11.2.安装IPVS管理工具...13安装keepal......
  • 空值、NULL的对比(tdsqlVSPG)
    NULL值的对比PG\mysql中空字符串与null是不同的;而oracle中,空字符串与null等同。NULL和''ORACLE认为''等同于NULL,'a'||null结果是'a'NULL和''不同,'a'||null结......
  • 基于Keepalived实现LVS双主高可用集群
    1、环境准备设备IP地址作用系统版本Keepalived-Lvs192.168.100.118Keepalived-Lvs负载冗余Rocky8.6Keepalived-Lvs192.168.100.123Keepalived-Lvs负载冗余Rocky8.6Nginx192.......
  • 基于Keepalived实现LVS双主高可用集群
     1、环境准备设备IP地址作用系统版本Keepalived-Lvs192.168.100.118Keepalived-Lvs负载冗余Rocky8.6Keepalived-Lvs192.168.100.123Keepalived-L......
  • lvs负载均衡
    目录基本介绍基本工作原理LVS的组成LVS相关术语lvs三种工作模式NAT原理和特点DR原理和特点Tun原理和特点LVS调度算法实践LVS搭建HTTP负载均衡集群实践LVS的NAT模式基本介......
  • LVS负载均衡
    [LVS负载均衡]LVS负载均衡目录Lvs负载均衡[lvs简介][lvs作用][lvs体系结构]lvs的三种工作模式[基于NAT的LVS模式负载均衡][基于TUN模式的负载均衡][基于DR模......
  • Lvs负载均衡
    Lvs负载均衡目录Lvs负载均衡lvs简介lvs作用lvs体系结构lvs的三种工作模式基于NAT的LVS模式负载均衡基于TUN模式的负载均衡基于DR模式的LVS负载均衡LVS管理工具LVS的10种调......
  • LVS负载均衡
    LVS负载均衡目录LVS负载均衡一、LVS是什么二、LVS的作用三、lvs的三种工作模式1.基于NAT的LVS模式负载均衡2.基于TUN模式的LVS负载均衡3.LVS(DR)负载模式四、LVS管理工具......