keepalived配置文件详解

合集下载

keepalived配置日志

keepalived配置日志

keepalived配置⽇志1.编辑配置⽂件/etc/sysconfig/keepalived,将第14⾏的KEEPALIVED_OPTIONS="-D"修改为KEEPALIVED_OPTIONS="-D -d -S 0"sudo sed -i '14 s#KEEPALIVED_OPTIONS="-D"#KEEPALIVED_OPTIONS="-D -d -S 0"#g' /etc/sysconfig/keepalived# 说明:# --dump-conf -d 导出配置数据# --log-detail -D 详细⽇志信息# --log-facility -S 设置本地的syslog设备,编号0-7# -S 0表⽰指定为local0设备2.修改rsyslog的配置⽂件sudo vi /etc/rsyslog.conf,在结尾加⼊如下2⾏内容,将local0设备的所有⽇志都记录到/var/log/keepalived.log⽂件# keepalivedlocal0.* /var/log/keepalived.log在42⾏第⼀列尾加⼊";local0.none",表⽰来⾃local0设备的所有⽇志信息不再记录于/var/log/messages⾥*.info;mail.none;authpriv.none;cron.none;local0.none /var/log/messages3.重启rsyslog服务$ sudo service rsyslog restart关闭系统⽇志记录器: [确定]启动系统⽇志记录器: [确定]4.测试keepalived⽇志记录结果。

重启keepalived服务,查看⽇志信息。

$ sudo tail -f /var/log/keepalived.log。

keepalived的日志

keepalived的日志

keepalived的日志摘要:1.简介2.keepalived 的作用3.keepalived 的日志配置4.keepalived 日志的级别5.keepalived 日志的输出方式6.keepalived 日志的示例分析7.小结正文:keepalived 是一款开源的高可用解决方案,它通过监控虚拟IP 地址和实际IP 地址之间的连通性,实现对网络服务的故障检测和自动切换。

在keepalived 的使用过程中,日志是非常重要的一个部分,它可以帮助我们了解系统的运行状况,及时发现和解决问题。

keepalived 的日志主要用于记录模块、进程、状态变化等信息。

日志的配置可以通过修改keepalived.conf 文件中的log 配置项来实现。

以下是一个简单的log 配置示例:```log {source s_local {file("/var/log/keepalived.log");}source s_remote {udp("192.168.1.1" 1000);}destination d_console {tty("/dev/ttyS0");}destination d_file {file("/var/log/keepalived.log");}}```在这个示例中,我们配置了两个日志来源(本地文件和远程UDP),以及两个日志目的地(控制台和本地文件)。

通过这样的配置,我们可以实现日志的多种输出方式,满足不同场景的需求。

keepalived 日志共有5 个级别,分别是:debug、info、notice、warning、error。

这些级别分别表示不同的日志信息的重要程度,其中debug 级别表示最详细的信息,error 级别表示最紧急的问题。

我们可以根据需要调整日志级别,以控制日志输出的详细程度。

在实际使用过程中,我们可以通过分析keepalived 日志来诊断和解决问题。

keepalived基线要求

keepalived基线要求

keepalived基线要求标题:Keepalived基线要求引言:在网络系统中,为了保证高可用性和负载均衡,我们经常会使用Keepalived这样的软件来实现故障转移和服务冗余。

为了确保系统的稳定性和安全性,我们需要遵循一些基线要求。

本文将介绍Keepalived基线要求的相关内容。

一、Keepalived基本介绍Keepalived是一款基于VRRP(虚拟路由冗余协议)的开源软件,用于实现故障转移和负载均衡。

它可以将多个服务器组成一个高可用的集群,通过监控服务器的状态来实现故障转移和服务冗余。

二、Keepalived基线要求1. 服务器配置要求:- 每个服务器必须具备至少两个网络接口,分别用于内部通信和对外服务。

- 服务器应具备足够的计算和存储资源,以满足系统的负载需求。

- 服务器的操作系统必须支持Keepalived软件,并且已经安装了所需的依赖软件。

2. Keepalived配置要求:- 所有服务器的Keepalived配置文件必须保持一致,并且按照规范进行填写。

- 配置文件中的密码和敏感信息必须进行加密或者隐藏处理,确保系统的安全性。

- Keepalived的监控和故障转移策略必须能够满足实际需求,确保系统的高可用性。

3. 监控和故障转移要求:- Keepalived必须能够实时监控服务器的状态,包括CPU、内存、磁盘等关键指标。

