美文网首页程序猿的进阶屋
蓝鲸作业平台:搞定与脚本相关的一切

蓝鲸作业平台:搞定与脚本相关的一切

作者: 广州嘉为科技 | 来源:发表于2018-09-12 10:17 被阅读426次

    目录

    1. 蓝鲸简介
    2. 蓝鲸作业平台能干嘛?
    3. Just so so怎敢称强大
    4. 总结一下

    蓝鲸简介

    蓝鲸智云,简称蓝鲸,是腾讯游戏运营部“腾讯智营”下的子品牌。它是一套基于 PaaS 的企业研发运营一体化技术解决方案,提供了一个完整的研发、运维、运营的PaaS技术平台。平台提供了完善的前后台开发框架、调度引擎、公共组件等模块,帮助业务的产品和技术人员快速构建低成本、免运维的支撑工具和运营系统;是腾讯游戏运营部沉淀多年的技术运营支撑体系,承担着数百款业务线上运营的使命。

    对于蓝鲸不太了解和熟悉的同学可以移步这里:
    http://bk.tencent.com/index/

    还有这里:
    http://docs.bk.tencent.com/product_white_paper/introduction/

    请相信,你打开的不是两个链接,而是运维的新世界和新天地。

    蓝鲸作业平台能干嘛?

    蓝鲸作业平台的功能非常的强大。

    基本上可以理解为只要是命令行或者脚本能搞定的事情,蓝鲸作业平台都能干。

    01 快速执行脚本

    Windows平台上的单个的cmd命令、powershell命令、bat脚本、powershell脚本的执行?
    完全没问题。
    蓝鲸作业平台支持针对Windows平台批量执行上述脚本和命令。

    Linux平台上单个的bash命令、shell脚本的执行?
    完全没问题。
    蓝鲸作业平台支持针对Linux平台批量执行上述脚本和命令。

    AIX平台的ksh命令和脚本执行?
    完全没问题。
    蓝鲸作业平台支持针对AIX 6和7系统批量执行上述脚本和命令。

    那么,python和perl这类解释性编程语言写的脚本呢?
    依然完全没问题,蓝鲸作业平台支持这两种类型的脚本。

    那如果需要在部署在linux上的DB服务器执行SQL脚本呢?
    依然没有问题。蓝鲸蓝鲸作业平台支持SQL批量执行。

    蓝鲸作业平台支持多种脚本的批量执行,可通过手动编写、从已有的脚本克隆、从本地上传,三种方式导入脚本并批量执行。

    02 快速文件分发

    如果不是执行脚本或者命令,而是需要向单个服务器或者批量服务器分发文件呢?
    当然没问题。

    蓝鲸作业平台支持快速分发文件:支持本地上传和服务器上选择两种方式,除了一对多,还可以多对多、多对一形式进行文件分发。

    03 常用作业任务编排、保存和执行

    蓝鲸作业平台还支持将多个脚本执行或文件分发的节点结合在一个流程步骤内,形成一个新建的作业任务。

    可以查看已经保存的作业任务,可进行“执行、克隆、编辑、定时、删除”操作。

    对已创建的作业任务进行定时启停,可修改和删除。定时任务支持秒级。

    除此之外,作业平台提供了作业总览视图,通过总览视图能够直观明了的查看当前IT环境中业务主机数量、常用作业数、近30天成功/失败的任务数、定时任务的执行情况等。IT运维人员能够做到对于基础作业情况一目了然。

    04 脚本仓库管理

    除了通过自动化任务执行脚本、分发文件、执行SQL语句之外,蓝鲸作业平台还能作为企业统一的脚本仓库存在。想一想你上次气急败坏的为了找两个礼拜前写的一个非常复杂的脚本花了多少时间,你就知道这个功能有多贴心了。

    支持在平台上直接新建、编辑和删除脚本;还支持从现有脚本克隆以及从本地上传脚本。

    SQL脚本也是如此。

    05 执行历史记录

    所有类型的作业执行均有历史记录,记录着详细的作业信息。方便事后核查和审计。

    另外,点击每个作业任务的“查看详情”,能够看到这条任务的具体执行结果情况。

    点击“执行详情”按钮,可以看到完整的在每个字对象上的执行结果和执行日志,非常清晰。

    06 完善的权限和安全管理

    首先,每个用户对于哪些应用和该应用下的哪些对象有操作权限,可以通过蓝鲸配置平台统一定义。而配置平台与作业平台是原生集成的,两者的权限共享。对于没有权限的应用或者应用下的对象,用户没有权限操作。

    其次,通过在服务器上或者数据库上为不同的蓝鲸平台用户创建不同权限的帐号,并把此帐号登记到作业平台,然后将此帐号分配给蓝鲸平台的用户。此后,蓝鲸平台用户执行任务的时候,只能执行分配的帐号具有的权限的相应任务。此功能目前只有企业版支持。

    添加服务器本地帐号,并把它授权给蓝鲸平台帐号。

    添加SQL本地帐号,并把它授权给蓝鲸平台帐号。

    07 支持通知管理

    针对作业执行成功、失败、等待执行等三类场景进行通知,确保完成整个作业执行流程。此功能目前只有企业版支持。

    08 支持全局变量配置

    支持全局变量的配置,支持全局IP设定、云参、上下文传参等三种全局变量设置方式。

    全局IP设定

    云参

    上下文传参

    09 单Agent执行所有操作

    事实上,作业平台在下层需要依赖蓝鲸管控平台提供的管道功能,包括:命令、文件和数据三个管道。尽管有三个管道,但服务器上只需要安装一个Agent。这个Agent也是管控平台的核心优势所在。一个Agent搞定所有作业操作。

    Just so so怎敢称强大

    通过第2节的介绍,可以看到蓝鲸作业平台的功能非常强。但是如果仅仅是这些功能,最多算强,还不能算强大。

    01 作业平台原生与蓝鲸CMDB集成

    作业平台原生与蓝鲸CMDB集成,这意味着什么呢?

    这意味着:

    1、我们执行任何任务的时候,可以直接从蓝鲸CMDB中拉取对象、属性和关联关系等配置数据,而不需要再次手动录入。除非这个业务的配置数据你还没录入到CMDB中。

    2、这一点更为重要,意味着我们执行作业任务后,所有的配置变更都能同步到CMDB中去,确保配置数据的统一和完整

    02 作业平台开放API,作业任务可被其他系统调度和驱动

    作业平台还开放了 API 接口,以原子节点的形态开放提供给其它系统或平台进行调度,真正意义上的“连接一切”。

    什么意思呢?

    前面我们介绍过蓝鲸的标准运维SaaS工具(回忆不起来的,可以看下历史文章《看蓝鲸标准运维如何编排一切》),通过原子编排的方式实现端到端的复杂流程。如果我们已经在作业平台编排好了一个任务,那么这个任务本身也可以作为标准运维的一个原子,被编排进一个更大的流程中去。

    如下图所示:

    总结一下

    01 蓝鲸作业平台的核心优势

    image

    02 传输文件更灵活、快速

    作业平台的任务执行和文件传输都是基于 Agent 触发的,Agent 使用 BT(BitTorrent) 方案应对大文件传输,使得文件拉取和传输更加高速、效率。

    03 更清晰的 web 化脚本管理

    云化脚本管理模式,帮助运维团队协作管理更清晰;多个协作者可借助平台进行脚本共享使用,除了脚本单独执行外,也可将多个脚本或文件传输流程串接组合成作业任务。

    04 万级并发,让批量执行更高效

    支持万级并发,让作业批量执行更高效。

    05 流程式管理,一切皆“作业”

    面对特定的版本发布或变更的特性场景下,我们往往需要执行多个步骤;例如,停进程、拉取版本文件、分发版本文件到各个节点机器,最后再拉起进程正式对外服务;这就需要很多个步骤执行动作,你也可以选择将所有步骤封装成一个大脚本,但这太低效了,并且维护成本会很高。

    作业平台的作业管理模块很好的解决了这个问题,用户只需要将某一个特定业务场景的脚本或文件传输操作,按照顺序组装定制成一个作业任务,以后便可一键完成整套操作,即方便又便于管理。

    06 “秒级”定时,任务执行 Timing 更精准

    突破了传统 Linux 系统自带的分钟级定时任务,作业平台能够支持到以秒为最小时间粒度的定时任务计划;且每个定时任务执行过程都会被记录日志,让一切操作都可追溯。

    07 开放 API 接口,以原子形态连接一切

    作业平台还开放了 API 接口,以原子节点的形态开放提供给其它系统或平台进行调度,真正意义上的“连接一切”。

    蓝鲸社区版开源免费,赶紧下载体验作业平台的强大吧!下载链接:

    http://bk.tencent.com/download/

    本文首发于微信公众号:嘉为科技,转载请注明出处。​​​​

    相关文章

      网友评论

        本文标题:蓝鲸作业平台:搞定与脚本相关的一切

        本文链接:https://www.haomeiwen.com/subject/faimgftx.html