Keepalived的全局配置
Keepalived的全局配置
默认配置文件如下:
- ! Configuration File for keepalived
- 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
- router_id LVS_DEVEL
- vrrp_skip_check_adv_addr
- vrrp_strict
- vrrp_garp_interval
- vrrp_gna_interval
- }
- vrrp_instance VI_1 {
- state MASTER
- interface eth0
- virtual_router_id
- priority
- advert_int
- authentication {
- auth_type PASS
- auth_pass
- }
- virtual_ipaddress {
- 192.168.200.16
- 192.168.200.17
- 192.168.200.18
- }
- }
- virtual_server 192.168.200.100 {
- delay_loop
- lb_algo rr
- lb_kind NAT
- persistence_timeout
- protocol TCP
- real_server 192.168.201.100 {
- weight
- SSL_GET {
- url {
- path /
- digest ff20ad2481f97b1754ef3e12ecd3a9cc
- }
- url {
- path /mrtg/
- digest 9b3a0c85a887a256d6939da88aabd8cd
- }
- connect_timeout
- nb_get_retry
- delay_before_retry
- }
- }
- }
- virtual_server 10.10.10.2 {
- delay_loop
- lb_algo rr
- lb_kind NAT
- persistence_timeout
- protocol TCP
- sorry_server 192.168.200.200
- real_server 192.168.200.2 {
- weight
- HTTP_GET {
- url {
- path /testurl/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl2/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl3/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- connect_timeout
- nb_get_retry
- delay_before_retry
- }
- }
- real_server 192.168.200.3 {
- weight
- HTTP_GET {
- url {
- path /testurl/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334c
- }
- url {
- path /testurl2/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334c
- }
- connect_timeout
- nb_get_retry
- delay_before_retry
- }
- }
- }
- virtual_server 10.10.10.3 {
- delay_loop
- lb_algo rr
- lb_kind NAT
- persistence_timeout
- protocol TCP
- real_server 192.168.200.4 {
- weight
- HTTP_GET {
- url {
- path /testurl/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl2/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl3/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- connect_timeout
- nb_get_retry
- delay_before_retry
- }
- }
- real_server 192.168.200.5 {
- weight
- HTTP_GET {
- url {
- path /testurl/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl2/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- url {
- path /testurl3/test.jsp
- digest 640205b7b0fc66c1ea91c463fac6334d
- }
- connect_timeout
- nb_get_retry
- delay_before_retry
- }
- }
- }
keepalived的配置文件以块的形式组织,每个块都包含内{}中,# !的都是注释。
Keepalived的所有配置均在/etc/keepalived/keepalived.conf这个配置文件中完成。根据实现的功能,主要可以分3类配置
全局配置:
全局配置对整个keepalived都生效,基本如下
- global_defs #全局配置标识
- global_defs {
- notification_email { #指定keepalived在发生事情的时候,发送邮件告知,可以有多个地址,每行一个。
- acassen@firewall.loc
- failover@firewall.loc
- sysadmin@firewall.loc
- }
- notification_email_from Alexandre.Cassen@firewall.loc #指定发件人
- smtp_server 127.0.0.1 #发送email的smtp地址
- smtp_connect_timeout #超时时间
- router_id LVS_DEVEL #运行keepalived的机器的一个标识,多个节点标识可以相同,也可以不同
- vrrp_skip_check_adv_addr
- vrrp_strict #严格执行VRRP协议规范,此模式不支持节点单播
- vrrp_garp_interval
- vrrp_gna_interval
- }
VRRPD配置
VRRPD配置是Keepalivved的配置的核心,主要来实现高可用,其中VRRPD配置又分为VRRP同步组配置和VRRP实例配置。
同步组主要是解决多个不同实例在多个不同网段的问题,当两个不同的实例分别位于不同的网段当中的时候,如果VRRPD只是配置了A网段的检测,当B网段出现故障的时候,VRRPD会认为仍然正常,不会主备切换,如果加入同步组中就会,任何一个出现问题,都会导致Keepalived进行主备切换。
配置样例如下
- vrrp_sync_group G1{
- group {
- VI_1
- VI_2
- VI_3
- }
- notify_backup "/usr/local/bin/vrrp.back arg1 arg2"
- notify_master "/usr/local/bin/vrrp.mast arg1 arg2"
- notify_fault "/usr/local/bin/vrrp.fault arg1 arg2"
- notify_stop "/usr/local/bin/vrrp.stop arg1 arg2"
- }
- vrrp_sync_group G2{
- group {
- VI_3
- VI_4
- }
- }
- G1同步组包含3个实例,G2同步组包含两个实例。这五个实例在vrrp_instance中定义
- 其中notify_backup,notify_master,notify_fault,notify_stop是keepalived的配置中的一个通知机制,也是它的四种状态。
- notify_master:指定当keepalived进入master状态的时候要执行的脚本,可以是一个状态报警脚本,也可以是一个服务管理脚本,脚本准许传入参数。
- notify_backup:指定当keepalived进入backup状态的时候要执行的脚本,可以是一个状态报警脚本,也可以是一个服务管理脚本,脚本准许传入参数。
- notify_fault:指定当keepalived进入fault状态的时候要执行的脚本,可以是一个状态报警脚本,也可以是一个服务管理脚本,脚本准许传入参数。
- notify_stop:指定当keepalived进入终止状态的时候要执行的脚本
Keepalived的全局配置的更多相关文章
- Keepalived详解(二):Keepalived安装与配置【转】
一.Keepalived安装与配置: 1.Keepalived的安装过程: Keepalived的安装非常简单,本实例以源码安装讲解: Keepalived的官方网址:http://www.keepa ...
- Keepalived部署与配置详解
Keepalive详解 工作原理 Keepalived本质就是为ipvs服务的,它也不需要共享存储.IPVS其实就是一些规则,Keepalived主要的任务就是去调用ipvsadm命令,来生成规则,并 ...
- Apache系列:Apache的全局配置
配置文件组成: 整个配置文件由3段组成: (1)全局配置:对主服务器或虚拟机都有效,且有些功能是服务器自身工作属性: (2)主服务器:主站属性: (3)虚拟主机:虚拟主机及属性定义 注:第二段和第三段 ...
- Linux下Keepalived安装与配置
一.简介 负载平衡是一种在真实服务器集群中分配IP流量的方法,可提供一个或多个高度可用的虚拟服务.在设计负载均衡拓扑时,重要的是要考虑负载均衡器本身的可用性以及它背后的真实服务器.用C编写的类似于la ...
- CentOS 6.5 下keepalived服务的配置
CentOS 6.5 下keepalived服务的配置 参考网站: http://zhangxugg-163-com.iteye.com/blog/1665419 http://www.2cto.co ...
- LVS+keepalived DR模式配置高可用负载均衡集群
实验环境 LVS-Master 10.0.100.201 VIP:10.0.100.203 LVS-Slave 10.0.100.204 WEB1-Tomcat 10.0.2.29 gat ...
- nginx全局配置和性能优化
nginx目录结构和命令 1.ls /apps/nginx/: html是测试页,sbin是主程序 2.ls /apps/nginx/sbin/: nginx 只有一个程序文件 3. ...
- 双主MySQL+keepalived高可用配置
部署双节点双主数据库服务器mysql 分别在二台服务器上安装mysql,要求同版本或主服务器比从服务器版本高. 主机mysql配置: Vi /etc/my.cnf [mysqld] Log-bin=m ...
- LVS+Keepalived负载均衡配置
简介 lvs一般是和keepalived一起组合使用的,虽然也可以单独使用lvs,但配置比较繁琐,且可用性也没有前者高. lvs和keepalived组合使用后,配置lvs的VIP和负载均衡就都在ke ...
随机推荐
- 第三篇:Entity Framework CodeFirst & Model 映射 续篇 EntityFramework Power Tools 工具使用
上一篇 第二篇:Entity Framework CodeFirst & Model 映射 主要介绍以Fluent API来实作EntityFramework CodeFirst,得到了大家一 ...
- Android 的进程和线程
进程和线程 如果某个应用程序组件是第一次被启动,且这时应用程序也没有其他组件在运行,则android系统会为应用程序创建一个包含单个线程的linux进程.默认情况下,同一个应用程序的所有组件都运行在同 ...
- Python subprocess.Popen communicate() 和wait()使用上的区别
之所以会纠结到这个问题上是因为发现在调用Popen的wait方法之后程序一直没有返回.google发现wait是有可能产生死锁的.为了把这个问题彻底弄清楚,搜索一些资料过来看看: 原文链接:http: ...
- Java事务处理
Java事务处理总结 一.什么是Java事务 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(co ...
- 关于MySql的1146错误修正
在Mysql数据库中建立连接Mysql后建立了一个数据库名叫Mysql后删除了系统自动建立的数个表,导入.sql文件运行后,想要运行相关的SQL语句却发现一些未知错误为 Table 'mysql.pr ...
- php的http_build_query使用
http_build_query生成 url-encoded 之后的请求字符串 1.使用键值对,关联数组: <?php $data = array('foo'=>'bar', 'baz'= ...
- 炫酷的jQuery对话框插gDialog
js有alert,prompt和confirm对话框,不过不是很美体验也不是很好,用jQuery也能实现, 体验效果:http://hovertree.com/texiao/jquery/34/ 代码 ...
- ARCGIS SDE空间化处理
在 Oracle 中,ST_Geometry 和 ST_Raster 的 SQL 函数使用通过 Oracle 的外部过程代理(即 extproc)访问的共享库.要将 SQL 和 ST_Geometry ...
- iOS --SQL的增加、删除、查找、修改
iOS对于数据库的操作:增加.删除.查找.修改 首先需要创建一个数据库:本程序的数据库是在火狐浏览器里的插件里写的微量型数据库 火狐找查找SQLite Manager的步骤: 第一步:在工具栏找到附加 ...
- 5、项目间的沟通协调 - PMO项目管理办公室
沟通是人类所具备的优良而有一定技巧的一种方式.但是,沟通也是PMO项目管理办公室中所有项目组必须建立起来的能力,也是PMO项目管理办公室日常所需要进行的一项工作内容. 一.项目间的沟通: PMO项目管 ...