加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

nginx+keepalived主备切换(不考虑主nginx停掉现象)

(2013-09-10 23:49:21)
标签:

centos

linux

负载均衡

主备切换

keepalived

it

分类: Linux

Nginx+keepalived主备切换

环境:

VM中linux均为CentOS操作系统

http://s11/mw690/79ac6aa8gx6CyehKnG2ea&690

 

 

 

 

在此没有提到nginx的安装,与nginx的负载均衡。请参考 nginx简单负载均衡 文章。

备用服务器nginx配置文件与主服务器nginx配置文件相同。

 

 

步骤:

下载keepalived源码包

解压

编译安装

拷贝文件

修改keepalived配置文件

两台服务器启动keepalived服务

查看日志对转移之后日志对比

测试与停掉主keepalived服务之后测试效果

 

 

 

 

1.下载keepalived源码包

http://www.keepalived.org/download.html

2.解压

tar zxvf keepalived-XXX.tar.gz

cd keepalived-XXX

3. 编译安装

  ./configure --prefix=/usr/local/keepalived

            

错误提示可能如下  

一种情况:  

!!! OpenSSL is not properly installed on your system. !!!    

!!! Can not include OpenSSL headers files.    

解决方案:运行yum -y installopenssl-devel

二种情况:

 出现configure: error: Popt libraries is required

 解决方法:yum install popt-devel

 

Make && make install

 

4.拷贝文件

  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/

5.修改配置文件

在192.168.10.1主服务器上 

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

vi /etc/keepalived/keepalived.conf

Configuration File for keepalived

global_defs {

   notification_email {

        694366594@qq.com

 }

   notification_email_from Keepalived@chtopnet.com

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

}

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.10.5

    }

}

在192.168.10.4备用服务器上

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

vi /etc/keepalived/keepalived.conf

Configuration File for keepalived

global_defs {

   notification_email {

        694366594@qq.com

 }

   notification_email_from Keepalived@chtopnet.com

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

}

vrrp_instance VI_1 {

    state BUCKUP

    interface eth3   #//这里是备用服务器网卡接口

    virtual_router_id 51

    priority 99

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

   192.168.10.5

    }

}

6.两台服务器启动keepalived

service keepalived start

 

7.查看主日志

http://s13/bmiddle/79ac6aa8gx6Cyekksosbc&690 

还可以通过 

 ip -a 命令来查看

http://s6/bmiddle/79ac6aa8gx6Cyel5D2B25&690 

 

查看备份服务器

http://s14/bmiddle/79ac6aa8gx6CyelQhxrcd&690 

http://s5/bmiddle/79ac6aa8gx6CyemwhP6c4&690 

8.pc机访问http://192.168.10.5

http://s7/bmiddle/79ac6aa8gx6Cyen7Dx496&690 

刷新

http://s14/bmiddle/79ac6aa8gx6CyenOluR6d&690 

9.停掉主服务器192.168.10.1的keepalived服务

   service keepalived stop

 pc机访问http://192.168.10.5正常

 

  查看主服务器192.168.10.1的日志1情况

http://s3/bmiddle/79ac6aa8gx6CyeoqGL882&690 

http://s10/bmiddle/79ac6aa8gx6CyeoZkFPc9&690 

查看备用服务器192.168.10.4的日志情况

 http://s8/mw690/79ac6aa8gx6Cyewipx597&690


http://s1/mw690/79ac6aa8gx6Cyex0ola50&690

 

 

 

经测试验证:

若主服务器keepalived服务停掉了,备用服务器立马接管。不会造成用户无法访问。主服务器keepalived恢复正常之后重新接管。

 

问题所在:

如果nginx服务被意外停掉了,会造成用户无法访问。

因为keepalived服务没有停止。

 

解决上述问题下回分解。

 




 

 

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有