linux下heartbeat3.04编译安装步骤
Heartbeat原理及部署

Heartbeat原理及部署 ⼀,Heartbeat简介 ⼆,安装Heartbeat 环境查看 服务器规划IP⽤途主机名192.168.1.101主服务器hdp3192.168.1.102备服务器hdp4 初始配置 禁⽤防⽕墙systemctl disable firewalld 关闭senlinux 设置主机名并设置hosts⽂件 两台主机名不⼀样,hosts⽂件⼀样 # cat /etc/hosts192.168.1.101 hdp3192.168.1.102 hdp4 安装依赖包yum -y install glib2-devel libtool-ltdl-devl net-snmp-devel bzip2-devel ncurses-devel openssl-devel libtool libxml2 libxml2-devel gettext bison flex zlib-devel mailx which libxslt docbook-dtds docbook-style-xsl PyXML shadow-utils opensp autoconf 下载安装包Heartbeat 3.0.6:/heartbeat-STABLE_3_0/archive/958e11be8686.tar.bz2Cluster Glue 1.0.12:/glue/archive/0a7add1d9996.tar.bz2Resource Agents 3.9.6:https:///ClusterLabs/resource-agents/archive/v3.9.6.tar.gz 添加 haclient 组和 hacluster 账户,这个⽤户主要⽤来配置respawn的。
groupadd haclientuseradd -g haclient -M -s /sbin/nologin hacluster 安装Cluster Glue 1.0.12tar -xf 0a7add1d9996.tar.bz2cd Reusable-Cluster-Components-glue--0a7add1d9996/./autogen.sh./configure --prefix=/usr/local/heartbeat LIBS='/lib64/libuuid.so.1'make && make install 安装Resource Agentstar -xf v3.9.6.tar.gzcd resource-agents-3.9.6/./autogen.sh./configure --prefix=/usr/local/heartbeatmake && make install 安装heartbeat-3-0-6tar -xf 958e11be8686.tar.bz2cd Heartbeat-3-0-958e11be8686/#设置,否则安装会报错export CFLAGS="$CFLAGS -I/usr/local/heartbeat/include -L/usr/local/heartbeat/lib"#删除配置⽂件的最后⼀⾏sed -i '/^#define HA_HBCONF_DIR /d' /usr/local/heartbeat/include/heartbeat/glue_config.h./bootstrap./configure --prefix=/usr/local/heartbeat LIBS='/lib64/libuuid.so.1'make && make install 拷贝配置⽂件cd /usr/local/heartbeat/share/doc/heartbeatcp authkeys ha.cf haresources /usr/local/ heartbeat/etc/ha.d/ 设置配置⽂件权限及软连接cd /usr/local/heartbeat/etc/ha.dchmod 600 authkeysln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/ 编辑配置⽂件 192.168.1.101上的ha.cf⽂件内容如下# cat /usr/local/heartbeat/etc/ha.d/ha.cf# 保存调试信息⽂件debugfile /var/log/ha-debug# ⽇志⽂件logfile /var/log/ha-log# 表⽰使⽤系统⽇志logfacility local0# ⼼跳的时间间隔,单位秒keepalive 1# 超出该时间间隔未收到对⽅节点的⼼跳,则判定对⽅死亡deadtime 30# 超出该时间间隔未收到对⽅节点的⼼跳,则发出警告记录到⽇志中warntime 10# 在某系统上,系统启动或重启之后需要经过⼀段时间⽹络才能正常⼯作,该选项⽤于解决这种情况产⽣的时间间隔,取值⾄少为deadtime的2倍initdead 120# 设置⼴播通信使⽤的端⼝,694为默认使⽤的端⼝号udpport 694# 传播⼼跳的⼴播播⽹卡信息bcast eth0# 设置对⽅机器⼼跳检测的IP# 第⼆列为⽹卡名第三列为⼼跳IP,⽣产中⼼跳需要与数据⽹络分开ucast eth0 192.168.1.102# 在该选项设为on的情况下,⼀旦主节点恢复运⾏,则⾃动获取资源并取代从节点auto_failback off# 配置主从的节点信息node hdp3node hdp4# 如果ping不通该地址,就认为当前断⽹,需要转移vipping 192.168.1.9# 指定与heartbeat⼀同启动和关闭的进程,该进程被⾃动监视,遇到故障则重新启动。
Heartbeat安装与配置

