首页 » 运维 » 常用软件 » 正文

keepalived 配置网站集群 nginx

今天配置了一个网站集群,虽然中午没睡觉,但是感觉很好,现在把方法整理一下

其实个人认为keepalived就是一个选择器,帮你选在哪天服务器在用,比如我们现在有两台服务器作为集群的两个服务器,当然我们公司选择的是rsync+inotify的方式来同步了两个文件夹的全部内容。(这个可以代替共享存储)。当其中一个宕机的时候,我们希望我们的域名自动的指向可以访问的备份服务器。

keepalived就是说将两台服务器报装起来,对外显示为一台服务器,比如我们两台的ip分别为:192.168.0.1 192.168.0.2

我们虚拟出来的Ip是192.168.0。10,也就是说,外边的人看我们的服务器就只有一台,IP为192.168.0.10,至于具体这个10是那一台就看我们的设置了,默认是主服务器,当主服务器宕机的时候,keepalived会自动切换为备份服务器

现在把/etc/keepalived/keepalived.conf的配置贴出来

主服务器:

! Configuration File for keepalived

 

global_defs {

notification_email {

my4615440@163.com

}

notification_email_from my4615440@163.com

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

 

vrrp_script chk_http_port {

script “</dev/tcp/127.0.0.1/80″

interval 1

weight -2

}

 

 

vrrp_instance VI_1 {

state MASTER

interface em1

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.0.10

}

track_script {

chk_http_port

}

 

}

备份服务器:
    ! Configuration File for keepalived
global_defs {
   notification_email {
     my4615440@163.com
   }
   notification_email_from my4615440@163.com
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_script chk_http_port {
        script “</dev/tcp/127.0.0.1/80″
        interval 1
        weight -2
}
vrrp_instance VI_1 {
    state BACKUP
    interface em1
    virtual_router_id 51
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.0.10
    }
   track_script {
        chk_http_port
   }
}
上边的配置可能和流行的配置不怎么一样,但是貌似这样也可以实现。求解释
时间:2012-07-10 22:01:20

Zhiming Zhang

Senior devops at Appannie
一个奔跑在运维路上的胖子
Zhiming Zhang

Latest posts by Zhiming Zhang (see all)