介绍:

keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived是自动完成,不需人工干涉。主要提供loadbalancing(负载均衡)和 high-availability(高可用)功能,负载均衡实现需要依赖Linux的虚拟服务内核模块(ipvs),而高可用是通过VRRP协议实现多台机器之间的故障转移服务。

IP分配:

Master:172.16.1.11Salve:172.16.1.21VIP:172.16.1.250

安装

1.Nginx安装

参考:本人前面发的Nginx安装文档

2.keepalived安装

2.1安装包下载

keepalived-1.2.19(http://image.wohenniucha.com/upload/2018/05/keepalived-1.2.19.tar.gz)

2.2开始安装

cd /main/softtar zxvf keepalived-1.2.19.tar.gzcd keepalived-1.2.19./configure --prefix=/main/server/keepalivedmake && make install

2.3配置为服务和开机启动

#复制keepalived启动文件到默认路径cp /main/server/keepalived/sbin/keepalived /usr/sbin/cp /main/server/keepalived/etc/sysconfig/keepalived /etc/sysconfig/cp /main/server/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/chmod 755 /etc/init.d/keepalivedchkconfig --add keepalivedchkconfig --level 345 keepalived on

2.4创建Nginx监控脚本

vi /main/server/nginx/conf/check_nginx.sh##复制以下脚本#!/bin/bash A=`ps -C nginx --no-header|wc -l` if [ $A -eq 0 ];then /main/server/nginx/sbin/nginxsleep 3if [ `ps -C nginx --no-header|wc -l` -eq 0 ];then killall keepalived fi fi#赋予执行权限chmod 755 /main/server/nginx/conf/check_nginx.sh

2.5配置keepalived

2.5.1主节点配置

vi /etc/keepalived/keepalived.conf##复制以下配置文件!Configuration File for keepalivedglobal_defs { notification_email { admin@wohenniucha.com} notification_email_from admin@wohenniucha.com smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id NGINX1_DEVEL}vrrp_script chk_nginx { script "/main/server/nginx/conf/check_nginx.sh" interval 2 weight 2}vrrp_instance VI_1 { state MASTER nopreempt interface eth0 virtual_router_id 31 mcast_src_ip 172.18.1.11 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 002233 } virtual_ipaddress { 172.18.1.250 }track_script { chk_nginx }}

2.5.2备节点配置

vi /etc/keepalived/keepalived.conf##复制以下配置文件! Configuration File for keepalivedglobal_defs { notification_email { admin@wohenniucha.com} notification_email_from admin@wohenniucha.com smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id NGINX2_DEVEL}vrrp_script chk_nginx { script "/main/server/nginx/conf/check_nginx.sh"  interval 2 weight 2}vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 31 mcast_src_ip 172.18.1.21 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 002233 } virtual_ipaddress { 172.18.1.250 }track_script { chk_nginx }}

2.5.3重启服务

service keepalived start

2.6开放防火墙端口

iptables -I INPUT -p tcp --dport 80 -j ACCEPT iptables -I INPUT 3 -p vrrp -j ACCEPT/etc/rc.d/init.d/iptables save

2.7查看日志

日志文件在/var/log/messages

nginx日志打印header_小水敲黑板--Nginx+Keepalived实现负载均衡和高可用相关推荐

  1. nginx负载均衡和高可用

    代理和负载均衡的区别 代理负责把连接请求直接转发到后台某个web节点     负载均衡负责把请求使用某种调度算法分散发布给后台所有web节点 ----------------------------- ...

  2. keepalived介绍和keepalived实现nginx负载均衡机高可用

    1. keepalived简介 1.1 keepalived是什么? Keepalived 软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实 ...

  3. Keepalived+LVS+Nginx负载均衡之高可用

    2019独角兽企业重金招聘Python工程师标准>>> 上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致 ...

  4. Nginx 基本概念(反向代理、动静分离、负载均衡、高可用)、安装配置(JDK\Tomcat\Nginx\Keepalived)、配置实例效果

    这篇文章将先阐述Nginx相关概念,然后介绍Nginx相关环境的安装配置过程(包括Linux下JDK\Tomcat的安装,都是自己动手操作的记录),及反向代理.负载均衡.动静分离.高可用的配置及测试过 ...

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

    Centos7+Nginx+Keepalived实现Apache服务的高可用&负载均衡 今天是2017年的第一天,昨天也就是2016年的最后一天,我尝试部署了Centos7+Nginx+Kee ...

  6. 使用Nginx、Keepalived构建负载均衡

    对于一个访问量日益增加的网站架构而言,从单机到集群.从集群到分布式,架构演化是必然的. 接手环境,分析瓶颈,扩展架构 笔者现在的环境在刚接手时算是单机LAMP环境.在单机LAMP环境时,由于访问量逐渐 ...

  7. Nginx 概述 如何正规安装 静态网页配置 反向代理配置 负载均衡配置

    目录 1. 基本概念 1.1 Nginx初步认识 1.2 正向/反向代理 1.3 域名和IP 2. Nginx安装和配置 2.1 安装Nginx 2.2 配置 3. Nginx的使用 3.1 部署静态 ...

  8. Nginx+KeepAlived实现负载均衡高可用原理

    作者:田超凡 原创博文,严禁复制转载,仿冒必究 nginx负载均衡高可用 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务 ...

  9. nginx 一个请求发给多台机器_Nginx系列二:负载均衡与反向代理

    一.负载均衡 1.什么是负载均衡 随着请求数的快速增长,单服务器已经无法承担大量用户的并发访问,这个时候,就需要建立服务器集群,来让多台服务器协同工作,提高整体项目的吞吐量和QPS.假设一台设备资源占 ...

最新文章

  1. CV领域论文常用单词汇总
  2. 励志:读书七年,为了挣钱,我竭尽全力
  3. python硬件交互_Python操作系统库说明,pythonos,笔记
  4. myeclipse链接数据库,SQL语句实现增删改查
  5. LeetCode 1061. 按字典序排列最小的等效字符串(并查集)
  6. python实现队列_Python学习教程:用队列实现栈
  7. python类和对象的定义_python类与对象基本语法
  8. 8.Java 面试题整理(J2EE,MVC方面)
  9. Python的基本数据类型(1)
  10. python的setdefault方法
  11. 精读《如何在 nodejs 使用环境变量》
  12. 【转】navicat远程连接mysql,2003 can't connect to mysql server on 10038
  13. Alt + 数字键 符号大全
  14. vs2013 c++項目轉 vs2008
  15. 聚类算法评价指标python实现_聚类算法及其评估指标
  16. Linux基本命令大总结
  17. 211西北大学,计算机、软件学硕和专硕专业课都变难了!
  18. 鼠标被计算机无法识别怎么办,电脑无法识别鼠标的处理方案
  19. [概念]医学图像分割中常用的Loss function(损失函数) + 从loss处理图像分割中类别极度不均衡
  20. 程序员必备的20多种开发工具

热门文章

  1. crc32硬加速指令
  2. 前端工程化开发之yeoman、bower、grunt
  3. Android开发工具集合
  4. 15款最佳的 jQuery 分步引导插件
  5. Linux学习笔记 -- 日志管理
  6. 机器学习--支持向量机(四)SMO算法详解
  7. csdn博客图片复制不过来怎么办?如何转载?
  8. 微信小程序图片上传九宫格拖拽组件
  9. css margin padding 0,CSS 彻底理解margin与padding
  10. mysql 行级锁 where_mysql 行级锁的使用以及死锁的预防