Heartbeat安装与配置分类:Linux之Ubuntu2014-05-08 17:18 1060人阅读评论(0) 收藏举报Heartbeat主备MYSQL1、环境描述服务器A(主) 192.85.1.175服务器B(从) 192.85.1.176Mysql版本:5.1.61系统版本:System OS:centos 5.82.安装heartbeat1)安装heartbeat1.yum -y install heartbeat2)配置说明heartbeat的安装目录为/etc/ha.d目录下,安装完成后,需要三个配置文件,为ha.cf,haresources,authkeys。
此时目录下没有这三个文件,需要创建,我们可以在/usr/share/doc/heartbeat目录里找到ha.cf、haresources、authkeys三个文件,只需将其拷贝到/etc/ha.d目录下,即可*.gz文件,使用gunzip 命令解压3.175服务器配置信息:(1)etc/hosts 文件内容:[html]view plaincopy1.192.85.1.175 primary # Added by NetworkManager(2)ha.cf 文件内容:(主配置文件)[html]view plaincopy1.#2.# There are lots of options in this file. All you have to have is a set3.# of nodes listed {"node ...} one of {serial, bcast, mcast, or ucast},4.# and a value for "auto_failback".5.#6.# ATTENTION: As the configuration file is read line by line,7.# THE ORDER OF DIRECTIVE MATTERS!8.#9.# In particular, make sure that the udpport, serial baud rate10.# etc. are set before the heartbeat media are defined!11.# debug and log file directives go into effect when they12.# are encountered.13.#14.# All will be fine if you keep them ordered as in this example.15.#16.#17.# Note on logging:18.# If all of debugfile, logfile and logfacility are not defined,19.# logging is the same as use_logd yes. In other case, they are20.# respectively effective. if detering the logging to syslog,21.# logfacility must be "none".22.#23.# File to write debug messages to24.debugfile /var/log/ha-debug #调试日志文件25.#26.#27.# File to write other messages to28.#29.logfile /var/log/ha-log #系统运行日志文件30.#31.#32.# Facility to use for syslog()/logger33.#34.logfacility local0 # 日志记录等级35.#36.#37.# A note on specifying "how long" times below...38.#39.# The default time unit is seconds40.# 10 means ten seconds41.#42.# You can also specify them in milliseconds43.# 1500ms means 1.5 seconds44.#45.#46.# keepalive: how long between heartbeats?47.#48.keepalive 2 #心跳频率,2表示2秒;200ms则表示200毫秒49.#50.# deadtime: how long-to-declare-host-dead?51.#52.# If you set this too low you will get the problematic53.# split-brain (or cluster partition) problem.54.# See the FAQ for how to use warntime to tune deadtime.55.#56.deadtime 30 #节点死亡时间,就是过了10秒后还没有收到心跳就认为主节点死亡57.#58.# warntime: how long before issuing "late heartbeat" warning?59.# See the FAQ for how to use warntime to tune deadtime.60.#61.warntime 10 #告警时间62.#63.#64.# Very first dead time (initdead)65.#66.# On some machines/OSes, etc. the network takes a while to come up67.# and start working right after you've been rebooted. As a result68.# we have a separate dead time for when things first come up.69.# It should be at least twice the normal dead time.70.#71.initdead 120 #初始化时间72.#73.#74.# What UDP port to use for bcast/ucast communication?75.#76.udpport 694 #心跳信息传递的udp端口77.78.#79.# What interfaces to broadcast heartbeats over?80.#81.bcast eth0 # Linux #采用udp广播播来通知心跳,建议在备用节点不只一台时使用82.#bcast eth1 eth2 # Linux83.#bcast le0 # Solaris84.#bcast le1 le2 # Solaris85.#86.# Set up a multicast heartbeat medium87.# mcast [dev] [mcast group] [port] [ttl] [loop]88.#89.# [dev] device to send/rcv heartbeats on90.# [mcast group] multicast group to join (class D multicast address91.# 224.0.0.0 - 239.255.255.255)92.# [port] udp port to sendto/rcvfrom (set this value to the93.# same value as "udpport" above)94.# [ttl] the ttl value for outbound heartbeats. this effects95.# how far the multicast packet will propagate. (0-255)96.# Must be greater than zero.97.# [loop] toggles loopback for outbound multicast heartbeats.98.# if enabled, an outbound packet will be looped back and99.# received by the interface it was sent on. (0 or 1)100.# Set this value to zero.101.#102.#103.#bcast eth0 225.0.0.1 694 1 0104.#105.# Set up a unicast / udp heartbeat medium106.# ucast [dev] [peer-ip-addr]107.#108.# [dev] device to send/rcv heartbeats on109.# [peer-ip-addr] IP address of peer to send packets to110.#111.ucast eth0 192.85.1.175112.113.auto_failback on #如果主节点重新恢复过来,主节点将主动将资源抢占过来,如果为off,则只当备用节点当掉后,主节点才取回资源114.115.watchdog /dev/watchdog #看门狗。
linux arm 内核编译流程