- 当主服务器出现故障时,Keepalived必须能够自动将备用服务器切换为主服务器,确保服务的连续性。

- 故障转移过程中不能出现数据丢失或服务中断的情况,必须保证系统的稳定性和可靠性。

4. 日志和报警要求:- Keepalived必须能够生成详细的日志,记录系统的运行状态和故障转移过程。

- 日志文件必须按照规定的格式进行存储和管理,便于后续的故障分析和排查。

- Keepalived必须能够及时发送报警信息给管理员,以便及时处理系统故障和异常情况。

结论:通过遵循以上的Keepalived基线要求,我们可以确保系统的高可用性和负载均衡能力。

keepalived配置文件解析系列之(三)配置文件解析过程

keepalived配置文件解析系列之(三)配置文件解析过程

keepalived配置文件解析系列之(三)配置文件解析过程keepalived配置文件解析系列之(三)配置文件解析过程virHappy(zhuozch@)如(一)所言,keepalived在配置文件解析方面拥有非常灵活的方式,采用关键字分层(每层的关键字数量不限,且关键字的层次也不限制)的方法进行组织一个配置文件,且支持平行或者嵌套地include多个其它配置文件语句和正则表达式记法的配置文件名。

文(二)中介绍了k eepalived关键字的存储和相关的操作,下面将具体分析怎么样解析配置文件。

一、入口点及全局流程位于parser.c文件中的init_data(char *conf_file, vector (*init_keywords) (void))函数是解析配置文件的入口点,该函数第一个参数为需要解析的配置文件名(可以由正则表达式构成,如*.conf),第二个参数为函数指针,指向关键字组织结构(实际取值为check_init_k eywords或者vrrp_init_keywords)。

解析配置文件过程中用到的几个全局变量包括current_keywords(当前关键字列表)、k eywords(层次为0的关键字列表,整个关键字组织的最顶层)、current_stream(当前打开的文件的流,即文件指针,指向当前打开的文件,因为keepalived支持嵌套的文件,所以必须设置这样的变量)、current_conf_file(当前解析的文件的名字,同上,是为支持嵌套的配置文件而设立的)、kw_level(当前关键字列表的层次,处理下一层关键字列表之前递增,回退到上一层关键字列表时递减)。

全局流程如下: 在init_data()中,调用read_conf_file(conf_file),把要解析的配置文件的名字传递给read_conf_file()函数;read_conf_file()函数先利用glob库取得所有的co nf_file(尤其是带正则表达式符号的名字), 然后依次根据当前关键字列表current_keywor ds,调用process_stream(current_keywords)进行配置文件的解析。

keepalived的配置解析安装与爬坑

keepalived的配置解析安装与爬坑

keepalived的配置解析安装与爬坑⽬录:⼀. 前情提要⼆. 官⽅配置说明三. 案例解析四. 其他配置⽅式收集五. 爬坑附1: 安装keepalived------------------------⼀. 前情提要以下试验以及说明是经过试验确定了的,准确!!另外,如果想知道每个参数的真正含义,建议看官⽹解决的问题:1,当⼀个节点(Linux设备)挂了,2个VIP都浮动到⼀个节点上2,当这个节点(Linux设备)好了,由于业务有⼀定的延时,所以还不想浮动IP⽴马漂移回来3,如果⼀个节点的业务(设备上运⾏的业务进程)完蛋了,需要⾃⼰主动交出VIP4,等⾃⼰节点的业务(设备上运⾏的业务进程)⼜好了,那么不能⽴马夺权,⽽是有⼀个过渡再夺权⼆. 官⽅配置说明概述:keepalived的具体实现原理这⾥就不做阐述,但是从其配置⽂件的⾓度⼤致将其⼯作模块分成两部分: 全局部分,和VRRP实例部分。

全局部分,顾名思义就是整体相关的配置;VRRP实例部分:⾸先,keepalived通过创建⼀个个VRRP实例来实现浮动IP的管理,⼀个VRRP实例可以看做是⼀个连接实例(使⽤VRRP协议);⼀个实例对应⼀个VIP,⼀台设备可以配置多个VRRP实例即参与多个VIP的抢占;然后,具有相同VRRP实例配置的⼀对设备,会因为实例匹配⽽成功配对;最后,通过协商得到谁是master谁是slave,以及谁来占有VIP。

