nginx+keepalived构建高可用服务
1.整体环境规划

2.keepalived安装
#cd /usr/local/src
#wget http://www.keepalived.org/software/keepalived-1.2.22.tar.gz
#./configure --prefix=/usr/local/keepalived
#make & make install
3.master服务keepalived.conf配置
! Configuration File for keepalived
global_defs {
router_id edu-proxy-
}
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval
weight -
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id
mcast_src_ip 10.0.4.249
priority
nopreempt
advert_int
authentication {
auth_type PASS
auth_pass
}
track_script {
chk_nginx
}
virtual_ipaddress {
10.0.4.248
}
}
4.backerup服务keepalived.conf配置
! Configuration File for keepalived
global_defs {
router_id edu-proxy-
}
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval
weight -
}
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id
mcast_src_ip 10.0.4.250
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
track_script {
chk_nginx
}
virtual_ipaddress {
10.0.4.248
}
}
5.nginx_check.sh脚本编写
#!/bin/bash A=`ps -C nginx –no-header |wc -l` if [ $A -eq ];then /usr/local/openrestry/nginx/sbin/nginx //Nginx安装路径 sleep if [ `ps -C nginx --no-header |wc -l` -eq ];then killall keepalived fi fi
6.启动keepalived
/usr/local/keepalived/sbin/keepalived [root@localhost sbin]# ip addr : lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN link/loopback ::::: brd ::::: inet 127.0.0.1/ scope host lo inet6 ::/ scope host valid_lft forever preferred_lft forever : eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen link/ether :0c::c6:9b: brd ff:ff:ff:ff:ff:ff inet 10.0.4.249/ brd 10.0.4.255 scope global eth0 inet 10.0.4.248/ scope global eth0 inet6 fe80::20c:29ff:fec6:9b91/ scope link valid_lft forever preferred_lft forever
[root@localhost keepalived]# ip addr : lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN link/loopback ::::: brd ::::: inet 127.0.0.1/ scope host lo inet6 ::/ scope host valid_lft forever preferred_lft forever : eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen link/ether :0c:::6c: brd ff:ff:ff:ff:ff:ff inet 10.0.4.250/ brd 10.0.4.255 scope global eth0 inet 10.0.4.248/ scope global eth0 inet6 fe80::20c:29ff:fe75:6c82/ scope link valid_lft forever preferred_lft forever
nginx+keepalived构建高可用服务的更多相关文章
- 架构设计:负载均衡层设计方案(6)——Nginx + Keepalived构建高可用的负载层
1.概述 前两遍文章中,我们一直在说后文要介绍Nginx + Keepalived的搭建方式.这篇文章开始,我们就来兑现前文的承诺,后续的两篇文章我们将介绍Nginx + Keepalived和 LV ...
- 用HAProxy和KeepAlived构建高可用的反向代理
用HAProxy和KeepAlived构建高可用的反向代理 用HAProxy和KeepAlived构建高可用的反向代理 前言对于访问量较大的网站来说,随着流量的增加单台服务器已经无法处理所有的请求 ...
- Nginx系列二:(Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用)
一.Nginx Rewrite 规则 1. Nginx rewrite规则 Rewrite规则含义就是某个URL重写成特定的URL(类似于Redirect),从某种意义上说为了美观或者对搜索引擎友好, ...
- Nginx (三) 使用Keepalived搭建高可用服务
Nginx可以实现高并发反向代理,实现负载均衡,但是有个问题就是Nginx是单点的.如果Nginx故障,则整个服务将会处于不可用状态.所以我们就需要想办法让nginx高可用,即使一个Nginx宕机,还 ...
- Nginx keepalived实现高可用负载均衡详细配置步骤
Keepalived是一个免费开源的,用C编写的类似于layer3, 4 & 7交换机制软件,具备我们平时说的第3层.第4层和第7层交换机的功能.主要提供loadbalancing(负载均衡) ...
- 用HAProxy和KeepAlived构建高可用的反向代理系统
对于访问量较大的网站来说,随着流量的增加单台服务器已经无法处理所有的请求,这时候需要多台服务器对大量的请求进行分流处理,即负载均衡.而如果实现负载均衡,必须在网站的入口部署服务器(不只是一台)对这些请 ...
- 实战| Nginx+keepalived 实现高可用集群
一个执着于技术的公众号 前言 今天通过两个实战案例,带大家理解Nginx+keepalived 如何实现高可用集群,在学习新知识之前您可以选择性复习之前的知识点: 给小白的 Nginx 10分钟入门指 ...
- .net core下简单构建高可用服务集群
一说到集群服务相信对普通开发者来说肯定想到很复杂的事情,如zeekeeper ,反向代理服务网关等一系列的搭建和配置等等:总得来说需要有一定经验和规划的团队才能应用起来.在这文章里你能看到在.net ...
- Nginx+Keepalived实现高可用站点
Keepalived是一个基于VRRP协议来实现的服务高可用方案,可以利用其来避免IP单点故障,类似的工具还有heartbeat. corosync.pacemaker.但是它一般不会单独出现,而是与 ...
随机推荐
- 如何在Visual Studio中加载web load test的后缀为.ltrar的结果文件
1. From a Web performance and load test project, open a load test. 2. On the embedded toolbar, cho ...
- Maven Web项目配置Mybatis出现SqlSessionFactory错误的解决方案
一.错误现象 严重: Context initialization failed org.springframework.beans.factory.BeanCreationException: Er ...
- [ES6] 07. Default Value for function param
Normally, we can set default value for function param: //Here use "Hello" as default param ...
- 【ACM】找新朋友
//make up a table of prime factors #include <stdio.h> #include <stdlib.h> #define MAX 32 ...
- 基于Thrift的跨语言、高可用、高性能、轻量级的RPC框架
功能介绍 跨语言通信 方便的使Java.Python.C++三种程序可以相互通信 负载均衡和容灾处理 方便的实现任务的分布式处理 支持服务的水平扩展,自动发现新的服务节点 能够兼容各种异常情况,如节点 ...
- 算法笔记_096:蓝桥杯练习 算法提高 求最大值(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 给n个有序整数对ai bi,你需要选择一些整数对 使得所有你选定的数的ai+bi的和最大.并且要求你选定的数对的ai之和非负,bi之和非负 ...
- 把IIS日志导入到数据库
1.建表 CREATE TABLE [dbo].[inetlog0828]( [date] [date] NULL, ) NULL, ) NULL, ) NULL, ) NULL, ) NULL, [ ...
- Java 内存区域和GC机制(转载)
目录 Java垃圾回收概况 Java内存区域 Java对象的访问方式 Java内存分配机制 Java GC机制 垃圾收集器 Java垃圾回收概况 Java GC(Garbage Collection, ...
- arm-linux内核start_kernel之前启动分析(1)-接过bootloader的衣钵
前段时间移植uboot细致研究过uboot启动过程,近期耐不住寂寞.想对kernel下手. Uboot启动过程分析博文连接例如以下: http://blog.csdn.net/skyflying201 ...
- mongodb的基本语法(二)
一.聚集集合查询 1.查询所有记录 db.userInfo.find(); 相当于:select* from userInfo; 默认每页显示20条记录,当显示不下的情况下,可以用it迭代命令查询下一 ...