技术领域
[0001] 本
发明涉及计算机
软件管理应用技术领域,具体涉及一种操作系统补丁批量自动化更新管理方法及系统。
背景技术
[0002] 随着企业信息化建设的推进,信息部
门所维护的
服务器数量逐年增长,对服务器操作系统的安全补丁更新已然成为艰巨的维护工作。而且出于安全方面的考虑,很多企业不允许其生产环境的服务器直连互联网进行操作系统更新,这就给服务器操作系统更新工作带来极大的不便,需要人工参与补丁版本甄别、补丁下载、人工拷贝至内网、执行补丁安装等过程,工作量巨大。
[0003] 操作系统的补丁升级主要存在如下问题:服务器数量众多,操作系统版本差异性较大,补丁升级工作量大;内部生产环境无法直连互联网进行在线升级,需要人工处理,效率低且工作繁杂,处理成本高;难以大批量进行操作系统补丁升级,维护工作量巨大,难以满足企业发展对IT运维效率的要求。
发明内容
[0004] 有鉴于此,本发明
实施例提供一种操作系统补丁批量自动化更新管理方法及系统。能够实现安全可靠的跨内外网补丁自动升级。
[0005] 为实现上述目的,本发明实施例提供如下技术方案:
[0006] 一种操作系统补丁批量自动化更新管理方法,其包含以下步骤:
[0007] 在外网安装外网Ansible服务端和外网补丁服务器;在内网安装内网Ansible服务端并同时部署内网补丁服务器;
[0008] 将外网补丁服务器下载好的补丁文件通过内外网交换平台传输至内网补丁服务器;
[0009] 通过内网Ansible服务端遍历受控服务器,检查确认所检测的各受控服务器是否需要升级补丁;
[0010] 若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、
内核版本或软件版本,并向内网补丁服务器获取相应的补丁包;
[0011] 内网Ansible服务端获取到对应的补丁包后,将补丁包分发给
指定的受控服务器,并发送安装指令。
[0012] 进一步地,本发明还提供一种操作系统补丁批量自动化更新管理系统,其包括:
[0013] 外网Ansible服务端和外网补丁服务器;内网Ansible服务端和内网补丁服务器;
[0014] 内外网交换平台,用于将外网补丁服务器下载好的补丁文件传输至内网补丁服务器;
[0015] 所述内网Ansible服务端用于遍历受控服务器,检查确认所检测的各受控服务器是否需要升级补丁;若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、内核版本或软件版本,并向所述内网补丁服务器获取相应的补丁包;内网Ansible服务端获取到对应的补丁包后,将补丁包分发给指定的受控服务器,并发送安装指令。
[0016] 本发明的有益效果是,利用了开源Ansible工具以及内外网交换平台,实现了安全可靠的跨内外网补丁自动升级。依托Ansible的跨平台优势,受管的服务器不论是windows系列亦或是linux/unix系列,均可实现自动化补丁安装;同时,可以根据配置大批量执行,大大降低了人工操作的巨大工作量,并且极大提升补丁升级工作的工作效率。
附图说明
[0017] 为了更清楚地说明本发明实施例或
现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0018] 图1为本发明实施例提供的一种操作系统补丁批量自动化更新管理系统
框架图;
[0019] 图2为本发明实施例提供的一种操作系统补丁批量自动化更新管理方法
流程图。
具体实施方式
[0020] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0021] Ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
[0022] Ansible作为一个管理框架,其本身对被管机器提供批量远程控制和集中管理调度能
力,并且内含多种常用
基础模
块用于简化运维脚本的编写。主要包括:
[0023] (1)、连接
插件connection plugins:负责和被监控端实现通信;
[0024] (2)、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
[0025] (3)、各种模块核心模块、command模块、自定义模块;
[0026] (4)、借助于插件完成记录日志邮件等功能;
[0027] (5)、playbook:剧本执行多个任务时,非必需可以让
节点一次性运行多个任务。
[0028] 本发明实施例提供如下技术方案:
[0029] 参考图1与图2,本发明提出一种基于开源Ansible软件的操作系统补丁批量自动化更新的方法,能够实现在外网自动检测补丁并下载,以安全的方式自动传输至内网环境,并自动批量安装补丁。实现对不同操作系统、指定版本的补丁更新,具体实现方法如下:
[0030] (1)在外网安装Ansible服务端和一台补丁服务器,用于补丁文件存放;同理,在内网安装一套Ansible服务端并同时部署一台内网补丁服务器,如图1。
[0031] (2)通过内外网交换平台将外网补丁服务器下载好的补丁文件,传输至内网补丁服务器,实现内网环境下补丁的自动下载。
[0032] (3)通过内网Ansible服务端遍历受控服务器,检查其内核版本以及其他软件版本,确认所检测的服务器是否需要升级补丁。
[0033] (4)若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、内核版本或软件版本,并向内网补丁服务器获取相应的补丁包。
[0034] (5)内网Ansible服务端获取到对应的补丁包后,将补丁包分发给指定的服务器,并发送安装指令。
[0035] (6)受控服务器接收到补丁包和安装指令后,执行补丁安装,将安装完成信息反馈给Ansible服务端。
[0036] (7)Ansible服务端接收反馈信息并汇总,输出批量安装的情况,包括安装数、成功数等,方便管理员统一查阅管理。
[0037] 更加详细地,上述的步骤具体通过下面所述的细节来实现:
[0038] (1)在外网(DMZ区)创建2台linux redhat7.3
虚拟机,分别安装Ansible服务端软件以及补丁文件服务;通过外网Ansible软件服务不间断的获取互联网环境中的操作系统补丁信息,在操作系统服务商发布新的安全补丁时,自动将其下载至外网的补丁服务器中。
[0039] (2)外网补丁服务器建立与内外网交换平台的
接口。内外网交换机平台是搭建的用于开展内网和外网数据交换的平台,该平台向外网环境发布接口,外网环境的应用可调用该接口向其传送数据。平台收到收据后断开与外网应用的会话,将接收到的文件进行加密编码,并通过对内网的接口,将文件传输给内网接收方,内网接收方接到数据后,对接进行解码。通过此方式,完成内外网数据交换。
[0040] (3)当外网补丁服务器更新了新的补丁文件后,自动触发与内外网交换平台的接口,将补丁文件传输到内网补丁服务器。
[0041] (4)通过内网Ansible服务端遍历受控服务器,检查其内核版本以及其他软件版本,确认所检测的服务器是否需要升级补丁。
[0042] (5)若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、内核版本或软件版本,并向内网补丁服务器获取相应的补丁包。
[0043] (6)内网Ansible服务端获取到对应的补丁包后,将补丁包分发给指定的服务器,并发送安装指令。若指定的服务器属于linux服务器,则Ansible服务端启用SSH建立与该服务器的连接,并传输文件和指令;若指定服务器为windows系列,则启用power shell建立连接,并传输文件和指令。
[0044] (7)受控服务器接收到补丁包和安装指令后,执行补丁安装,将安装完成信息反馈给Ansible服务端。
[0045] (8)Ansible服务端接收反馈信息并汇总,输出批量安装的情况,包括安装数、成功数等,方便管理员统一查阅管理。
[0046] 综上所述:参考图2,本发明一种操作系统补丁批量自动化更新管理方法,其包含以下步骤:
[0047] S101:在外网安装外网Ansible服务端和一台外网补丁服务器;在内网安装内网Ansible服务端并同时部署一台内网补丁服务器;
[0048] S102:将外网补丁服务器下载好的补丁文件通过内外网交换平台传输至内网补丁服务器;
[0049] S103:通过内网Ansible服务端遍历受控服务器,检查确认所检测的各受控服务器是否需要升级补丁;
[0050] S104:若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、内核版本或软件版本,并向内网补丁服务器获取相应的补丁包;内网Ansible服务端获取到对应的补丁包后,将补丁包分发给指定的受控服务器,并发送安装指令。
[0051] S105:所述受控服务器接收到补丁包和安装指令后,执行补丁安装,将安装完成信息反馈给内网Ansible服务端。
[0052] S106:所述内网Ansible服务端接收到受控服务器反馈的信息并汇总,输出批量安装的情况,包括安装的受控服务器数量、安装成功的受控服务器数量。
[0053] 参考图1,本发明的一种操作系统补丁批量自动化更新管理系统,其包括:
[0054] 外网Ansible服务端和外网补丁服务器;内网Ansible服务端和内网补丁服务器;
[0055] 内外网交换平台,用于将外网补丁服务器下载好的补丁文件传输至内网补丁服务器;
[0056] 所述内网Ansible服务端用于遍历受控服务器,检查确认所检测的各受控服务器是否需要升级补丁;若需要升级补丁,内网Ansible服务器记录该服务器的操作系统类型、内核版本或软件版本,并向所述内网补丁服务器获取相应的补丁包;内网Ansible服务端获取到对应的补丁包后,将补丁包分发给指定的受控服务器,并发送安装指令。
[0057] 所述外网Ansible服务端不间断的获取互联网环境中的操作系统补丁信息,在操作系统服务商发布新的安全补丁时,自动将其下载至外网补丁服务器中。
[0058] 本
说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以后面描述得会比较简单,相关之处参见前面所述实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0059] 专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及
算法步骤,能够以
电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0060] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种
修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。