系统简介:
指令系统是在基于jobagent已经实现远程脚本调用的情况下提供的后台系统,jobagent主要使用了ansible,通过yml配置的方式完成了脚本的远程调用和结果采集,不过并不能完全解决中间件和运维团队需要上机器操作的需求,所以提供了指令系统,在提升了脚本可靠性的同时,回收了机器权限,让原本需要上机器的操作变为可以通过配置脚本的方式在后台执行,同时增加了灰度功能,避免有问题的脚本导致大范围故障
功能介绍:
jobagent的执行逻辑是基于工程+任务的方式,即先有一个工程,每个工程有固定的git地址,在工程下创建了任务,每个任务有关联的脚本和文件,在执行的过程中先去git上拉取该任务关联的脚本和文件,随后按照传入的路径寻找yml和脚本,并完成执行操作。不过想要在机器上远程执行脚本,需要完成以下流程:1.将脚本合到master;2.将master的脚本更新到任务的配置中。这个会导致我原本想要测试的脚本,被更新到正式配置中,如果该任务在正式环境有自动触发执行且脚本有问题,会导致预期之外的大范围故障