Yum安装更简单。安装并启动keepalived,表示安装成功。有3个进程。css
etc\keepalived\keepalived.conf:html
备的keepalived配置文件:mysql
! Configuration File for keepalived //!、#是注释 global_defs { //所有的配置,几乎不用。 notification_email { acassen@firewall.loc //keepalived节点宕机了,报警的email收件人 failover@firewall.loc //keepalived节点宕机了,报警的email收件人 sysadmin@firewall.loc //keepalived节点宕机了,报警的email收件人 } notification_email_from Alexandre.Cassen@firewall.loc //发件人 smtp_server 192.168.200.1 //邮件服务器的地址 smtp_connect_timeout 30 //邮件服务器的超时时间 router_id LVS_02 //至关于mysql的server id,不一样的keepalived不能同样, } vrrp_instance VI_1 { //keepalived的一个实例,或者说是VRRP的一个实例,VI_1是实例的名字(不要改) state BACKUP //状态:主,备的不同其他跟主的同样 interface eth0 //通讯端口,virtual_ipaddress里面的ip绑定到eth0 virtual_router_id 51 //实例的id,一个这个配置文件能够有20多个实例,备的要跟主的同样, priority 100 //竞选时候的优先级。备的要小50,备的不同其他跟主的同样 advert_int 1 //心跳的间隔 authentication { //keepalived之间经过密码通讯,keepalived对之间的密码要同样。 auth_type PASS auth_pass 1111 } virtual_ipaddress {//vip功能,keepalived的ip //192.168.200.16/24 192.168.200.17/24 //192.168.200.18/24 } }
主的keepalived的配置文件:nginx
! Configuration File for keepalived //!、#是注释 global_defs { //所有的配置,几乎不用。 notification_email { 672530440@qq.com //keepalived节点宕机了,报警的email收件人 } notification_email_from Alexandre.Cassen@firewall.loc //发件人 smtp_server 192.168.200.1 //邮件服务器的地址 smtp_connect_timeout 30 //邮件服务器的超时时间 router_id LVS_01 //至关于mysql的server id,不一样的keepalived不能同样, } vrrp_instance VI_1 { //keepalived的一个实例,或者说是VRRP的一个实例,VI_1是实例的名字(不要改) state MASTER //状态:主,备的不同其他跟主的同样 interface eth0 //通讯端口,virtual_ipaddress里面的ip绑定到eth0 virtual_router_id 51 //实例的id,一个这个配置文件能够有20多个实例,备的要跟主的同样, priority 150 //竞选时候的优先级。备的要小50,备的不同其他跟主的同样 advert_int 1 //心跳的间隔 authentication { //keepalived之间经过密码通讯,keepalived对之间的密码要同样。 auth_type PASS auth_pass 1111 } virtual_ipaddress {//vip功能,keepalived的ip 192.168.200.17/24 //子网掩码是24位 } }
给keepalived配置ip:sql
2边是一个实例,只是主备之分。服务器
配合nginx服务:app
Nginx默认监听80端口,ip是全部的IP。对外提供服务不是网卡的ip是lkeepalived的ip。先把nginx代理调整好再配置keepalived。ide
keepalived之间的心跳,应该单独拉一条线或者用串口直接通讯,不容易出现互相找不着对方。代理
global_defs { notification_email { 49000448-@qq.com } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 192.168.200.1 smtp_connect_timeout 30 router_id LVS_01 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.17/24 } } vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 52 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.18/24 } } worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; upstream static_pools { server 10.0.0.9:80 weight=5 max_fails=10 fail_timeout=10s; } upstream dynamic_pools { server 10.0.0.10:80 weight=5; } server { listen 80; server_name www.etiantian.org; location / { root html; index index.html index.htm; proxy_pass http://dynamic_pools; include proxy.conf; } location ~ .*.(gif|jpg|jpeg|png|bmp|swf|css|js)$ { proxy_pass http://static_pools; include proxy.conf; } } }