博客
关于我
LVS+heartbeat 高可用LINUX服务器
阅读量:806 次
发布时间:2023-02-06

本文共 3021 字,大约阅读时间需要 10 分钟。

LVS高可用配置 - Heartbeat安装与配置指南

1. 环境准备

在开始配置之前,请确保以下环境条件已满足:

  • 操作系统:CentOS 7.6及以上版本
  • 网络:所有节点间应有互联,且IP配置正确无误
  • 用户权限:建议使用root用户执行所有操作
  • 存储空间:至少需要100MB的存储空间用于安装依赖软件

2. 安装依赖软件

安装Heartbeat和相关工具包:

yum -y install libnet* heartbeat* ipvsadm

3. 配置Heartbeat

3.1 复制默认配置文件

将Heartbeat的默认配置文件复制到/etc/ha.d/目录:

cp /usr/share/doc/heartbeat-2.1.3/ha.cf /etc/ha.d/cp /usr/share/doc/heartbeat-2.1.3/authkeys /etc/ha.d/cp /usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf /etc/ha.d/

3.2 修改配置文件

编辑/etc/ha.d/ha.cf文件:

vim /etc/ha.d/ha.cf

添加或修改以下参数:

logfacility local0keepalive 2deadtime 30warntime 10udpport 694ucast eth0 192.168.50.8auto_failback onnode lvs.abc.comnode lvs1.abc.comping 192.168.50.8ping_group group1 192.168.50.8 192.168.50.9ping_group group1 192.168.60.8 192.168.60.9respawn hacluster /usr/lib/heartbeat/ipfailapiauth ipfail gid=haclient uid=hacluster

3.3 验证authkeys文件

编辑/etc/ha.d/authkeys文件:

vim /etc/ha.d/authkeys

确保文件中的验证信息与主从节点一致,并设置文件权限为600:

chmod 600 /etc/ha.d/authkeys

3.4 修改ldirectord.cf

编辑/etc/ha.d/ldirectord.cf文件:

vim /etc/ha.d/ldirectord.cf

添加或修改以下内容:

checktimeout 3checkinterval 1autoreload yeslogfile "/var/log/ldirectord.log"fallback 127.0.0.1:80service httpscheduler wrrprotocol tcpchecktype negotiatecheckport 80request test.htmlreceive "Test Page"

4. 编写资源脚本

创建/etc/ha.d/lvs文件:

vim /etc/ha.d/lvs

添加以下内容:

#!/bin/bash# description: start LVS of DirectorServer# Written by: NetSeek http://www.linuxtone.orgGW=192.168.50.80WEB_VIP=192.168.50.80WEB_RIP1=192.168.50.5WEB_RIP2=192.168.50.6WEB_RIP3=1.1.1.18WEB_RIP4=1.1.1.19case "$1" instart)echo "start LVS of DirectorServer"/sbin/ifconfig eth0:0 $WEB_VIP broadcast $WEB_VIP netmask 255.255.255.255 up/sbin/route add -host $WEB_VIP dev eth0:0/sbin/ipvsadm -A -t $WEB_VIP:80 -s wrr -p 3/sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP1:80 -g -w 1/sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP2:80 -g -w 2/sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP3:80 -g -w 1/sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP4:80 -g -w 1touch /var/lock/subsys/ipvsadm > /dev/null 2>&1 &/sbin/arping -I eth0 -c 5 -s $WEB_VIP $GW > /dev/null 2>&1 &echo "ipvsadm started";;stop)echo "stop LVS of DirectorServer"/sbin/ipvsadm -C/sbin/ipvsadm -Z/sbin/ifconfig eth0:0 down/sbin/route del $WEB_VIP > /dev/null 2>&1 &rm -rf /var/lock/subsys/ipvsadm > /dev/null 2>&1 &/sbin/arping -I eth0 -c 5 -s $WEB_VIP $GW > /dev/null 2>&1 &echo "ipvsadm stopped";;status)if [ ! -e /var/lock/subsys/ipvsadm ]; thenecho "ipvsadm is stopped"exit 1fiipvsadm -lnecho "..........ipvsadm is OK."fi;;*)echo "Usage: $0 {start|stop|status}"exit 1esacexit 0

5. 设置服务启动

设置Heartbeat和ipvsadm的自启动:

chkconfig heartbeat onchkconfig ipvsadm on

6. 复制配置文件到从节点

从节点的配置文件可以通过scp从主节点复制:

scp root@192.168.50.9:/etc/ha.d/* /etc/ha.d/

7. 启动Heartbeat

在所有节点上执行以下命令:

systemctl start heartbeatsystemctl enable heartbeat

8. 测试与验证

8.1 查看Heartbeat状态

tail -F /var/log/ha-logtail -F /var/log/messages

8.2 查看LVS状态

ipvsadm -L -n -stats

8.3 访问测试页面

通过浏览器访问:

  • http://192.168.50.5/test.html
  • http://192.168.50.6/test.html

9. 故障恢复

在主节点或从节点发生故障时,Heartbeat会自动切换到其他节点提供服务。

转载地址:http://ptufk.baihongyu.com/

你可能感兴趣的文章
Nginx配置参数中文说明
查看>>
Nginx配置后台网关映射路径
查看>>
nginx配置域名和ip同时访问、开放多端口
查看>>
Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
查看>>
Nginx配置如何一键生成
查看>>
Nginx配置实例-负载均衡实例:平均访问多台服务器
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Nginx配置负载均衡到后台网关集群
查看>>
ngrok | 内网穿透,支持 HTTPS、国内访问、静态域名
查看>>
NHibernate学习[1]
查看>>
NHibernate异常:No persister for的解决办法
查看>>
NIFI1.21.0_Mysql到Mysql增量CDC同步中_日期类型_以及null数据同步处理补充---大数据之Nifi工作笔记0057
查看>>
NIFI1.21.0_NIFI和hadoop蹦了_200G集群磁盘又满了_Jps看不到进程了_Unable to write in /tmp. Aborting----大数据之Nifi工作笔记0052
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表多表增量同步_增删改数据分发及删除数据实时同步_通过分页解决变更记录过大问题_02----大数据之Nifi工作笔记0054
查看>>
NIFI1.21.0通过Postgresql11的CDC逻辑复制槽实现_指定表或全表增量同步_实现指定整库同步_或指定数据表同步配置_04---大数据之Nifi工作笔记0056
查看>>
NIFI1.23.2_最新版_性能优化通用_技巧积累_使用NIFI表达式过滤表_随时更新---大数据之Nifi工作笔记0063
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_根据binlog实现数据实时delete同步_实际操作04---大数据之Nifi工作笔记0043
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置binlog_使用处理器抓取binlog数据_实际操作01---大数据之Nifi工作笔记0040
查看>>
NIFI从MySql中增量同步数据_通过Mysql的binlog功能_实时同步mysql数据_配置数据路由_实现数据插入数据到目标数据库_实际操作03---大数据之Nifi工作笔记0042
查看>>
NIFI从MySql中离线读取数据再导入到MySql中_03_来吧用NIFI实现_数据分页获取功能---大数据之Nifi工作笔记0038
查看>>