OpenAPI

OpenAPI组件为Elves-Center的唯一入口,对内采用RabbitMQ的方式与各组件进行交互,对外采用RESTful方式交互。OpenAPI中设置了大量的开关以达到组件的拔插性

编译

cd elves-openapi
chmod +x ./control
./control build                                                 #二进制版本可以忽略编译过程

配置

mv conf/conf.properties.example conf/conf.properties            #复制配置文件
vim conf/conf.properties                                        #编辑配置文件

修改配置

./conf/conf.properties

#api server config
server.port=80                                                    #提供服务的端口

#Zookeeper Config
zookeeper.host=10.0.101.1:2181,10.0.101.2:2181,10.0.101.3:2181    #Zookeeper地址
zookeeper.outTime=10000                                           #Zookeeper超时时间
zookeeper.root=/elves                                             #Zookeeper ROOT地址

#MQ Basic Config
mq.ip       = 10.0.101.100                                          #RabbitMQ IP
mq.port     = 5672                                                  #RabbitMQ 端口
mq.user     = admin                                                 #RABBITMQ 账号
mq.password = 1234567890                                            #RABBITMQ 密码                             
mq.exchange = elves                                                 #Exchange 名称

#Auth Config                
auth.mode = supervisor              #权限模式,可选择supervisor或simple模式
auth.id   = 1                       #simple模式的auth_id
auth.key  = 123456                  #simple模式的auth_key

#Elves-Center Module Config
cron.enabled  = true                 #cron组件开关,关闭后,OpenAPI不再提供计划任务相关接口
queue.enabled = true                 #queue组件开关,关闭后,OpenAPI不再提供队列任务相关接口

开启simple模式后无法使用supervisor的权限认证且simple模式提供的authid与authkey可以管理并执行所有Elves的Agents下的所有Apps

脚本参数

./control

build|pack|start|stop|restart|status|version

build   : 运行后将执行mvn pakcge , 最终构建成至 bin
pack    : 将本模块打包(不包含配置文件与日志文件)
start   : 以nohup形式启动elves-{module}
stop    : 关闭elves-{module}
restart : 执行 stop & start
status  : 查看elves-{module}的运行状态
version : 查看当前模块的版本

服务使用列表

组件 服务 类型 注释
scheduler syncJob rpc.call 发送同步任务
cron createCron rpc.call 添加Cron计划任务
startCron rpc.call 开启Cron计划任务
stopCron rpc.call 停止Cron计划任务
deleteCron rpc.call 删除Cron计划任务
cronDetail rpc.call 计划任务详情
cronList rpc.call 计划任务列表信息
queue createQueue rpc.call 创建队列
addTask rpc.call 添加任务项
commitQueue rpc.call 提交队列
stopQueue rpc.call 停止队列
queueResult rpc.call 获取队列执行结果
supervisor appAuthInfo rpc.call 获取实时agent在线数据
getAuthKey rpc.call 通过authId获取authKey
validateAuth rpc.call 权限验证(authId是否有该IP运行app的权限)
appInfo rpc.call 获取authId管理的app数据

服务API

详见API

results matching ""

    No results matching ""