zoukankan      html  css  js  c++  java
  • KeepAlived主备模型高可用LVS

    部署前准备:

      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:

     1 ! Configuration File for keepalived
     2 /*全局配置段*/
     3 global_defs {
     4    notification_email {
     5       root@localhost      //邮件接收方地址
     6    }
     7    notification_email_from admin@ka.com //邮件发送方地址
     8    smtp_server 127.0.0.1  //邮件服务器地址
     9    smtp_connect_timeout 30  //邮件服务器连接超时时长
    10    router_id node1  //当前路由的ID
    11    vrrp_mcast_group4 224.0.0.18 //默认组播域地址
    12 }
    13 
    14 /*虚拟路由(实例)配置段*/
    15 vrrp_instance VI_1 {
    16     state MASTER  //主备状态
    17     interface eno16777736  //实例使用的接口名称
    18     virtual_router_id 51  //虚拟实例的路由ID,使用默认51就好
    19     priority 100  //优先级
    20     advert_int 1  //广播通告时间间隔,默认为1s/次
    21     authentication {
    22         auth_type PASS  //认证方式:简单字符串认证,推荐使用
    23         auth_pass 1111  //认证密码:可自行定义
    24     }
    25     virtual_ipaddress {  //虚拟地址,可定义多个
    26         192.168.1.100 dev enol6777736 label eno16777736:0
    27     }
    28 }
    29 
    30 /*LVS配置段*/
    31 virtual_server 192.168.1.100 80 {
    32     delay_loop 6  //服务轮询时间间隔
    33     lb_algo rr  //定义调度算法
    34     lb_kind DR //LVS集群类型
    35     nat_mask 255.255.255.0
    36     persistence_timeout 50 //持久连接时长,测试时最好删除或注释此项,否则会一直调度某RS,影响实验效果
    37     protocol TCP  //keepalived仅支持TCP协议
    38     sorry_server 192.168.1.100 80  //错误提示页面
    39 
    40     real_server 192.168.1.103 80 {  //RS1配置
    41         weight 1  //权重
    42         HTTP_GET {  //健康状态检测方法
    43             url {
    44               path /
    45               status_code 200  //基于状态码检测
    46             }
    47             connect_timeout 3  //连接超时时长
    48             nb_get_retry 3  //超时后重试连接次数
    49             delay_before_retry 3 //超时3s后再次请求
    50         }
    51     }
    52    real_server 192.168.1.104 80 { //RS2配置同RS1
    53         weight 2
    54         HTTP_GET {
    55             url {
    56               path /
    57              status_code
    58             }
    59             connect_timeout 3
    60             nb_get_retry 3
    61             delay_before_retry 3
    62         }
    63     }   
    64 }
    View Code

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

  • 相关阅读:
    ExtJs系列教程
    linux 服务器时间 timedatectl命令时间时区操作详解
    aws CloudWatch Events
    AWS Shield
    aws ssm指令
    failed to set bridge addr: "cni0" already has an IP address different from 10.244.0.1/24
    AWS Systems Manager
    Amazon Inspector
    AWS 安全培训
    Amazon Inspector
  • 原文地址:https://www.cnblogs.com/trymybesttoimp/p/6217749.html
Copyright © 2011-2022 走看看