ActivedRouter--golang实现的反向代理、监控
发布时间:2020-12-16 19:17:32 所属栏目:大数据 来源:网络整理
导读:基于golang 实现了简单的http反向代理服务器,监控服务器,客户端程序,和一个基于web的监控页面。 通过ActivedRouter 可实现自动摘除宕机服务器,的真机负载。 也可以实现IP轮训负载。 项目地址: github 简单介绍 一、通过ActivedRouter可以实现什么功能? 1、
基于golang 实现了简单的http反向代理服务器,监控服务器,客户端程序,和一个基于web的监控页面。 通过ActivedRouter 可实现自动摘除宕机服务器,的真机负载。 也可以实现IP轮训负载。 项目地址: github 简单介绍一、通过ActivedRouter可以实现什么功能?1、可以集群服务器的监控,通过提供的web Dashboard可以时刻监控每一台服务器的负载、内存、网络、 磁盘等信息。 2、反向代理服务器功能,例如Nginx的功能,可以针对不同的域名对不同的业务服务器集群进行反向代理。 3、Server & Client 模式组合下,可以用作服务器监控使用,并且可以设置监控报警,Server端可以选择性 开启监控Dashboard,用于直观的web界面监控。 4、服务器监控报警,通过配置每一台服务器的监控报警阀值,来触发不同的脚本,从而达到服务器报警功能,后期支持:短信报警、邮件报警等等。 5、实现基于真实负载的反向代理和请求路由。 支持 Random 和 Alived 模式,分别代表随机转发和基于负载转发。 6、快速配置反向代理服务,省去配置nginx反向代理的麻烦步骤,一般流量下的负载足以应付。 二、快速入门2.1、编译安装在系统下运行如下脚本,会在当前目录生成ActivedRouter二进制程序,然后我们配置相应的配置文件,并且运行二进制程序即可启动服务。 linux64下 boot_linux64.sh darwin64下 boot_darwin64.sh linux32下 boot_linux32.sh 四、工作模式和配置文件4.1、http/https反向代理模式(Reserve Proxy),类似nginx的反向代理功能。
{ "http_switch":"on",//http开关 on off "proxy_addr":"127.0.0.1:80",//http监听端口 "proxy_method":"random",//proxy方法 random 混合模式下可支持alived方法 "https_switch":"off",//是否开启https on开启https 支持 "https_crt":"a.crt",//https证书 "https_key":"a.key",//https key "https_proxy_addr":"127.0.0.1:443",//https监听地址 "reserve_proxy":[ { "domain":"1.12xue.com","clients":[ { "host":"12xuetest.com","port":"80" } ] } ] } 4.2、server和client模式可以配合完全服务器监控,提供web仪表盘。客户端运行: ActivedRouter --runmode=server { "domain":"wwww.xxx.com",//客户端服务器的域名可空 "cluster":"UIA集群",//服务器集群的标志 可自定义 "router_list":[ //要连接的远程路由服务器列表 "127.0.0.1:8888","172.16.200.202:9999" ] } 服务器运行: ActivedRouter --runmode=client #服务器模式下的配置选项 #路由服务器监听的地址 host=127.0.0.1 #服务器监听的端口号 port=8888 #服务模式 moniter & router srvmode=router #http 提供http路由服务的ip,端口。 httphost=127.0.0.1 httpport=8080 4.3、服务器监控模式触发脚本当监控服务器下,路由服务器开启srvmode=moniter之后才会触发 { "script":[ { "host":"127.0.0.1","hookscript":[ { "eventtarget":"disk","attr":"used","gt":"15","callback":"ls" },{ "eventtarget":"load","attr":"load","gt":"1.5",{ "eventtarget":"mem","gt":"75","callback":"netstat -ant" } ] } ] } 运行模式服务器模式和客户端模式
提供api服务器监控功能可以实时返回各服务器状态
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |