Yum安装更简单。安装并启动keepalived,表示安装成功。有3个进程。

etc\keepalived\keepalived.conf:

备的keepalived配置文件:

! 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的配置文件:

! 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:

2边是一个实例,只是主备之分。

配合nginx服务:

Nginx默认监听80端口,ip是所有的IP。对外提供服务不是网卡的ip是lkeepalived的ip。先把nginx代理调整好再配置keepalived。

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;
}
}
}

最新文章

  1. ASP.NET Core WebListener 服务器
  2. 【java报错】Could not instantiate listener
  3. 转】Mahout学习路线图
  4. vector 之 find 重载
  5. 在Linux使用mingw32来编写win32程序
  6. 一周学会Mootools 1.4中文教程:(2)函数
  7. UnitOfWork应用
  8. (工具)source insight高速增加时间代码
  9. vue vuex 提交 this.$store.commit({type: 'setSelectPro', selectPro: this.productId});
  10. HTML5之dir属性
  11. 【CJOJ P1365】最短路
  12. js浮点数的加减乘除
  13. Windows上为Apache配置HTTPS
  14. mybatis generator生成文件大小写问题
  15. 非递归遍历N-ary树Java实现
  16. 简单易懂的程序语言入门小册子(3):基于文本替换的解释器,let表达式,布尔类型,if表达式
  17. Windows10下手工强制清理删掉安装版的JRE8导致java.exe无法运行的解决办法
  18. 浅谈table、form 标签
  19. Maven学习(三)maven原理概念详述
  20. MDK972-EK开发板裸调试设置和裸机程序烧写(转)

热门文章

  1. 【BZOJ】3296: [USACO2011 Open] Learning Languages(tarjan)
  2. Cross compile perl
  3. Android基站定位
  4. base 64
  5. hdu 2167(状压dp)
  6. SurvivalShooter学习笔记(五.敌人生命)
  7. 3D游戏引擎〇 開始
  8. Android 7.1.1 锁屏界面启动流程
  9. iOS-layoutSubvies和drawRect何时调用
  10. 做好准备,让你的短信应用迎接Android 4.4(KitKat)