1. 全局配置部分1. 预定义⼀个脚本以及脚本管理⽅式,之后⽤于VRRP实例引⽤vrrp_script <SCRIPT_NAME> {# 脚本的路径,或者直接就是脚本本⾝script <STRING>|<QUOTED-STRING># 间隔多长时间执⾏⼀次脚本interval <INTEGER>#脚本执⾏如果没有正确返回,则这段时间后就算超时,然后算作是failed了timeout <INTEGER># adjust priority by this weight, (default: 0).For description of reverse, see track_script.# 'weight 0 reverse' will cause the vrrp instance to be down when the script is up, and vice versa.weight <INTEGER:-253..253> [reverse]# required number of successes for OK transitionrise <INTEGER># required number of successes for KO transitionfall <INTEGER># 以哪个⽤户⾝份去执⾏脚本的⼈是谁user USERNAME [GROUPNAME]# 假设初始时脚本是执⾏失败的init_fail}2. VRRP实例部分# Ignore VRRP interface faults (default unset)dont_track_primary #表⽰的含义是,⼀旦接⼝有问题,则忽略之,否则keepalived的代码中对链路有做检查,发现链路down则进⼊fault状态,于是将放弃所有浮动ip# optional, monitor these as well. go to FAULT state if any of these go down if unweighted.# When a weight is specified in track_interface, instead of setting the vrrp instance to the FAULT state in case of failure, its priority will be# increased by the weight when the interface is up (for positive weights), or decreased by the weight's absolute value when the interface is down# (for negative weights), unless reverse is specified, in which case the direction of adjustment of the priority is reversed.# The weight must be comprised between -253 and +253 inclusive.0is the default behaviour which means that a failure implies a# FAULT state. The common practice is to use positive weights to count a limited number of good services so that the server with the highest count# becomes master. Negative weights are better to count unexpected failures among a high number of interfaces, as it will not saturate even with high# number of interfaces. Use reverse to increase priority if an interfaces is downtrack_interface {eth0eth1eth2 weight <-253..253> [reverse]...}# 1 to 255 used to differentiate multiple instances of vrrpd running on the same NIC (and hence same socket).virtual_router_id 51 #⽤来区分多VRRP实例?, 是指为⼀台设备配置多个实例,还是⼀个局域⽹中的多个实例? 貌似是后者,待确认preempt_delay 300 #表⽰的含义是,我当前是backup⾝份,但是我发现对⽅的master不如我,即优先级⽐我低,那么我不会⽴马去抢占,⽽是等五分钟后再去抢占关于weight,rise,fall的综合⽤法A positive weight means that <rise> successes will add <weight> to the priority of all VRRP instances which monitor it.On the opposite, a negative weight will be subtracted from the initial priority in case of <fall> failures解析:rise和正数的weight结合使⽤,如果rise次脚本执⾏都是成功的(返回0),则增加weight数量的优先级fall和负数的weight结合使⽤,如果是fall次脚本执⾏都是失败的(返回1),则减少|weight|数量的优先级其余的组合⽅式不起任何作⽤,即不会影响优先级的增减三. 案例解析节点1:简介:我是backup⾝份,但因为我的优先级⾼,所以是实际的掌权者,当我发现我节点上的业务已经挂了那么我就降低我的级别,让真正的master去掌权直到我的级别⼜上来了,我也不会⽴马夺权,⽽是等待⼀段时间后再夺权vrrp_script chkBackup {##检查进程是否存在,如果存在检查联通性,如果联通了。

Keepalived原理及配置详解-选项参数详细

Keepalived原理及配置详解-选项参数详细

Keepalived原理及配置详解-选项参数详细接着上篇,既然做了mysql+keepalived就需要对这些有个了解,以至于有了知道可以从哪里着手及相关配置;本篇是在网易博客上看到的一篇,就记录并且copy了,请大家尊重原创作者,珍惜汗水劳动者;原url /blog/static/1007689 14201191762253640/keepalived的核心vrrp相关知识:/5675165/1179600什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,那说到keepalived时不得不说的一个协议就是VRRP协议,可以说这个协议就是keepalived实现的基础,那么首先我们来看看VRRP协议一,VRRP协议二,Keepalived原理Keepalived原理keepalived也是模块化设计,不同模块复杂不同的功能,下面是keepalived的组件core check vrrp libipfwc libipvs-2.4 libipvs-2.6core:是keepalived的核心,复杂主进程的启动和维护,全局配置文件的加载解析等check:负责healthchecker(健康检查),包括了各种健康检查方式,以及对应的配置的解析包括LVS的配置解析vrrp:VRRPD子进程,VRRPD子进程就是来实现VRRP协议的libipfwc:iptables(ipchains)库,配置LVS会用到libipvs*:配置LVS会用到注意,keepalived和LVS完全是两码事,只不过他们各负其责相互配合而已keepalived启动后会有三个进程父进程:内存管理,子进程管理等等子进程:VRRP子进程子进程:healthchecker子进程有图可知,两个子进程都被系统WatchDog看管,两个子进程各自复杂自己的事,healthchecker子进程复杂检查各自服务器的健康程度,例如HTTP,LVS等等,如果healthchecker子进程检查到MASTER上服务不可用了,就会通知本机上的兄弟VRRP子进程,让他删除通告,并且去掉虚拟IP,转换为BACKUP状态三,Keepalived配置文件详解keepalived配置详解keepalived有三类配置区域(姑且就叫区域吧),注意不是三种配置文件,是一个配置文件里面三种不同类别的配置区域全局配置(Global Configuration)VRRPD配置LVS配置一,全局配置全局配置又包括两个子配置:全局定义(global definition)静态路由配置(static ipaddress/routes)1,全局定义(global definition)配置范例全局配置解析global_defs全局配置标识,表面这个区域{}是全局配置表示keepalived在发生诸如切换操作时需要发送email通知,以及email发送给哪些邮件地址,邮件地址可以多个,每行一个****************************************表示发送通知邮件时邮件源地址是谁smtp_server 127.0.0.1表示发送email时使用的smtp服务器地址,这里可以用本地的sendmail来实现mtp_connect_timeout 30连接smtp连接超时时间router_id node1机器标识2,静态地址和路由配置范例这里实际上和系统里面命令配置IP地址和路由一样例如:192.168.1.1/24 brd + dev eth0 scope global 相当于: ip addr add 192.168.1.1/24 brd + dev eth0 scope global就是给eth0配置IP地址路由同理一般这个区域不需要配置这里实际上就是给服务器配置真实的IP地址和路由的,在复杂的环境下可能需要配置,一般不会用这个来配置,我们可以直接用vi /etc/sysconfig/network-script/ifcfg-eth1来配置,切记这里可不是VIP哦,不要搞混淆了,切记切记!二,VRRPD配置VRRPD配置包括三个类VRRP同步组(synchroization group)VRRP实例(VRRP Instance)VRRP脚本1,VRRP同步组(synchroization group)配置范例http和mysql是实例名和下面的实例名一致notify /path/to/notify.sh:smtp alter表示切换时给global defs中定义的邮件地址发送邮件通知2,VRRP实例(instance)配置范例state:state 指定instance(Initial)的初始状态,就是说在配置好后,这台服务器的初始状态就是这里指定的,但这里指定的不算,还是得要通过竞选通过优先级来确定,里如果这里设置为master,但如若他的优先级不及另外一台,那么这台在发送通告时,会发送自己的优先级,另外一台发现优先级不如自己的高,那么他会就回抢占为masterinterface:实例绑定的网卡,因为在配置虚拟IP的时候必须是在已有的网卡上添加的dont track primary:忽略VRRP的interface错误track interface:跟踪接口,设置额外的监控,里面任意一块网卡出现问题,都会进入故障(FAULT)状态,例如,用nginx做均衡器的时候,内网必须正常工作,如果内网出问题了,这个均衡器也就无法运作了,所以必须对内外网同时做健康检查mcast src ip:发送多播数据包时的源IP地址,这里注意了,这里实际上就是在那个地址上发送VRRP通告,这个非常重要,一定要选择稳定的网卡端口来发送,这里相当于heartbeat的心跳端口,如果没有设置那么就用默认的绑定的网卡的IP,也就是interface指定的IP地址garp master delay:在切换到master状态后,延迟进行免费的ARP(gratuitous ARP)请求virtual router id:这里设置VRID,这里非常重要,相同的VRID 为一个组,他将决定多播的MAC地址priority 100:设置本节点的优先级,优先级高的为masteradvert int:检查间隔,默认为1秒virtual ipaddress:这里设置的就是VIP,也就是虚拟IP地址,他随着state的变化而增加删除,当state为master的时候就添加,当state为backup的时候删除,这里主要是有优先级来决定的,和state设置的值没有多大关系,这里可以设置多个IP地址virtual routes:原理和virtual ipaddress一样,只不过这里是增加和删除路由lvs sync daemon interface:lvs syncd绑定的网卡authentication:这里设置认证auth type:认证方式,可以是PASS或AH两种认证方式auth pass:认证密码nopreempt:设置不抢占,这里只能设置在state为backup的节点上,而且这个节点的优先级必须别另外的高preempt delay:抢占延迟debug:debug级别notify master:和sync group这里设置的含义一样,可以单独设置,例如不同的实例通知不同的管理人员,http实例发给网站管理员,mysql的就发邮件给DBA3,VRRP脚本首先在vrrp_script区域定义脚本名字和脚本执行的间隔和脚本执行的优先级变更vrrp_script check_running {script"/usr/local/bin/check_running"interval 10 #脚本执行间隔weight 10 #脚本结果导致的优先级变更:10表示优先级+10;-10则表示优先级-10}然后在实例(vrrp_instance)里面引用,有点类似脚本里面的函数引用一样:先定义,后引用函数名track_script {check_running weight 20}注意:VRRP脚本(vrrp_script)和VRRP实例(vrrp_instance)属于同一个级别LVS配置如果你没有配置LVS+keepalived那么无需配置这段区域,里如果你用的是nginx来代替LVS,这无限配置这款,这里的LVS配置是专门为keepalived+LVS集成准备的。

三.keepalived介绍及工作原理

三.keepalived介绍及工作原理

三.keepalived介绍及⼯作原理⼀、keepalived的介绍Keepalived软件起初是专为LVS负载均衡软件设计的,⽤来管理并监控LVS集群系统中各个服务节点的状态,后来⼜加⼊了可以实现⾼可⽤的VRRP功能。

因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的⾼可⽤解决⽅案软件。

Keepalived软件主要是通过VRRP协议实现⾼可⽤功能的。

VRRP是Virtual Router Redundancy Protocol(虚拟路由器冗余协议)的缩写,VRRP出现的⽬的就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个⽹络可以不间断地运⾏。

所以,Keepalived⼀⽅⾯具有配置管理LVS的功能,同时还具有对LVS下⾯节点进⾏健康检查的功能,另⼀⽅⾯也可实现系统⽹络服务的⾼可⽤功能。

keepalived:vrrp协议:Virtual Router Redundancy Protocol术语:虚拟路由器:Virtual Router虚拟路由器标识:VRID(0-255),唯⼀标识虚拟路由器物理路由器:master:主设备backup:备⽤设备priority:优先级VIP:Virtual IPVMAC:Virutal MAC (00-00-5e-00-01-VRID)通告:⼼跳,优先级等;周期性⼯作⽅式:抢占式,⾮抢占式安全⼯作:认证:⽆认证简单字符认证:预共享密钥MD5⼯作模式:主/备:单虚拟路径器主/主:主/备(虚拟路径器1),备/主(虚拟路径器2)⼆、Keepalived服务的重要功能1、管理LVS负载均衡软件早期的LVS软件,需要通过命令⾏或脚本实现管理,并且没有针对LVS节点的健康检查功能。

为了解决LVS的这些使⽤不便的问题,Keepalived就诞⽣了,可以说,Keepalived软件起初是专为解决LVS的问题⽽诞⽣的。

Linux开源集群架构之keepalived应用详解

Linux开源集群架构之keepalived应用详解

第03章集群利器Keepalived本章主要了解开源高可用负载均衡集群利器Keepalived,掌握Keepalived的安装,运用Keepalived配置高可用集群,并能够实现Keepalived与负均衡集群LVS的完美组合。

一、Keepalived概述1、什么是Keepalived?keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。

Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器2、keepalived理论工作原理Layer3,4&5工作在IP/TCP协议栈的IP层,TCP层,及应用层,原理分别如下:Layer3:Keepalived使用Layer3的方式工作式时,Keepalived会定期向服务器群中的服务器发送一个ICMP的数据包(既我们平时用的Ping程序),如果发现某台服务的IP地址没有激活,Keepalived便报告这台服务器失效,并将它从服务器群中剔除,这种情况的典型例子是某台服务器被非法关机。

Layer3的方式是以服务器的IP地址是否有效作为服务器工作正常与否的标准。

Layer4:主要以TCP端口的状态来决定服务器工作正常与否。

如web server的服务端口一般是80,如果Keepalived检测到80端口没有启动,则Keepalived将把这台服务器从服务器群中删除。

Layer5:Layer5就是工作在具体的应用层了,比Layer3,Layer4要复杂一点,在网络上占用的带宽也要大一些。

Keepalived将根据用户的设定检查服务器程序的运行是否正常,如果与用户的设定不相符,则Keepalived将把服务器从服务器群中剔除。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

keepalived配置文件详解
keepalived配置文件详解
2010-12-27 13:40global_defs {
notification_email { #指定keepalived在发生切换时需要发送email到的对象,一行一个
sysadmin@fire.loc
}
notification_email_from Alexandre.Cassen@firewall.loc #指定发件人
smtp_server localhost #指定smtp服务器地址
smtp_connect_timeout 30 #指定smtp连接超时时间
router_id LVS_DEVEL #运行keepalived机器的一个标识
}
vrrp_sync_group VG_1{ #监控多个网段的实例
group {
inside_network #实例名
outside_network
}
notify_master /path/xx.sh #指定当切换到master时,执行的脚本
netify_backup /path/xx.sh #指定当切换到backup时,执行的脚本
notify_fault "path/xx.sh VG_1" #故障时执行的脚本
notify /path/xx.sh
smtp_alert #使用global_defs中提供的邮件地址和smtp服务器发送邮件通知
}
vrrp_instance inside_network {
state BACKUP #指定那个为master,那个为backup,如果设置了nopreempt这个值不起作用,主备考priority决定
interface eth0 #设置实例绑定的网卡
dont_track_primary #忽略vrrp的interface错误(默认不设置)
track_interface{ #设置额外的监控,里面那个网卡出现问题都会切换
eth0
eth1
}
mcast_src_ip #发送多播包的地址,如果不设置默认使用绑定网卡的primary ip
garp_master_delay #在切换到master状态后,延迟进
行gratuitous ARP请求
virtual_router_id 50 #VPID标记
priority 99 #优先级,高优先级竞选为master
advert_int 1 #检查间隔,默认1秒
nopreempt #设置为不抢占注:这个配置只能设置在backup主机上,而且这个主机优先级要比另外一台高preempt_delay #抢占延时,默认5分钟
debug #debug级别
authentication { #设置认证
auth_type PASS #认证方式
auth_pass 111111 #认证密码
}
virtual_ipaddress { #设置vip
192.168.202.200
}
}
virtual_server 192.168.202.200 23 {
delay_loop 6 #健康检查时间间隔
lb_algo rr #lvs调度算法rr|wrr|lc|wlc|lblc|sh|dh
lb_kind DR #负载均衡转发规则NAT|DR|RUN
persistence_timeout 5 #会话保持时间
protocol TCP #使用的协议
persistence_granularity &lt;NETMASK&gt; #lvs会话保持粒度
virtualhost &lt;string&gt; #检查的web服务器的虚拟主机(host:头)
sorry_server&lt;IPADDR&gt; &lt;port&gt; #备用机,所有realserver失效后启用
real_server 192.168.200.5 23 {
weight 1 #默认为1,0为失效
inhibit_on_failure #在服务器健康检查失效时,将其设为0,而不是直接从ipvs中删除
notify_up &lt;string&gt; | &lt;quoted-string&gt; #在检测到server up后执行脚本
notify_down &lt;string&gt; |
&lt;quoted-string&gt; #在检测到server down后执行脚本
TCP_CHECK {
connect_timeout 3 #连接超时时间
nb_get_retry 3 #重连次数
delay_before_retry 3 #重连间隔时间
connect_port 23 健康检查的端口的端口
bindto &lt;ip&gt;
}
HTTP_GET | SSL_GET{
url{ #检查url,可以指定多个
path /
digest &lt;string&gt; #检查后的摘要信息
status_code 200 #检查的返回状态码
}
connect_port &lt;port&gt;
bindto &lt;IPADD&gt;
connect_timeout 5
nb_get_retry 3
delay_before_retry 2
}SMTP_CHECK{
host{
connect_ip &lt;IP ADDRESS&gt;
connect_port &lt;port&gt; #默认检查25端口
bindto &lt;IP ADDRESS&gt;
}
connect_timeout 5
retry 3
delay_before_retry 2
helo_name &lt;string&gt; | &lt;quoted-string&gt; #smtp helo请求命令参数,可选
}
MISC_CHECK{
misc_path &lt;string&gt; | &lt;quoted-string&gt; #外部脚本路径
misc_timeout #脚本执行超时时间
misc_dynamic #如设置该项,则退出状态码会用来动态调整服务器的权重,返回0 正常,不修改;返回1,检查失败,权重改为0;返回2-255,正常,权重设置为:返回状态码-2
}
}。

相关文档
最新文档