安装nginx

nginx 下载地址 http://nginx.org/download/nginx-1.8.0.tar.gz

安装nginx的依赖关系

yum install pcre pcre-devel openssl openssl-devel -y

创建用户  useradd www

接下来编译安装nginx

./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

make      make install

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf  指定配置文件

/usr/local/nginx/sbin/nginx -s reload   启动nginx

nginx安装完成 我这里只安装一台 多台一样

keepalived 安装

keepalived  下载地址 http://www.keepalived.org/software/keepalived-1.2.19.tar.gz

安装基础环境

yum -y install gcc gcc-c++ pcre-devel zlib-devel openssl-devel

内核开发包安装

yum install  kernel-devel kernel  -y

编译安装keepalived

/configure --with-kernel-dir=/usr/src/kernels/2.6.32-573.3.1.el6.x86_64/

make && make install

将安装完的keepalived 拷贝到目录

DIR=/usr/local/
         ;cp $DIR/etc/rc.d/init.d/keepalived 
         /etc/rc.d/init.d/ ; cp $DIR/etc/sysconfig/keepalived /etc/sysconfig/ ;
          mkdir -p /etc/keepalived ; cp $DIR/sbin/keepalived /usr/sbin/

chkconfig keepalived on

编辑配置文件 默认配置文件不存在

vim  /etc/keepalived/keepalived.conf

msater 配置文件

! configuration file for keepalived
#by:v
global_defs {

}

vrrp_script chk_run {
script /root/my.sh
interval 2
weight 2
}

# VIP1                                         # 第一台

vrrp_instance VI_1 {
state MASTER
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 151
priority 102
advert_int 1  
nopreempt                           #不抢占   当master挂了之后 飘到backup 上面    master修好之后   不抢占  
authentication {
auth_typepass        
auth_pass 1111
}

virtual_ipaddress {
192.168.80.43
                       
}

track_script {
chk_run

}
}

# VIP2                                # 第二台

vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 150
priority 100
advert_int 1  
authentication {
auth_typepass        
auth_pass 2222
}

virtual_ipaddress {
192.168.80.44
                       
}

track_script {
chk_run

}
}

backup 配置文件

vim  /etc/keepalived/keepalived.conf

vrrp_script chk_run {
script "/root/my.sh"
interval 2
weight 2
}

# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 151
priority 100
advert_int 1

authentication {
auth_typepass
auth_pass 1111
}

virtual_ipaddress {
192.168.80.43
}

track_script {
chk_run

}

}

# VIP2
vrrp_instance VI_1 {
state MASTER
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 150
priority 102
advert_int 1
nopreempt

authentication {
auth_typepass
auth_pass 2222
}

virtual_ipaddress {
192.168.80.44
}

track_script {
chk_run

}

}

在上面我们定义了引my.sh脚本  通过my.sh脚本检测 ngixn 是否正常 我们来写一个脚本

#!/bin/bash
A=`netstat -ltnp |grep 80 |wc -l`
if [ $A -eq 0 ];then
/etc/rc.d/init.d/keepalived stop
fi

chmod +x my.sh

启动keepalived服务     到此完成

/etc/rc.d/init.d/keepalived start

