运维系统的脚本管理

这是学习笔记的第 1939 篇文章


  

维系统中的脚本管理

脚本管理运维系统的基础功能,可以把原本散乱的脚本做到标准化和统一的管理。

先说一些边界,脚本管理中的脚本是不能直接执行的,运维系统中的所有的任务执行粒度应该是脚本。

从功能划分上,脚本管理大体有下面的几个方面:

  1)脚本内容管理:支持Python,shell,Java,SQL等

  2)执行方式:本地和远程(服务器端执行脚本,客户端,中控端)

  3)参数管理:脚本配置支持多个参数,对参数个数和参数格式需要全面支持。

  4)脚本需要一个基本的介绍和用法说明

    5)需要制定脚本的规范和标准,对命名规范和脚本内容做一个基本的审核

    6)设定脚本域的概念,即脚本是全局可用,还是只限于特定的需求可用

  7)脚本编辑器:ACE Editor, Monca都是不错的选择,可以根据自己的喜好进行选择了

初步实现脚本的提交,实现脚本查看功能之后,我觉得脚本审核应该是脚本管理中的一个必经流程。如果没有审核的机制,那么脚本的规范性和质量就难以衡量和管理。

这是一个脚本信息的列表。 

640?wx_fmt=jpeg

数据库层面的就是脚本的提交,基本通过前端的输入,提供了脚本内容,脚本的状态就是“待审核

在此审核的意义除了做权限和质量把控之外,还有一个重要的作用就是做脚本路径的规划。

脚本可以指定一个中控服务器作为脚本的集中管理中心,比如规划路径是/usr/local/DBA_SCRIPTS就可以把已经通过审核的脚本统一存放在这个路径下。

对于脚本路径的规划参考如下:

 640?wx_fmt=png


也就是说在提交脚本的时候不需要声明脚本的路径,这个工作是在审核的时候来做的我们可以指定团队的一个同学来作为脚本管理员,完成这个艰巨的任务。

脚本的审核流程和调用流程如下: 

640?wx_fmt=png


这里需要注意的是我们在数据库中会维护这个数据结构,而且也会存储对应的脚本内容,同时在文件系统中也会存在对应的文件,那么我们所做的变更就会是数据库层面和文件层面的映射 

脚本审核阶段,脚本审核主要是完成两件事情,一个是脚本的路径规划,另外一个是脚本在中控服务器上生成整个过程是自动完成的。

我们做了一个初版的脚本提示,如果创建了一个脚本会发送相应的邮件,这样一来这就是一个闭环,目标是把整个管理融入为一个流程化的方式。 

640?wx_fmt=jpeg



而在调用脚本的时候,可以把它当做一个对象来管理,在数据库中对每个脚本都会定义一个编码code,我们根据编码来进行脚本的调用。


640?


没有更多推荐了,返回首页