所以在第二个阶段,我们可以看看刚才的问题有没有可能通过脚本来实现。这里是一个很基本的脚本代码,把这个脚本到那台机器上运行之后去采集一个数据,接下来对检查结果进行输出,貌似用脚本的方式可以把时间成本降低了,因为我只要把这个脚本发下去,最后回收上来一个反馈值,我就可以完成工作了,大不了我把这个值再拿一个表记下来。但是使用脚本会有什么问题呢?第一,脚本应该怎么样进行定向发布,刚才我讲的只是一个通用脚本,但是很多时候,我们的服务器组是按照我业务系统类型进行划分的,我需要去检查的这些项并不是保证我每一台服务器都是一样。第二个问题,这个检查要求变了怎么办,我们还需要派人专门去修改特定的脚本。所以我们使用脚本程序存在三大问题,第一类是不安全性。脚本是以明文出现的,包括你需要登入的话要有用户名/密码,另外会掺杂其它访问信息。第二是难维护,当你进行修改的时候,你怎么来维护脚本。第三部分是难管理。
所以在第三阶段,企业考虑我能不能引用一些业界成熟的产品。这个图上我们以应用发布为例,基本来讲,我们会涉及到四个团队,首先业务系统会有应用开发的小组进行一个应用系统的打包,打完包在真正把的业务包部署到生产环境之前需要做一些验证,这是由我们测试或QA部门来完成的,接下来当这些包已经发下去以后,运维团队要进行维护,这个维护除了要维护业务系统以外,还要保证你现有服务器系统本身上面操作系统版本是能够按照你的应用系统要求进行升级的。第四部分安全的管理团队可能也需要定期做检查。通常来说,如果是一些产品化的话,我们会引用不同产品。但BMC我们提供的是一整套的自动化管理的平台,它能够把我刚才讲的这几个方面,从OS到数据库到中间件到应用,从发布到控制等的所有环节在一个平台上完整的去实践它。
自动化层面上我们会涉及包括从底层网络设备自动化;第二,服务器自动化,无论是物理的服务器,或者虚拟化平台;第三是数据库的自动化;另外是中间件自动化以及应用自动化。接下来再做一个对比,我们做一个业务系统上线,下面是传统用手工的方式去做的,上面是通过BMC自动化软件去完成的。首先可以看到,在手工阶段,可能是由一个业务系统的用户提出这么一个变更要求,一个新的业务系统上线我们需要去购买服务器,即使今天不去购买物理的服务器也需要去部署一个虚拟的服务器,这样我就需要有专门人去做。接下来交给网管,按照企业本身的要求,把指定的IP绑定,把我的服务器接入到网络当中去。接下来服务器要放到生产环境去,需要打补丁,需要有专门的技术人员做服务器的加固。前面三部分完成之后才是业务系统的部署,专门一个人来做业务系统应用的部署。最后企业考虑到,可能这个系统面向的用户量比较大,还需要增加一个Load balance。在真实的企业环境中,当然不是每个环境同一个人,也许是同一个人做不同的事,但是整个过程耗时是比较长的,需要从底层基础到应用。通过BMC自动化,我们可以实现:首先用户提出这么一个变更要求,自动化管理软件可以通过操作流程的逻辑调度把它串联起来,当这个步骤失败的话,应该怎么处理,通过这样一整套平台让业务系统能够快速上线。当然讲到这里,其实我们还没有到云,这是在自动化管理的阶段。