keepalived部署+nginx高可用
keepalived+nginx-1: 192.168.1.23
keepalived+nginx-2: 192.168.1.25
keepalived环境部署:(需要关闭防火墙与selinux)
yum方式部署:
yum install keepalived* -y
#配置文件:
/etc/keepalived/keepalived.conf
源码方式部署:
#下载版本keepalived-1.4.5版本/安装配置:
wget https://www.keepalived.org/software/keepalived-1.4.5.tar.gz
tar xf keepalived-1.4.5.tar.gz
cd keepalived-1.4.5
./configure --prefix=/usr/local/keepalived/
make
make install mkdir /etc/keepalived/
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
cp keepalived-1.4.5/keepalived/keepalived.service /etc/systemd/system/
ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/
cp keepalived-1.4.5/keepalived/etc/init.d/keepalived /etc/init.d/
chmod 755 /etc/init.d/keepalived
systemctl enable keepalived
systemctl start keepalived
ps -ef|gre keepalived
keepalived结合nginx实现高可用:(nginx安装步骤省略)两台keepalived+nginx服务的keepalived配置文件/nginx进程脚本 差不多一样:需要注意的是空格不能多写 nopreempt不抢占参数 只对BACKUP生效,对MASTER无效。
keepalived配置文件内容如下:
! Configuration File for keepalived
global_defs {
notification_email {
support@jfedu.net
}
notification_email_from wgkgood@163.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
} vrrp_script chk_nginx {
script "/data/sh/auto_check_nginx.vip.sh"
interval 2
weight 2
} #VIP1
vrrp_instance VI_1 {
state BACKUP
interface ens33
virtual_router_id 151
priority 100
nopreempt
advert_int 5
authentication {
auth_type PASS
auth_pass 1111 }
virtual_ipaddress {
192.168.1.198
}
track_script {
chk_nginx
}
}
监控nginx服务进程脚本:
vim /data/sh/auto_check_nginx.vip.sh
NGX_MUX="$(ps -ef|grep nginx|grep -v "grep"|grep -v "check"|wc -l)"
if [ $NGX_MUX -eq 0 ];then
systemctl stop keepalived
fi
配置keepalived主主模式:
! Configuration File for keepalived
global_defs {
notification_email {
support@jfedu.net
}
notification_email_from wgkgood@163.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
} vrrp_script chk_nginx {
script "/data/sh/auto_check_nginx.vip.sh"
interval 2
weight 2
} #VIP1
vrrp_instance VI_1 {
state BACKUP
interface ens33
virtual_router_id 151
priority 90
nopreempt
advert_int 5
authentication {
auth_type PASS
auth_pass 1111 }
virtual_ipaddress {
192.168.1.198
}
track_script {
chk_nginx
}
} #VIP2
vrrp_instance VI_2 {
state MASTER
interface ens33
virtual_router_id 152
priority 100
nopreempt
advert_int 5
authentication {
auth_type PASS
auth_pass 2222 }
virtual_ipaddress {
192.168.1.199
}
track_script {
chk_nginx
}
}
keepalived部署+nginx高可用的更多相关文章
- Keepalived保证Nginx高可用配置
Keepalived保证Nginx高可用配置部署环境 keepalived-1.2.18 nginx-1.6.2 VM虚拟机redhat6.5-x64:192.168.1.201.192.168.1. ...
- keepalived对nginx高可用演练脚本
keepalived对nginx高可用演练脚本 参考文章:http://deidara.blog.51cto.com/400447/302402/ .安装nginx.keepalived.epel-r ...
- linux中keepalived实现nginx高可用配置
linux中keepalived实现nginx高可用配置 安装keepalived 运行如下命令即可 tar -zxvf keepalived-2.0.8.tar.gz -C /usr/src cd ...
- 配置keepalived支持nginx高可用
实验环境 序号 主机名 IP地址 1 nginx1 192.168.204.11 2 nginx2 192.168.204.12 安装nginx 安装nginx yum install -y epel ...
- keepalived实现nginx高可用
keepalived是什么 keepalived直译就是保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发 ...
- Keepalived+LVS-DR+Nginx高可用故障切换模式
LVS架构中,不管是NAT模式还是DR模式,当后端的RS宕掉后,调度器依然会把请求转发到宕掉的RS上,这样的结果并不是我们想要的.其实,keepalived就可以解决问题,它不仅仅有高可用的功能,还有 ...
- 基于keepalived的nginx高可用
#nginx,keepalived安装略过 MASTER 节点配置文件(192.168.1.11) vi /etc/keepalived/keepalived.conf global_defs { # ...
- Nginx配置upstream实现负载均衡及keepalived实现nginx高可用
(原文链接:http://www.studyshare.cn/blog-front//blog/details/1159/0 ) 一.准备工作 1.准备两个项目,发布到不同的服务器上,此处使用2个虚拟 ...
- 使用Keepalived实现Nginx高可用
Keepalived是一个路由软件,可以提供linux系统和linux系统上的组件的负载均衡和高可用,高可用基于VRRP(Virtual Router Redundancy Protocol,虚ip) ...
- keepalived+lvs+nginx高可用
环境说明: IP地址 部署应用 192.168.10.100 VIP0 192.168.10.101 VIP1 192.168.10.17 keepalived+lvs 192.168.10.16 k ...
随机推荐
- Django ORM:最全面的数据库处理指南
深度探讨Django ORM的概念.基础使用.进阶操作以及详细解析在实际使用中如何处理数据库操作.同时,我们还讨论了模型深入理解,如何进行CRUD操作,并且深化理解到数据库迁移等高级主题.为了全面解读 ...
- jdbc-plus是一款基于JdbcTemplate增强工具包,基于JdbcTemplate已实现分页、多租户、动态表名等插件,可与mybatis、mybatis-plus等混合使用
jdbc-plus简介 jdbc-plus是一款基于JdbcTemplate增强工具包,基于JdbcTemplate已实现分页.多租户.动态表名等插件,可与mybatis.mybatis-plus等混 ...
- Mysql基础8-多表查询
一.多表关系 一对多或者多对一 案例:部门与员工的关系 关系:一个部门对应多个员工,一个员工对应一个部门(不考虑跨部门的特殊情况) 实现:在多的一方建立外键,指向一的一方的主键,这里员工表是多的的一方 ...
- Unity UGUI的RawImage(原始图片)组件的介绍及使用
Unity UGUI的RawImage(原始图片)组件的介绍及使用 1. 什么是RawImage组件? RawImage是Unity UGUI中的一个组件,用于显示原始图片.与Image组件不同,Ra ...
- Uncaught TypeError: Failed to set the 'currentTime' property on 'HTMLMediaElement': The provided double value is non-finite.
musicSeekTo: function(value){this.audio.currentTime = this.audio.duration*value; }, musicVoiceSeekTo ...
- linux 配置dns及代理
简介 对于新装的环境,可能无法访问外网,此时需要设置代理或DNS实现访问. 类似wget.yum.pip这类命令都需要通过网络进行下载. 配置dns服务 在/etc/resolv.conf中添加如下两 ...
- 超详细的mysql总结(基本概念、DDL、DML)
开发中存在着各种数据,比如用户的个人信息.商品详情.购买记录,这些数据都要以一定的方式储存,如果以文本的形式储存,每一次获取都要读取文件,如果信息有修改则需要直接修改文本,大量的数据会需要保存大量的文 ...
- debian11安装配置记录
安装 软件包默认是桌面环境 + gnome + 标准安装.如果做服务器,建议标准安装 + ssh server 设置静态ip cd /etc/network/interfaces.d vi ifcfg ...
- Html+JavaScript实现手写签名
前言 Hello各位,本葡萄又来啦,今天遇到的场景是这样的:在日常业务流程中,经常需要某一流程环节中相关责任人员进行审批签字,早期许多公司为了省事就直接会把这位负责人的签名以键盘打字(楷体)的形式打印 ...
- 《SQLi-Labs》01. Less 1~5
@ 目录 前言 索引 Less-1 题解 原理 Less-2 题解 Less-3 题解 Less-4 题解 Less-5 题解 原理 sqli.开启新坑. 前言 对于新手,为了更加直观的看到 sql ...