美文网首页
【easyctl】使用easyctl对多主机探活(ping+te

【easyctl】使用easyctl对多主机探活(ping+te

作者: 微凉哇 | 来源:发表于2021-12-29 16:06 被阅读0次

    背景说明

    最近有个场景:

    获取某地址段内存活的linux主机列表(ip列表形式)

    实现方式:

    • 对地址段内的主机发送icmp包(ping)
    • 与目标主机ssh服务建立连接(telnet): 针对禁ping主机或探测ip地址非linux系统主机,因为有可能是其他服务用的vip

    优势:秒级批量探活

    注意: 可能存在一定误差,以实际情况为准。

    使用方式

    安装easyctl

    • 编译安装最新版
    git clone https://github.com/weiliang-ms/easyctl.git
    cd easyctl
    go build -ldflags "-w -s" -o /usr/local/bin/easyctl
    

    建议采用以下方式安装:

    • 下载编译好的文件

    easyctl-v0.7.12-alpha

    chmod +x easyctl
    mv easyctl /usr/local/bin
    

    主机探活

    1. 生成默认配置文件
    $ easyctl exec ping
    INFO[0000] 生成配置文件样例, 请携带 -c 参数重新执行 -> config.yaml
    
    1. 修改配置文件

    config.yaml默认配置解析:

    ping检测192.168.1.1-192.168.1.255192.168.2.1-192.168.2.255地址段内主机,如果主机能ping通,将ip地址入server-list.txt文件

    ping:
      - address: 192.168.1
        start: 1
        end: 255
        #port: 22
      - address: 192.168.2
        start: 1
        end: 255
        #port: 22
    
    1. 执行探活指令

    添加--debug可以输出详细内容。

    $ easyctl exec ping -c config.yaml --debug
    

    配置项说明

    ping:
      - address: 192.168.1
        start: 1
        end: 255
        #port: 22
      - address: 192.168.2
        start: 1
        end: 255
        #port: 22
    
    • ping: 数组类型列表
      • address: 192.168.1 主机地址段,格式为ip地址前三位
      • start: address地址段起始ipip地址第四位值)
      • end: address地址段结束ipip地址第四位值)
      • port: 对ip地址执行额外的端口探测(适用于禁ping或排除虚拟IP地址等场景;建议探测ssh端口)

    配置样例

    1. 探测192.168.1.1-192.168.1.255内主机可达性,并探测22端口可达性
    ping:
      - address: 192.168.1
        start: 1
        end: 255
        port: 22
    
    1. 探测192.168.1.1-192.168.1.255192.168.2.1-192.168.2.255内主机可达性,不探测端口可达性
    ping:
      - address: 192.168.1
        start: 1
        end: 255
        #port: 22
      - address: 192.168.2
        start: 1
        end: 255
        #port: 22
    

    执行逻辑

    ping.drawio.png

    相关文章

      网友评论

          本文标题:【easyctl】使用easyctl对多主机探活(ping+te

          本文链接:https://www.haomeiwen.com/subject/icgvqrtx.html