keepalive实现web服务器active/passive
https://github.com/acassen/keepalived/blob/v1.2.13/doc/keepalived.conf.SYNOPSIS
http://ngyuki.hatenablog.com/entry/2016/04/04/193949
master
global_defs {
notification_email {
sysadmin@mydomain.com
}
notification_email_from sysadmin@mydomain.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id us-1-219
}
vrrp_script chk_http_port {
script "</dev/tcp/127.0.0.1/80"
interval 1
fall 2
rise 1
}
vrrp_sync_group sync_group_1 {
group {
private
public
}
}
vrrp_instance private {
state MASTER
interface em1
virtual_router_id 110
priority 200
advert_int 1
authentication {
auth_type PASS
auth_pass cce068f9
}
virtual_ipaddress {
10.150.1.20/24 dev em1 label em1:0
}
track_script {
chk_http_port weight 0
}
}
vrrp_instance public {
state MASTER
interface em2
virtual_router_id 119
priority 200
advert_int 1
authentication {
auth_type PASS
auth_pass cce068f9
}
virtual_ipaddress {
169.169.34.29/27 dev em2 label em2:0
}
track_script {
chk_http_port weight 0
}
}
backup
global_defs {
notification_email {
sysadmin@mydomain.com
}
notification_email_from sysadmin@mydomain.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id us-1-220
}
vrrp_script chk_http_port {
script "</dev/tcp/127.0.0.1/80"
interval 1
fall 2
rise 1
}
vrrp_sync_group sync_group_1 {
group {
private
public
}
}
vrrp_instance private {
state BACKUP
interface em1
virtual_router_id 110
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass cce068f9
}
virtual_ipaddress {
10.150.1.20/24 dev em1 label em1:0
}
track_script {
chk_http_port weight 0
}
}
vrrp_instance public {
state BACKUP
interface em2
virtual_router_id 119
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass cce068f9
}
virtual_ipaddress {
169.169.34.29/27 dev em2 label em2:0
}
track_script {
chk_http_port weight 0
}
}
备注
#1 ip存活检测与服务存活检测
#2 同步组功能,内外网卡有一块有问题,vip就切换
#3 主机的state设置为MASTER,备机的state设置为BACKUP,priority来决定谁为主,谁为从
#4 主备机同一个vrrp_instance的id要一致
测试
#219
ifdown em1 or ifdown em2,2个vip从219飘到220
ifdown em2 or ifdown em2,2个vip又飘回219
/etc/init.d/nginx stop,2个vip从219飘到220
/etc/init.d/nginx start,2个vip又飘回219
keepalive实现web服务器active/passive的更多相关文章
- 嵌入式设备web服务器比较
目录(?)[-] Boa Thttpd Mini_httpd Shttpd Lighttpd Goahead AppWeb Apache 开发语言和开发工具 结论 备注 现在在嵌入式设备中所使用的 ...
- Atitit.Gui控件and面板----web server区----- web服务器监控面板and控制台条目
Atitit.Gui控件and面板----web server区----- web服务器监控面板and控制台条目 1. Resin4.0.22 1 2. 查看http连接数::Summary>& ...
- 使用简单的 5 个步骤设置 Web 服务器集群
通过在多个处理器之间分担工作负载并采用多种软件恢复技术,能够提供高度可用的环境并提高环境的总体 RAS(可靠性.可用性和可服务性).可以得到的好处包括:更快地从意外中断中恢复运行,以及将意外中断对终端 ...
- 闲来无聊,研究一下Web服务器 的源程序
web服务器是如何工作的 1989年的夏天,蒂姆.博纳斯-李开发了世界上第一个web服务器和web客户机.这个浏览器程序是一个简单的电话号码查询软件.最初的web服务器程序就是一个利用浏览器和web服 ...
- 前端学HTTP之WEB服务器
前面的话 Web服务器每天会分发出数以亿计的Web页面,它是万维网的骨干.本文主要介绍WEB服务器的相关内容 总括 Web服务器会对HTTP请求进行处理并提供响应.术语“Web服务器”可以用来表示We ...
- apachetop 实时监测web服务器运行状况
apachetop 实时监测web服务器运行状况 我们经常会需要知道服务器的实时监测服务器的运行状况,比如哪些 URL 的访问量最大,服务器每秒的请求数,哪个搜索引擎正在抓取我们网站?面对这些问题 ...
- 关于Web服务器的认识
马上就要毕业了,也要开始找工作了,大学写了这么多代码了,却没有好好总结一下常用的概念很是遗憾额,就通过这篇博客记录一下我最常用的一些知识好了. 说到Web服务器,有很多文章都介绍的很好,之前看到一篇非 ...
- 【WEB】一个简单的WEB服务器
WEB 服务器如何工作的? HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从H ...
- JSP之WEB服务器:Apache与Tomcat的区别 ,几种常见的web/应用服务器
注意:此为2009年的blog,注意时效性(针对常见服务器) APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等 ...
随机推荐
- MVC 模型
dbcontent var ALLALBUMS=from album in db.albums orderby album.title ascending select album; storeman ...
- 25 个超棒的 HTML5 & JavaScript 游戏引擎开发库
就像在汽车中,引擎完成主要的工作,使汽车看起来不可思议.游戏引擎同理,游戏开发者完成细节的工作,使游戏看起来真实.吸引人眼球.游戏引擎负责其余的事情.早期,游戏开发者通常从草图做起,花费高昂,且不容易 ...
- [物理学与PDEs]第1章 电动力学
[物理学与PDEs]第1章第1节 引言 [物理学与PDEs]第1章第2节 预备知识 2.1 Coulomb 定律, 静电场的散度与旋度 [物理学与PDEs]第1章第2节 预备知识 2.2 Ampere ...
- RabbitMQ介绍4 - 编程(C#客户端示例)
C#终端的说明文档: http://www.rabbitmq.com/dotnet-api-guide.html 这里介绍使用RabbitMQ的几种典型场景. 1. 简单direct模式( http: ...
- div高度自适应
第一种: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- fatal error C1853: '*.pch' is not a precompiled header file created with this compile
在菜单下选择Build--->点击Rebuild All,如果不起作用,你可以先把Debug或者Release中的文件删除,然后再试.
- 20145305 《Java程序设计》第2周学习总结
教材学习内容总结 1.boolean类型可表示true与false 2.储存值超类型范围会出现溢值 3.变量在命名时不可以使用数字作为开头,不可以使用一些特殊字符,不可以与JAVA关键词同名,不可以与 ...
- 109、FragmentPagerAdapter与FragmentStatePagerAdapter区别
x 在一个 Android 应用中,我使用 FragmentPagerAdapter 来处理多 Fragment 页面的横向滑动.不过我碰到了一个问题,即当 Fragment 对应的数据集发生改变时, ...
- C++学习23 虚函数详解
虚函数对于多态具有决定性的作用,有虚函数才能构成多态.上节的例子中,你可能还未发现虚函数的用途,不妨来看下面的代码. #include <iostream> using namespace ...
- 如何将MVC Areas中的某一个页设为起始页
area的默认页: routes.MapRoute( name: "MyArea", url: "{controller}/{action}/{id}", de ...