Keepalived实现Nginx与LVS高可用

在192.168.1.10和192.168.1.20分别安装:

#yum –y install keepalived

192.168.1.10的配置文件内容:

#vim keepalived.conf


! Configuration File for keepalived

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_script chk_nginx {

script "pidof nginx "

interval 1

weight -3

fall 2

rise 1

}

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.100

}

track_script {

chk_nginx

}

notify_master "/etc/keepalived/notify.sh master "

notify_backup "/etc/keepalived/notify.sh backup "

notify_fault "/etc/keepalived/notify.sh fault "

}

192.168.1.20的配置文件内容:

#vim keepalived.conf


! Configuration File for keepalived

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_script chk_nginx {

script "pidof nginx "

interval 1

weight -1

fall 2

rise 1

}

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 51

priority 99

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.100

}

track_script {

chk_nginx

}

notify_master "/etc/keepalived/notify.sh master "

notify_backup "/etc/keepalived/notify.sh backup "

notify_fault "/etc/keepalived/notify.sh fault "

}

主备服务器上的脚本内容:

#vim /etc/keepalived/notify.sh notify.sh


#!/bin/bash

case "$1" in

master)

/etc/init.d/nginx start

exit 0

;;

backup)

/etc/init.d/nginx stop

exit 0

;;

fault)

/etc/init.d/nginx stop

exit 0

;;

*)

echo ‘Usage: `basename $0` {master|backup|fault}‘

exit 1

;;

esac

主备服务器上LVS配置内容:


virtual_server 192.168.1.100 80 {

delay_loop 6

lb_algo rr

lb_kind DR

nat_mask 255.255.255.0

persistence_timeout 0

protocol TCP

real_server 192.168.1.30 80 {

weight 1

HTTP_GET {

url {

path /demo.php

status_code 200

}

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

}

}

real_server 192.168.1.40 80 {

weight 1

HTTP_GET {

url {

path /demo.php

status_code 200

}

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

}

}

}

在nginx1和nginx2上分别运行一下命令:

ip addr add 192.168.1.100/32 label lo:0 brd 192.168.1.100 dev lo

echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

时间: 2024-08-03 14:20:25

Keepalived实现Nginx与LVS高可用的相关文章

利用keepalived实现nginx调度器高可用(一)

利用keepalived实现nginx调度器高可用 声明:提供四台主机,其中两台nginx做前端调度器(一台做主调度器,一台做备用调度器), 另外两台主机做web服务器向外提供http服务: 框架如图: 1.在两台nginx上配置nginx反代服务 # vim /etc/nginx/nginx.conf 在http上下文中添加下文: upstream webser {             server 172.16.1.12:80 weight=1;             server 1

初识keepalived(三)——keepalived与nginx代理实现高可用

背景介绍 nginx除了可以作为web服务器外,同时也是一个反向代理软件,nginx不能完全取代apache,所以很多场景下nginx作为apache的反向代理服务器.nginx运行在用户空间,代替用户向服务器发起请求,请求返回时再经由nginx服务器返回给用户.不同于LVS的NAT模型,web服务器的网关不用必须指向nginx服务器,只要2者之间可以通信就可以,由于nginx作为代理服务器,所以支持端口转换. 网络拓扑 实验拓扑结构如下: 实验系统采用CentOS6.8,nginx采用1.12

keepalived实现nginx调度器高可用(二)

构建LNAMMP架构:1) Nginx既是前端调度器,又是反向代理缓存服务器:2) 将php的session缓存于memcached中:3) 使用php-fpm上部署Discuz论坛程序:4) 使用https连接,即使用户使用的是http协议也可以以https协议进行访问: 声明:提供5台主机,其中两台nginx做前端调度器(一台做主调度器:172.16.1.11主机,一台做备用调度器:172.16.1.20主机), 另外两台主机做web服务器向外提供php-fpm服务:(172.16.1.12

Centos7+Nginx+Keepalived实现Apache服务的高可用&负载均衡

Centos7+Nginx+Keepalived实现Apache服务的高可用&负载均衡 今天是2017年的第一天,昨天也就是2016年的最后一天,我尝试部署了Centos7+Nginx+Keepalived实现WEB服务的高可用负载均衡服务,终于在2017年的第一天前完成了,所以在此分享给有需要的朋友:说到负载均衡,其实在linux下有很多服务可以实现,比如nginx.haproxy.lvs等服务,当前我们在前面的文章有介绍过了,但是对于高可用服务,我们在linux下最常见也是应用最多的是Kee

高可用集群技术之keepalived实现lvs高可用并负载均衡web服务

Keepalived概述: Keepalived的作用是检测服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器. keepalived实现lvs高可用并负载均衡web服务: 准备工作: 2台keepalived节点为: node1.samlee.com

Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)

原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.net/xyang81/article/details/52554398可以看更多介绍 Keepalived的介绍可以百度一堆一堆的资料.一定要看看哦. 1.基于上一篇博客总结,再次安装一个虚拟机当backup服务器,这个服务器只安装Keepalived+Nginx即可 2.Master还是上一篇博文的

keepalived lvs 实现lvs高可用

keepalived 简介 keepalived是借用VRRP协议来实现高可用性的,VRRP协议是解决单点故障,使路由器和层三交换机实现冗余功能. keepalived启动后会有三个进程 父进程:内存管理,子进程管理等等 子进程:VRRP子进程 子进程:healthchecker子进程 从图上可以看出,两个子进程都被系统WatchDog看管,两个子进程各自操作自己的事,healthchecker子进程负责检查各自服务器的健康程度,例如HTTP,LVS等等,如果healthchecker子进程检查

keepalived实现lvs高可用并负载均衡lamp

一.安装lamp 1.安装httpd(172.16.23.211) [[email protected] ~]# yum install -y httpd 2.安装php(172.16.23.211) [[email protected] ~]# yum install -y php 3.安装php-mysql(172.16.23.211) [[email protected] ~]# yum install -y php-mysql 4.安装mariadb(172.16.23.211 Cent

Keepalived+Nginx+Tomcat 实现高可用Web集群(转)

Keepalived+Nginx+Tomcat 实现高可用Web集群 溯水心生 关注 2018.01.08 20:28* 字数 1382 阅读 965评论 1喜欢 9 集群规划图片 一.Nginx的安装过程 1.下载Nginx安装包,安装依赖环境包 (1)安装 C++编译环境 yum -y install gcc #C++ (2)安装pcre yum -y install pcre-devel (3)安装zlib yum -y install zlib-devel (4)安装Nginx 定位到n