linux arm内核编译流程一、编译环境准备在开始编译Linux ARM内核之前,我们需准备以下环境:1.1硬件环境:一台支持ARM架构的计算机;1.2操作系统:安装Ubuntu等Linux发行版,并确保系统已经更新至最新版本;1.3开发工具链:安装ARM交叉编译工具链,可以通过apt-get 命令进行安装;1.4内核源码:下载最新的Linux ARM内核源码,并解压至本地。
二、配置内核选项2.1进入内核源码目录:使用cd命令进入解压后的内核源码目录;2.2配置内核选项:使用make menuconfig命令来配置内核选项,可以根据需要选择不同的功能和驱动;2.3保存配置:保存配置后,将生成.config文件,保存了当前配置选项。
三、开始编译3.1清理编译环境:使用make clean命令清理之前的编译环境,确保开始编译之前处于一个干净的状态;3.2编译内核:使用make命令开始编译内核,该过程可能持续一段时间,耐心等待;3.3生成内核镜像:编译完成后,将生成zImage或uImage等内核镜像文件,可以作为启动的内核使用。
四、安装内核4.1备份原有内核:在安装新内核之前,建议备份原有系统的内核,以防出现问题时可以回滚;4.2安装内核:将编译生成的内核镜像文件拷贝至目标设备,例如通过TFTP传输或使用SD卡等方式;4.3更新引导配置:根据不同的引导方式,更新引导配置文件以使用新内核。
五、验证内核5.1重启设备:在安装完新内核后,重启设备以加载新内核;5.2查看内核版本:使用uname-a命令查看当前内核版本,确认是否为编译安装的新内核;5.3测试功能和驱动:针对所需的功能和驱动,进行相应的测试,确保内核编译和安装没有问题。
六、常见问题解决在编译内核的过程中,可能会遇到一些常见的问题,例如编译错误、功能不正常等,可以通过以下方式解决:6.1查看编译日志:在编译过程中,可以查看编译日志以了解错误的原因;6.2网上搜索:使用搜索引擎搜索相关问题,可能会有其他开发者遇到类似问题并给出解决方案;6.3参考官方文档:阅读官方文档以获取更多关于编译和安装内核的详细信息。
linux系统如何安装软件 (详细文字教程)

linux系统如何安装软件 (详细文字教程)在Linux中安装软件时,我们经常要考虑到这样几个个问题:(1).怎样安装软件;(2).软件安装在什么地方;(3).如何卸载删除不要的软件......下面,我们就一起来认识一下这些方面的问题。
一.认识Linux应用软件安装包通常Linux应用软件的安装包有三种:1) tar包,如software-1.2.3-1.tar.gz。
它是使用UNIX系统的打包工具tar打包的。
2) rpm包,如software-1.2.3-1.i386.rpm。
它是Redhat Linux提供的一种包封装格式。
(现在用的全称叫RPM Package Manager,以前叫Redhat Package Manager)3) dpkg包,如software-1.2.3-1.deb。
它是Debain Linux提供的一种包封装格式。
而且,大多数Linux应用软件包的命名也有一定的规律,它遵循:名称-版本-修正版-类型例如:1) software-1.2.3-1.tar.gz 意味着:软件名称:software版本号:1.2.3修正版本:1类型:tar.gz,说明是一个tar包。
2) sfotware-1.2.3-1.i386.rpm软件名称:software版本号:1.2.3修正版本:1可用平台:i386,适用于Intel 80x86平台。
类型:rpm,说明是一个rpm包。
注:由于rpm格式的通常是已编译的程序,所以需指明平台。
在后面会详细说明。
而software-1.2.3-1.deb就不用再说了吧!大家自己练习一下。
二、了解包里的内容:一个Linux应用程序的软件包中可以包含两种不同的内容:1) 一种就是可执行文件,也就是解开包后就可以直接运行的。
在Windows中所有的软件包都是这种类型。
安装完这个程序后,你就可以使用,但你看不到源程序。
而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。
LINUX内核模块编译步骤