keepalived + nginx双主 实战的更多相关文章

  1. Nginx(haproxy)+keepalived+Tomcat双主高可用负载均衡

    周末的时候一个正在学Linux的朋友问我,高可用怎么玩?我和他微信了将近三个小时,把Nginx和haproxy双主高可用教给他了,今天突然想把这个给写进博客里,供给那些正在学习Linux系统的朋友们, ...

  2. Mysql + keepalived 实现双主热备读写分离【转】

    Mysql + keepalived 实现双主热备读写分离 2013年6月16日frankwong发表评论阅读评论   架构图 系统:CentOS6.4_X86_64软件版本:Mysql-5.6.12 ...

  3. MySQL 高可用性—keepalived+mysql双主

    MySQL 高可用性—keepalived+mysql双主(有详细步骤和全部配置项解释) - 我的博客 - CSDN博客https://blog.csdn.net/qq_36276335/articl ...

  4. MySQL 高可用性—keepalived+mysql双主(有详细步骤和全部配置项解释)

    博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 前言:生产环境中一台mysql主机存在单 ...

  5. JAVAEE——宜立方商城03:Nginx负载均衡高可用、Keepalived+Nginx实现主备

    1 nginx负载均衡高可用 1.1 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务, ...

  6. keepalived+MySQL双主搭建

    keepalived+MySQL双主搭建过程 首先要简单了解一下keepalived: Keepalived是Linux下一个轻量级别的高可用解决方案.高可用(High Avalilability,H ...

  7. 【 Linux 】Keepalived实现双主模型高可用集群

    要求:    1. 两台web服务器安装wordpress,数据库通过nfs共享    2. 使用keepalived实现双主模型 环境:    主机:        系统:CentOS6.7 x64 ...

  8. 基于 MySQL 5.6 keepalived的双主搭建

    环境介绍: 说明 IP 节点1 192.168.56.56 节点2 192.168.56.57 w_ip 192.168.56.6 安装keepalived tar -zxvf keepalived- ...

  9. keepalived+Nginx实现主备保障Nginx的高可用。

    1.什么是keepalived? Keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障. Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工 ...

随机推荐

  1. Java学习——Java运算符

    位运算符 A = 0011 1100 B = 0000 1101 ----------------- A&b = 0000 1100 A | B = 0011 1101 A ^ B = 001 ...

  2. Visual Studio 中 UNICODE 宏的设置

    项目属性-> 配置属性 -> 常规 -> 字符集 (多字节字符集即没有设置UNICODE宏, 使用Unicode字符集就是设置了UNICODE宏) 设置的效果可以去 C/C++ -& ...

  3. (Factory method)工厂方法设计模式

    定义: 1.) 工厂方法模式是用来封装对象的创建,通过让子类来决定创建的对象是什么,来达到将对象创建的过程封装的目的: 2.) 定义了一个创建对象的接口,但由子类决定要实例的泪是哪一个.工厂方法让类把 ...

  4. 单链表的回文判断(O(n)时间复杂度和O(1)的空间复杂度)

    对于单链表来说,判断回文最简单的方法就是遍历链表,将链表中的元素复制到数组中,然后对数组进行判断是否是回文数组,但是这不符合O(1)的空间复杂度. 由于空间复杂度的要求,需要就地操作链表,不能开辟多余 ...

  5. linux下gcc默认搜索头文件及库文件的路径

    一.头文件gcc 在编译时如何去寻找所需要的头文件:※所以header file的搜寻会从-I开始※然后找gcc的环境变量 C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,OBJC ...

  6. SQL 数据库 触发器 、事务

    触发器类型有两种: 1.AFTER(FOR)触发器 在动作执行之后触发(增删改执行完成后,触发器中的代码再执行),不能为视图指定for触发器,只能为表指定该触发器. 2.instead of触发器 可 ...

  7. [Reprint] C++函数模板与类模板实例解析

    这篇文章主要介绍了C++函数模板与类模板,需要的朋友可以参考下   本文针对C++函数模板与类模板进行了较为详尽的实例解析,有助于帮助读者加深对C++函数模板与类模板的理解.具体内容如下: 泛型编程( ...

  8. ASP.NET的一般处理程序对图片文件的基本操作

    以一个小项目为例: 验证码: public class VerifyCodeHelper { public VerifyCodeHelper() { this.ran = new Random(); ...

  9. acm算法模板(5)

    STL 中 sort 函数用法简介 做 ACM 题的时候,排序是一种经常要用到的操作.如果每次都自己写个冒泡之类的 O(n^2) 排序,不但程序容易超时,而且浪费宝贵的比赛时间,还很有可能写错. ST ...

  10. 【IOS】3. OC 类声明和实现

    .h文件 @interface NewClassName:ParentClassName { 实例变量://基本类型和指针类型  不能在这里初始化,系统默认会初始化 系统初始化遵循: 实例变量类型   ...