热机双备份 linux 开源模块,高可用方案之二 nginx热机双备

架构图

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

##keepalived 使用教程

###安装

* 安装相关组建

>yum -y  install openssl  openssl-devel  popt popt-devel

* 下载

>wget http://www.keepalived.org/software/keepalived-1.2.15.tar.gz

* 解压

>tar zxvf keepalived-1.2.15.tar.gz  #解压安装包

* 编译

>./configure --prefix=/usr/local/keepalived --sbindir=/usr/local/keepalived/sbin  #

* 安装

> make && make install

* 换成服务

# cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/

# chkconfig --add keepalived

# chkconfig --level 2345 keepalived on

# mkdir -p /etc/keepalived

# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived

service keepalived start

### 配置

* 列表

slb     192.168.202.3

master  192.168.201.4

slave   192.168.201.5

vip     192.168.201.100

* master 配置

ifconfig

ens33: flags=4163  mtu 1500

inet 192.168.202.5  netmask 255.255.255.0  broadcast 192.168.202.255

// 这里的网卡为 ens33

vim /etc/keepalived/keepalived.conf

修改为如下

vrrp_instance VI_1 {

state MASTER

interface ens33

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

#添加脚本检查,可以不用

vrrp_script chk_nginx {

script "/etc/keepalived/check_nginx.sh"

interval 2

weight -5

fall 3

rise 2

}

virtual_ipaddress {

#vip地址

192.168.202.100

}

#触发脚本

track_script {

chk_nginx

}

}

* backup 配置

vim /etc/keepalived/keepalived.conf

修改为如下

vrrp_script chk_nginx {

script "/etc/keepalived/check_nginx.sh"

interval 2

weight -5

fall 3

rise 2

}

vrrp_instance VI_1 {

state BACKUP

interface ens33

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

#触发脚本

track_script {

chk_nginx

}

virtual_ipaddress {

#vip地址

192.168.202.100

}

}

重启服务

* 和nginx 搭配使用

如果两台nginx服务器其中有一台nginx 挂了,重启不了,则关闭keepalived进程 脚本为如下

vim /etc/keepalived/check_nginx.sh :

#!/bin/bash

counter=$(ps -C nginx --no-heading|wc -l)

if [ "${counter}" = "0" ]; then

/usr/local/bin/nginx

sleep 2

counter=$(ps -C nginx --no-heading|wc -l)

if [ "${counter}" = "0" ]; then

/etc/init.d/keepalived stop

fi

fi

*材料

192.168.202.4        keepalived nginx

192.168.202.5        keepalived nginx

192.168.202.100      keepalived vip

192.168.202.6        web服务器

192.168.202.7        web服务器

*

配置负载均衡器

在服务器上 192.168.202.4 和 192.168.202.5 上

upstream slb_test {

#ip_hash;  #根据ip哈希,进行转发

server 192.168.202.6;

server 192.168.202.7;

}

server{

listen 80 default_server;

server_name www.lnmp.org;

index index.html index.htm index.php;

root  /home/wwwroot/default;

location / {

proxy_pass  http://slb_tuzuu;

}

access_log  /home/wwwlogs/access.log;

}

备注: 这里如果做所有的请求转发的就按照以上的配置,去掉php的配置

*

配置keepalived 在 192.168.202.4 和 192.168.202.5

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值