代码拉取完成,页面将自动刷新
本模块是为监视和控制nginx的upstream配置而写的nginx模块。
本模块实现的功能可以让你随时查看nginx的upstream配置还能够对upstream服务器上的请求进行实时计数,同时还能在不退出nginx服务,不编辑nginx配置文件的情况下在线更改upstream配置。
安装模块依赖项:lua5.2 和 lua-cjson
lua5.2
lua-cjson
用下面的./configure配置项编译nginx(版本:nginx-1.9.8):
--add-module=path/to/src/directory
--with-cc-opt="-I /usr/include/lua5.2"
--with-ld-opt="-l lua5.2 -L /usr/lib/i386-linux-gnu"
将 html 目录下的所有东西拷贝到 nginx 的 html 目录。
将类似下面的内容添加到 nginx.conf:
location ~^/upstreams {
upstreams_admin on;
auth_basic "valid user";
auth_basic_user_file /usr/local/nginx/conf/oschina_pw;
ui_lua_file /usr/local/nginx/html/ui.lua;
timeout 3;
}
通过浏览器访问 http://yourdomian/upstreams
开启或关闭upstream的监控功能,开启设置此值为on,关闭设置此值为off
举例:upstreams_admin on
example:upstreams_admin on
请参考 nginx 对应指令说明
请参考 nginx 对应指令说明
UI脚本文件路径(lua脚本文件)
如果未设置,默认为path/to/nginx/html/ui.lua
举例:ui_lua_file /usr/local/nginx/html/myui.lua
更新upstream配置的超时时间(单位:秒)。如果未设置,默认为3秒
举例:timeout 5
GET /upstreams
通过web客户访问
(lua) write_html(data)
在nginx服务端回调
(AJAX) POST /upstreams_update
请求参数:
parameter:
{
method:'update',
backend:?,
ip_hash:?,
keepalive:?
}
响应格式:
response:
{
code:?,
message:'?'
}
说明:
explaining:
响应为json格式
method: 指明请求的类型,值固定为字符串“update”,表示更新upstream 后端的ip_hash配置和keepalive配置
backend: upstream 后端索引(从0开始),该索引与nginx配置文件中的后端从上到下顺序对应
ip_hash: 新的 ip_hash 值,只能取0或1
keepalive: 新的 keepalive 值,0或正整数,0表示关闭 keepalive,大于0表示 keepalive cache 数量(请参考aginx对应指令)
code:返回码
0 更新upstream配置成功
1 服务器处理超时
2 更新出错
3 服务器忙
4 请求参数错误
5 未知错误
message:与返回码对应的消息文本
(AJAX) POST /upstreams_edit
请求参数:
parameter:
{
method:'edit',
backend:?,
server:?,
weight:?,
backup:?,
max_fails:?,
fail_timeout:?
}
响应格式:
response:
{
code:?,
message:'?'
}
说明:
explaining:
响应为json格式
method:指明请求的类型,值固定为字符串“edit”,表示更新upstream 后端某个server的配置
backend:upstream后端索引(从0开始),该索引与nginx配置文件中的后端从上到下顺序对应
server:server索引(从0开始),该索引与nginx配置文件中的某一后端的服务器从上到下顺序对应
weight:请参考aginx对应指令说明
backup:表示是否将服务器设为备份,只能取0或1。0为不备份,1为备份
max_fails:请参考aginx对应指令说明
fail_timeout:请参考aginx对应指令说明
code:返回码
0 更新upstream配置成功
1 服务器处理超时
2 更新出错
3 服务器忙
4 请求参数错误
5 未知错误
message:与返回码对应的消息文本
(AJAX) POST /upstreams_enable
请求参数:
parameter:
{
method:'enable',
backend:?,
server:?,
down:?,
}
响应格式:
response:
{
code:?,
message:'?'
}
说明:
explaining:
响应为json格式
method:指明请求的类型,值固定为字符串“enable”,表示启动或停止upstream某个server
backend:upstream后端索引(从0开始),该索引与nginx配置文件中的后端从上到下顺序对应
server:server索引(从0开始),该索引与nginx配置文件中的某一后端的服务器从上到下顺序对应
down:表示是否停止服务器,只能取0或1。0为启动,1为停止
code:返回码
0 更新upstream配置成功
1 服务器处理超时
2 更新出错
3 服务器忙
4 请求参数错误
5 未知错误
message:与返回码对应的消息文本
你可以利用API定制属于自己的响应界面,方法如下:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。