• KEEPALIVED 检测RS原理


    keepalived管理的的ipvs功能支持对后端节点真实服务器的健康检查

    一般常用的方式包括tcp_check 和http_get更准确)

    tcp_check 原理就是对真实服务器进行ip+端口的检测实现的(我们可以用wget nmap telnet实现) 如果相应的端口开启,则加入lvs的转发表 (ipvsadm -a -t 192.168.1.6:80 -r 192.168.1.12:80 -g),否则执行剔除节点的操作

    (ipvsadm -d -t 192.168.1.6:80 -r 192.168.1.12:80 -g)

    配置方法如下

    real_server 192.168.1.11 80 {

            weight 1

                  TCP_CHECK {

                connect_timeout 3

                nb_get_retry 3

                delay_before_retry 3

                connect_port 80

            }

    }

    另外一种检测后端节点的方式是通过http_get 或者ssl_get 的方式 对访问的内容进行md5值的校验 比对 如果比对成功 则加入lvs转发表 操作同上 如果校验失败 则执行剔除节点的操作。

    配置方法如下

    首先要定义好检查的url 并且获得相应页面的MD5dum值

    [root@web1 bbs]# md5sum /application/nginx/html/bbs/fei.jpg   

    ba45c8f60456a672e003a875e469d0eb  /application/nginx/html/bbs/fei.jpg

    上面标红的就是获得的MD5sum值 稍后要在keepalived的配置文件里面用到

    配置方法

    real_server 192.168.1.12 80 {

            weight 1

            HTTP_GET {

                url {

                  path /fei.jpg

                  digest ba45c8f60456a672e003a875e469d0eb

                }

           

                connect_timeout 3

                nb_get_retry 3

                delay_before_retry 3

            }

        }

    注意bbs是我的站点的根目录 也是默认用ip地址192.168.1.12访问的根目录位置

    所以我们定义的url是 /fei.jpg,可以同时定义多个url 只有所有的url检测成功之后才能把节点加入ipvs的转发表里面

    分享就到这里了 如果有问题欢迎探讨~~~

  • 相关阅读:
    命令返回值
    PowerShell脚本传递参数
    HTTP 错误 404.3
    xcopy拷贝判断是否成功 robocopy排除子目录
    WinRAR压缩
    批处理命令随笔
    Android Studio3.0中dependencies依赖由compile变为implementation的区别
    compileSdkVersion, minSdkVersion 和 targetSdkVersion详解
    Android Studio工程Gradle编译报错
    rsync应用实例
  • 原文地址:https://www.cnblogs.com/dragonflyer/p/6261779.html
Copyright © 2020-2023  润新知