LINUX内核模块编译步骤编译Linux内核模块主要包括以下步骤:1.获取源代码2.配置内核进入源代码目录并运行make menuconfig命令来配置内核。
该命令会打开一个文本菜单,其中包含许多内核选项。
在这里,你可以配置内核以适应特定的硬件要求和预期的功能。
你可以选择启用或禁用各种功能、设备驱动程序和文件系统等。
配置完成后,保存并退出。
3. 编译内核(make)运行make命令开始编译内核。
这将根据你在上一步中进行的配置生成相应的Makefile,然后开始编译内核。
编译的过程可能需要一些时间,请耐心等待。
4.安装模块编译完成后,运行make modules_install命令将编译好的模块安装到系统中。
这些模块被安装在/lib/modules/<kernel-version>/目录下。
5.安装内核运行make install命令来安装编译好的内核。
该命令会将内核映像文件(通常位于/arch/<architecture>/boot/目录下)复制到/boot目录,并更新系统引导加载程序(如GRUB)的配置文件。
6.更新GRUB配置文件运行update-grub命令来更新GRUB引导加载程序的配置文件。
这将确保新安装的内核在下次启动时可用。
7.重启系统安装完成后,通过重启系统来加载新的内核和模块。
在系统启动时,GRUB将显示一个菜单,你可以选择要启动的内核版本。
8.加载和卸载内核模块现在,你可以使用insmod命令来加载内核模块。
例如,运行insmod hello.ko命令来加载名为hello.ko的模块。
加载的模块位于/lib/modules/<kernel-version>/目录下。
如果你想卸载一个已加载的内核模块,可以使用rmmod命令。
例如,运行rmmod hello命令来卸载已加载的hello模块。
9.编写和编译模块代码要编写一个内核模块,你需要创建一个C文件,包含必要的模块代码。
Linux系统编译安装常见错误处理方法

5.Configure: error: libjpeg.(a|so) not found
# yum install libjpeg libjpeg-devel
6.Configure: error: libpng.(also) not found.
# yum install libpng libpng-devel
13.Configure: error: Cannot find ldap.h
# yum install openldap-devel
本篇文章来源于 Linux公社网站() 原文链接:/Linux/2011-04/34622.htm
再php:~/:./configure …… --with-gd=/usr/local/gd2 ……
1) Configure: error: xml2-config not found. Please check your libxml2 installation.
Solutions :
Solutions :
Quote: # yum install unixODBC-devel
12) Configure: error: Cannot find pspell
Solutions :
Quote: # yum install pspell-devel
13) configure: error: mcrypt.h not found. Please reinstall libmcrypt.
7) Configure: error: freetype.h not found.
Solutions :
Quote: #yum install freetype-devel
Linux操作系统的编译和安装

Linux操作系统的编译和安装在正文规定的字数限制下,为了准确满足标题描述的内容需求,并确保内容排版整洁美观、语句通顺、全文表达流畅且无影响阅读体验的问题,本文将按照以下格式进行写作:一、简介Linux操作系统是一种开源的、自由的Unix-like操作系统,它广泛应用于各种领域,包括服务器、嵌入式设备等。
本文将重点介绍Linux 操作系统的编译和安装过程。
二、编译准备1. 下载源代码在编译Linux操作系统之前,首先需要从官方网站下载Linux内核的源代码包。
2. 安装必要的依赖软件在编译过程中,需要安装一些必要的软件和工具,如编译器、构建工具等。
三、编译步骤1. 解压源代码包使用解压命令将下载的源代码包解压到指定目录。
2. 配置编译选项进入源代码目录,并运行配置命令,根据需要选择不同的编译选项。
3. 执行编译命令运行编译命令开始编译操作系统内核,这个过程可能需要一段时间。
四、安装步骤1. 安装编译生成的内核镜像文件将编译生成的内核镜像文件复制到合适的位置,并修改相关配置文件以引导新编译的内核。
2. 安装相关系统文件运行安装命令,将其他必要的系统文件复制到适当的位置。
五、系统配置1. 修改引导加载程序根据系统的引导加载程序,如GRUB、LILO等,修改引导配置文件以支持新安装的内核。
2. 配置网络和驱动程序根据具体需求,配置网络设置和硬件驱动程序。
六、测试与验证1. 重新启动系统重新启动计算机,并选择新编译的内核进行引导。
2. 验证系统版本和功能运行相应的命令,验证新安装的Linux操作系统版本和功能是否正确。
七、常见问题解决1. 编译错误分析编译过程中出现的错误信息,根据错误提示进行逐步修复。
2. 硬件兼容性问题部分硬件设备可能需要额外的驱动程序或补丁文件才能正常运行,根据具体情况进行相应的处理。
八、总结通过本文的介绍,读者可以了解到Linux操作系统的编译和安装过程,同时了解到在实际操作中会遇到的一些常见问题及解决方法。
Linux平台Apache高可用双机集群Tomcat负载均衡集群配置手册

Linux平台Apache双机高可用集群+ Tomcat负载均衡集群配置手册在这个配置手册中,使用的操作系统和软件清单如下:操作系统:RedHat Enterprise Linux AS4 U4 64bit(安装时最好选择完全安装)软件:jdk-1_5_0_15-linux-amd64.binTomcat5.5.26httpd-2.0.63.tar.gzjakarta-tomcat-connectors-jk2-src-current.tar.gzipvsadm-1.24.tar.gzlibnet.tar.gzheartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm因为是linux操作系统,所以在安装软件时请使用对应自己操作系统内核的软件,这是整个集群成功的第一步。
本配置手册中的软件都是对应RedHat Enterprise Linux AS4 U4 64bit 这个版本的软件。
jdk-1_5_0_15-linux-amd64.binJAVA环境包使用的是64位1.5版Tomcat版本为公司指定的5.5版本Apache为2.0.63版jakarta-tomcat-connectors-jk2-src-current.tar.gz是连接Apache和Tomcat的连接插件,具体可以去Tomcat网站上查找下载ipvsadm-1.24.tar.gzlibnet.tar.gz这两个是用于2台Apache服务器虚拟一个IP地址使用heartbeat-2.1.3-3.el4.centos.x86_64.rpmheartbeat-pils-2.1.3-3.el4.centos.x86_64.rpmheartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm这3个软件是用于2台Apache服务器之间的心跳检测结构图Apache1以以以以以Tomcat1Tomcat2Apache22台Tomcat服务器使用Tomcat软件可以自己做集群,2台Apache服务器需要其他的软件实现虚拟服务器功能,工作站访问虚拟IP地址访问2台Apache服务器,再通过Apache服务器访问Tomcat服务器第3 页总13 页1.安装JAVA环境包1)输入命令:./ jdk-1_5_0_15-linux-amd64.bin执行完毕后,会在当前目录下生成一个JDK-1.5.0_15的文件夹2)在 /usr/local/下新建一个名字为JAVA文件夹,将个JDK-1.5.0_15的文件夹拷入到该文件夹下3)设置环境变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Heartbeat3.0.4安装配置
1.heartbeat 3.0版不同与以前的版本,是由三个不同的项目组成,(下载地址/wiki/Downloads)Heartbeat,glue, agents,安装顺序为glue,agents , Heartbeat
2.安装软件包之前请确认你的系统中已经安装如下软件包(系统光盘中有):
libexslt
libexslt-devel
libgcrypt-devel
libxslt libxslt-devel
autoconf
automake
pkgconfig
libgpg-error-devel
libtool
sgml-common
opensp
openjade
xml-common
docbook-dtds
docbook-style
如果在编译安装过程中出错,很有可能是因为缺少了相关的软件包
3.下面开始安装
3.1 安装glue
grouadd haclient
useradd -g haclient -M -s /sbin/nologin hacluster
tar -xvf Reusable-Cluster-Components-glue--glue-1.0.7.bz2
cd Reusable-Cluster-Components-glue--glue-1.0.7
./autogen.sh
./configure
make
make install
注意:编译的时候保证系统能够连接外网
3.2 安装agents
tar -xvf Cluster-Resource-Agents-agents-1.0.3.bz2
cd Cluster-Resource-Agents-agents-1.0.3
./autogen.sh
./configure
make
make install
3.3 安装Heartbeat
tar -xvf Heartbeat-3-0-STABLE-3.0.4.bz2
cd Heartbeat-3-0-STABLE-3.0.4
./ConfigureMe configure
gmake
make install
如果安装过程不出错,现在一个基本的Heartbeat就安装完成了,但Heartbeat只提供主从备份功能,并不能对各节点的服务进点监控,因此需要配置ldirectord来对各节点服务进行监控
4. 安装ldirectord相关组件(需要安装ipvsadm软件包)
默认安装完上面的三个软件包之后,ldirectord已经安装到系统中,默认路径在/usr/etc/ ,由于ldirectord是由perl语言编写的,所以必须安装相关的软件包, 在此网站下载相关软件包
Socket6
libwww-perl
URI
MailTools
HTML-Parser
安装方法
perl Makefile.PL
make
make instal
5. 配置heartbeat
cp -a /usr/etc/ha.d /etc/
rm -fr /usr/etc/ha.d
ln -s /etc/ha.d /usr/etc
chkconfig add heartbeat
cp /usr/share/doc/haresources /etc/ha.d/
cp /usr/share/doc/authkeys /etc/ha.d
cp /usr/share/doc/ha.cf /etc/ha.d
chmod 600 /etc/ha.d/authkeys
5.1 修改配置文件
cd /etc/ha.d
5.1.1 vim authkeys
auth 2
#1 crc
2 sha1 HI!
#3 md5 Hello!
5.1.2 vim ha.cf
logfile /var/log/ha-log
logfacility local0
#心跳间隔
keepalive 2
#死亡阀值
deadtime 30
#警告时间
warntime 10
#首次启动heartbeat,等待多久才启动主服务资源
initdead 120
#连接端口
udpport 694
#心跳线接口
bcast eth1 # Linux
#备份机的心跳线接口与接口IP
ucast eth1 10.0.0.100
auto_failback on
node
node
ping 192.168.20.42
5.1.3 vim haresources
主节点hostname vip resource1 [::arg1 ::arg2] resource2 [::arg1 ::arg2]
5.1.4 配置ldirectord监控节点服务
复制安装文件ldirectord目录上的ldirectord.cf 到/etc/ha.d/conf下
mkdir /etc/ha.d/conf
cp ldirectord.cf /etc/ha.d/conf
vim ldirectord.cf (文件名任意),根据实际环境修改相关参数
#等待健康检查完成的时间
checktimeout=3
#检查间隙休息的时间
checkinterval=1
#fallback=127.0.0.1:80
#周期性检查配置文件的变化,并且在文件改变后自动应用它们
autoreload=yes
logfile="/var/log/ldirectord.log"
logfile="local0"
#emailalert="admin@x.y.z"
#emailalertfreq=3600
#emailalertstatus=all
#当节点在节点的checktimeout周期内响应失败时,节点的权重被设置为0(当此值为yes时)
quiescent=yes
#gate->DR ipip->Tun masq->NAT
# VIP
virtual=192.168.20.20:80
#RIP
real=192.168.20.3:80 gate
real=192.168.20.4:80 gate
#回环地址
fallback=127.0.0.1:80 gate
#服务
service=http
#调度方式
scheduler=rr
#persistent=600
#netmask=255.255.255.255
protocol=tcp
#监视VIP服务器的方法
checktype=negotiate
checkport=80
#请求的url文件
request="index.html"
#返回值
receive="OK"
#virtualhost=www.x.y.z
5.1.5 检验配置
ldirectord -d /etc/ha.d/conf/ldirectord.cf start
5.1.6 添加ldirectord到heartbeat 配置
vim /etc/ha.d/hareources
主节点hostname VIP ldirectord::ldirectord.cf
(备注:当某一节点服务出错后ldirectord会在ipvsadm表中自动清除相应的节点信息或者将相应节点权重设为0)
6.IPVS表有状态故障转移
当主DR崩溃并且ldirectord需要在备分DR上重构IPVS表时,原来活动的客户端连接不会自动转移到备份DR上,从而造成所有的客户端连接丢失,解决方法:在主DR上运行
ipvsadm --start-daemon master
同时在备份DR上运行
ipvsadm --start-daemon backup
终止同步状态守护进行
ipvsadm --stop-daemon
备注:主和备份DR都必须要支持多播才行,可以能过ifconfig 查看对应的网络接口中是否有MULTICAST。