部署前准备:

  1.至少4台主机:两个Director(HA1,HA2),两个Real Server(RS1,RS2)

  2.Director之间时间必须同步,且关闭各主机的防火墙和Selinux

  3.出于实验目的,各主机均使用一个网卡(桥接模式),且使用的是CentOS 7主机

部署流程:

  1.分别在Director上执行:

yum -y install ipvsadm keepalived

  2.分别在Real Server上执行:并自行创建Web服务测试页

yum -y install httpd
bash lvs.sh #lvs-dr模型自定义脚本

  3.自行测试RS1和RS2的Web服务能否顺利运行,没问题的话配置HA1的keepalived:

 ! Configuration File for keepalived
/*全局配置段*/
global_defs {
notification_email {
root@localhost //邮件接收方地址
}
notification_email_from admin@ka.com //邮件发送方地址
smtp_server 127.0.0.1 //邮件服务器地址
smtp_connect_timeout 30 //邮件服务器连接超时时长
router_id node1 //当前路由的ID
vrrp_mcast_group4 224.0.0.18 //默认组播域地址
} /*虚拟路由(实例)配置段*/
vrrp_instance VI_1 {
state MASTER //主备状态
interface eno16777736 //实例使用的接口名称
virtual_router_id 51 //虚拟实例的路由ID,使用默认51就好
priority 100 //优先级
advert_int 1 //广播通告时间间隔,默认为1s/次
authentication {
auth_type PASS //认证方式:简单字符串认证,推荐使用
auth_pass 1111 //认证密码:可自行定义
}
virtual_ipaddress { //虚拟地址,可定义多个
192.168.1.100 dev enol6777736 label eno16777736:0
}
} /*LVS配置段*/
virtual_server 192.168.1.100 80 {
delay_loop 6 //服务轮询时间间隔
lb_algo rr //定义调度算法
lb_kind DR //LVS集群类型
nat_mask 255.255.255.0
persistence_timeout 50 //持久连接时长,测试时最好删除或注释此项,否则会一直调度某RS,影响实验效果
protocol TCP //keepalived仅支持TCP协议
sorry_server 192.168.1.100 80 //错误提示页面 real_server 192.168.1.103 80 { //RS1配置
weight 1 //权重
HTTP_GET { //健康状态检测方法
url {
path /
status_code 200 //基于状态码检测
}
connect_timeout 3 //连接超时时长
nb_get_retry 3 //超时后重试连接次数
delay_before_retry 3 //超时3s后再次请求
}
}
real_server 192.168.1.104 80 { //RS2配置同RS1
weight 2
HTTP_GET {
url {
path /
status_code
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}

  4.将HA1的配置文件发给HA2,做适当修改,即可开启keepalived进行测试,效果如下:

KeepAlived主备模型高可用LVS的更多相关文章

  1. mysql主备切换[高可用]

    到这一步的时候, 是主备部署已经处理好, 请关注:mysql主备部署[高可用] 这次使用的是keepalived-1.2.22.tar.gz版, 官网地址:keeplived官网 笼统知识请自行查询百 ...

  2. mysql主备部署[高可用]

    配置方案 master:192.168.99.61 service-id:61 slave:192.168.99.62 service-id:62同步账号:sync   同步密码:sync 主:192 ...

  3. KeepAlived主备/主主模型高可用Nginx

    部署准备: 两台CentOS 7主机HA1和HA2 CentOS 7 基于rpm包安装Nginx: 由于Base源中没有Nginx,所以要安装EPEL源,命令如下: wget http://dl.fe ...

  4. Nginx+Keepalived 主备高可用 安装与配置

    环境说明:操作系统:CentOS6.7 x86_64Nginx版本:nginx-1.9.7Keepalived版本:keepalived-1.2.24 主nginx + Keepalived :10. ...

  5. Mysql双主互备+keeplived高可用架构介绍

    一.Mysql双主互备+keeplived高可用架构介绍 Mysql主从复制架构可以在很大程度保证Mysql的高可用,在一主多从的架构中还可以利用读写分离将读操作分配到从库中,减轻主库压力.但是在这种 ...

  6. Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)

    原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...

  7. Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)-转帖篇

    原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...

  8. Mysql双主互备+keeplived高可用架构(部分)

    一.Mysql双主互备+keeplived高可用架构介绍 Mysql主从复制架构可以在很大程度保证Mysql的高可用,在一主多从的架构中还可以利用读写分离将读操作分配到从库中,减轻主库压力.但是在这种 ...

  9. [转帖]【MySQL+keepalived】用keepalived实现MySQL主主模式的高可用

    [MySQL+keepalived]用keepalived实现MySQL主主模式的高可用 https://www.jianshu.com/p/8694d07595bc 一.实验说明 MySQL主主模式 ...

随机推荐

  1. React Native

    可以基于 React Native使用 JavaScript 编写应用逻辑,UI 则可以保持全是原生的.这样的话就没有必要就 HTML5 的 UI 做出常见的妥协: React 引入了一种与众不同的. ...

  2. Shell中取得文件的最后修改时间

    stat -c %y file 取得修改日期 -,-,-

  3. source tree 推送错误解决

    fatal: The remote end hung up unexpectedly 出现这个问题是因为文件过大 解决办法: 打开git bash 输入git config --global http ...

  4. sencha touch+phonegap+node.js打包

    这讲我们来讲解下如何使用phonegapa创建项目环境并通过她们将sencha touch打包成app,这里我们只讲解打包android的apk,打包ios的过程有点类似,但是需要在mac环境下,最后 ...

  5. 线程Thread

    一.线程: 程序:保存在物理介质(光盘,软盘,硬盘)当中的代码片段 进程:一旦程序运行起来,就变成了操作系统当中的一个进程 线程:程序当中一条独立执行的线索 二.线程的五大状态 新生    就绪 运行 ...

  6. PSP个人项目耗时记录

    估计这个任务需要多少时间: 计划 估计用时 估计这个任务需要多少时间 500min 开发 450min 需求分析 120min 生成设计文档 20min 设计复审 30miin 代码规范 10min ...

  7. Linux:添加永久路由

    没有以下文件时,可创建 vim /etc/sysconfig/network-scripts/route-eth0添加如下信息:192.168.142.100/32 via 192.168.142.1 ...

  8. Nginx配置文件(nginx.conf)配置详解(2)

    Nginx的配置文件nginx.conf配置详解如下: user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目 ...

  9. Linux常用性能调优工具索引

    root@ubuntu:~# dstat----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--usr sys i ...

  10. assert的用法

    assert用来调试时,判断一个语句是否为真. assert是宏,而不是函数.在C的assert.h 头文件中. assert的作用是先计算表达式 expression ,如果其值为假(即为0),那么 ...