linux vrrp 配置命令,青蛙学Linux—Keepalived配置文件详解

上一篇中在安装时指定了Keepalived的配置文件目录,所以这里Keepalived的配置文件为/etc/keepalived/keepalived.conf,Keepalived所有的配置都在这个文件中。由于Keepalived配置文件中的配置项比较多,所以这里按照功能将Keepalived的配置文件分为以下三部分:

全局配置(Global Configuration)

VRRP配置

LVS配置

Keepalived的配置文件是以块(block)的形式组织的,每个块的内容都包含在{}中,以#和!开头的行均为注释。

注意:{}前面必须有一个空格;另外,Keepalived没有配置文件检测机制,就算是配置文件错误Keepalived也可以正常启动,但无法正常工作。

这里首先使用Keepalived的HA功能,所以之介绍Keepalived配置文件中的全局和VRRP部分的配置。

1、全局配置

简单的全局配置如下:

global_defs {

notification_email {

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc

smtp_server 192.168.200.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

notification_email:定义接收报警邮件的地址,可以设置多个,每行一个。注意,如果要开启邮件报警,需要本机开启sendmail服务

notification_email_from:定义邮件的发送地址

smtp_server:定义发送邮件的SMTP服务器地址

smtp_connect_timeout:定义连接SMTP服务器的超时时间

router_id:定义Keepalived服务器的表示,发送邮件时显示在邮件主题中

2、VRRP部分配置

VRRP部分配置是Keepalived所有配置的核心,主要用来实现Keepalived的高可用功能。VRRP部分主要用来配置节点角色(主或从)、实例绑定的网络接口、节点间的验证机制、虚拟IP等。以下为常用的一些配置项:

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 51

priority 100

advert_int 1

track_interface {

eth0

eth1

}

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.200.16

192.168.200.17

192.168.200.18

}

nopreempt

preemtp_delay 300

notify_master "xxx.sh "

notify_backup "xxx.sh"

notify_fault "xxx.sh"

notify_stop "xxx.sh"

}

VRRP部分以vrrp_instance做为标识,在这个实例中包含若干配置项:

vrrp_instance:一个VRRP实例的开始,后跟自定义的实例名称

state:定义此台Keepalived的角色,MASTER表示主服务器,BACKUP表示备用服务器

interface:定义Keepalived监测的网络接口

virtual_router_id:定义虚拟路由标识,一个数字。同一个HA集群中的Master和Backup的虚拟路由标识必须一致

priority:定义节点优先级,数字越大表示优先级越高。在一个HA集群中,Master的优先级最高,而优先级高的Backup更有可能被选举为下一个Master

advert_int:定义Master和Backup之间检测的时间间隔,单位秒

track_interface:定义额外监控的网络接口,其中任何一个接口故障Keepalived都会进入FAULT状态

authentication:定义节点间的通信验证类型和密码。auth_type用于定义验证类型,有PASS和AH两种;auth_pass用于定义密码,各个节点间的密码必须相同才可以正常通信

virtual_ipaddress:定义虚拟IP地址(VIP),可设置多个虚拟IP,每行一个。Keepalived会将虚拟IP使用系统命令ip address add添加到Master的操作系统中,所以可以通过ip addr命令查看添加的虚拟IP;添加IP的方式多种多样,可以直接使用IP地址,也可以使用如xxx.xxx.xxx.xxx dev eth0的方式将虚拟IP绑定到具体的网络接口,也可以使用掩码,如xxx.xxx.xxx.xxx/24的形式

nopreempt:定义节点的不抢占功能。不抢占功能是在集群进行了一次主备切换后,当原先的Master恢复正常之后,不会再次成为Master,而是等待当前运行的Master故障之后才会再次成为Master。这样可以避免主备来回切换带来的风险。注意,只有state为BACKUP的节点才可以设置不抢占模式,且只需要在优先级高的节点上设置

preemtp_delay:定义切换的延时时间,单位秒,在定义的时间内不会发生主备切换。用于重启网络或服务而不希望发生主备切换的场景

notify_master:定义当Keepalived进入Master状态时要执行的脚本,可以是报警脚本,也可以是服务管理脚本,同时脚本允许传入参数

notify_backup:定义当Keepalived进入Backup状态时执行的脚本

notify_fault:定义当Keepalived进入Fault状态时执行的脚本

notify_stop:定义当Keepalived停止后需要执行的脚本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值