一种高可靠的集群运维管理方法与流程

文档序号:17357925发布日期:2019-04-09 21:51阅读:419来源:国知局
一种高可靠的集群运维管理方法与流程

本发明涉及IT运维管理的技术领域,特别涉及一种高可靠的集群运维管理方法。



背景技术:

随着互联网技术的高速发展以及同类型服务的竞品层出不穷,用户对服务质量的要求更严格。面对来自用户的压力,互联网公司通常采取了分布式集群部署服务,利用其高性能性、高可靠性、高扩展性来解决这巨大的挑战。伴随分布式集群规模扩大,分布式集群内部关联复杂,集群管理越来越成为提供稳健服务关键核心,成为学术界跟工程界的研究热点问题之一。如果通过运维人员人工搭建部署集群环境,管理服务配置,不仅效率低下、可靠性低,而且难以迁移扩展,不便于管理。

为了解决集群规模扩大带来的部署工作量剧增,异构服务器主机间配置差异,集群环境配置管理与扩展,有必要设计新的集群运维管理方式来进行大规模集群自动化运维。集群运维管理方法具体应涵盖自动化部署、主机状态监控、任务调度管理、机器配置管理、日志审计等功能。



技术实现要素:

本发明的目的在于克服现有技术的缺点与不足,提供一种高可靠的集群运维管理方法。该方法在负载均衡的冗余容灾技术原理基础上,结合配置管理框架SaltStack设计并实现安全可靠的集群运维管理方法。为中小型规模集群管理提供一个简单有效的管理方案,实现安全可靠远程管控集群。根据主机环境自动部署,减少人工部署引发的差错,缩短部署时间,全面提高部署效率,并提供长期持续管理服务配置的机制。

本发明的目的通过下述技术方案实现:

一种高可靠的集群运维管理方法,所述方法包括下列步骤:

S1、高可靠集群管控命令的web接入与http形式的调度发布,基于LVS+Keepalive负载技术搭建双机热备的HTTP server,支持人工热切换、故障自动切换,基于Nginx+Tornado网络框架技术搭建集群运维管理Web平台,由Nginx实现负载均衡与反向代理;

S2、高可靠集群管控命令的传输与下发,管控数据传输时分别由AES算法加密数据、RC4加密密钥,通过base64编码后通过SSH安全隧道传输,在Tornado网络框架中适用RPYC远程通信技术管理中央运维控制系统;

S3、高可靠集群管控命令的执行与反馈,中央运维控制系统兼容多种配置框架,具体包括Satlstack、Func,并支持自定义配置框架,Saltstack平台实现对集群节点主机进行管控。

进一步地,所述步骤S1、高可靠集群管控命令的web接入与http形式的调度发布包括:

S1.1、配置LVS,实现搭建集群运维管理平台接入层,实现接入层的负载均衡;配置Keepalive搭建集群运维管理平台接入层的双机热备,修改Keepalive关键配置并设计shell脚本实现半人工自动切换主从HTTP server;

S1.2、配置Nginx搭建集群运维管理平台调度层HTTP server,修改Nginx反向代理部分的关键配置,实现后端Web server的负载均衡和请求调度;设计tornado程序搭建集群运维管理平台Web server层,基于MVC开发Web server管理界面跟业务逻辑。

进一步地,所述步骤S2、高可靠集群管控命令的传输与下发包括:

S2.1、数据传输部分使用AES、RC4、base64方式对数据进行加密编码;

S2.2、集群运维管理平台与中央运维控制系统之间建立SSH信任关系,通过SSH安全隧道传输已加密数据。

进一步地,所述步骤S3、高可靠集群管控命令的执行与反馈包括:

S3.1、集群服务节点部署salt-minion、func-minion客户端,修改关键配置,向搭建好的集群中央运维控制系统发送证书;

S3.2、中央运维控制系统管理接受集群内部所有信任节点的证书,实现对所有信任节点的管控,并管控命令的执行结果反馈给上游Web。

进一步地,所述步骤S1、高可靠集群管控命令的web接入与http形式的调度发布中构建LVS+Keepalive双机热备模块、Nginx Http方向调度模块、Tornado Web服务降级调度模式,上述三者联立所形成的多层次负载均衡模型。

进一步地,所述集群运维管理平台与所述中央运维控制系统的数据通信方式采用AES+RC4加密算法和base64编码方式的RPYC远程调度方式,随机生成会话密钥且通过SSH安全隧道传输。

进一步地,所述步骤S3、高可靠集群管控命令的执行与反馈中Saltstack平台实现对集群节点主机进行管控具体包括:远程命令调用、服务自动化部署、服务配置管理、服务性能监控、日志审计。

进一步地,所述步骤S3、高可靠集群管控命令的执行与反馈中采用Saltstack构成的自动化部署、数据采集监控、服务配置管理,其中所述自动化部署采用基于yaml格式的配置文件进行集中管理。

进一步地,所述步骤S3、高可靠集群管控命令的执行与反馈中所述中央运维控制系统兼容的配置框架包括Satlstack、Func。

本发明相对于现有技术具有如下的优点及效果:

(1)本文提出了多层负载均衡模型,既避免单机负载过重导致故障,又保证集群系统的冗余容灾,保证了运维可视化平台的高可靠性。

(2)本文提出了多平台分布式中控系统模型,通过多平台互为备路的方式保障基础运维功能的高度可靠,保证了运维中控系统的高可靠性。

(3)本文采用了多重加密、加密隧道的模型,避免管控数据在不信任网络的传输过程中被窃听、篡改,保证了运维系统中数据通信安全可靠性。

附图说明

图1是本发明方法的集群运维管理的流程步骤图;

图2是本发明方法实现集群运维管理安全性的流程图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例一

请参见图1,图1是本实施例中集群运维管理的流程步骤图。图1所示的高可靠的集群运维管理方法,具体包括以下步骤:

S1、高可靠集群管控命令的web接入与http形式的调度发布,基于LVS+Keepalive负载技术搭建双机热备的HTTP server,支持人工热切换、故障自动切换,基于Nginx+Tornado网络框架技术搭建集群运维管理Web平台,由Nginx实现负载均衡与反向代理。

该步骤具体包括:

S1.1、配置LVS,实现搭建集群运维管理平台接入层,实现接入层的负载均衡;配置Keepalive搭建集群运维管理平台接入层的双机热备,修改Keepalive关键配置并设计shell脚本实现半人工自动切换主从HTTP server;

S1.2、配置Nginx搭建集群运维管理平台调度层HTTP server,修改Nginx反向代理部分的关键配置,实现后端Web server的负载均衡和请求调度;设计tornado程序搭建集群运维管理平台Web server层,基于MVC开发Web server管理界面跟业务逻辑。

该步骤S1中,采用LVS+Keepalive技术组成可人工热切换的高可靠接入层,进行有效接入;由Nginx实现负载均衡与反向代理,遵循本地优先的调度原则将请求均匀分发给后端的web服务,进行可视化发布。

所述高可靠集群管控命令的web接入与http形式的调度发布包括构建LVS+Keepalive双机热备模块、Nginx Http方向调度模块、Tornado Web服务降级调度模式。其中三者联立所形成的多层次负载均衡模型,重点解决了集群运维方法中的可靠性问题。

S2、高可靠集群管控命令的传输与下发,管控数据传输时分别由AES算法加密数据、RC4加密密钥,通过base64编码后通过SSH安全隧道传输,在Tornado网络框架中适用RPYC远程通信技术管理中央运维控制系统。

该步骤具体包括:

S2.1、数据传输部分使用AES、RC4、base64方式对数据进行加密编码;

S2.2、集群运维管理平台与中央运维控制系统之间建立SSH信任关系,通过SSH安全隧道传输已加密数据。

该步骤S2中,集群运维管理平台与中央运维控制系统的数据通信方式是RYPC远程调用。传输的数据由AES、RC4、base64加密,并通过SSH安全隧道进行安全传输。

所述高可靠集群管控命令的传输与下发中采用AES+RC4加密算法和base64编码方式的RPYC远程调度方式,随机生成会话密钥且通过SSH安全隧道传输,能安全可靠实现集群管控数据传输。

重点解决运维方法中的安全性问题。

S3、高可靠集群管控命令的执行与反馈,中央运维控制系统兼容多种配置框架,具体包括Satlstack、Func,并支持自定义配置框架,Saltstack平台实现对集群节点主机进行管控,具体包括:远程命令调用、服务自动化部署、服务配置管理、服务性能监控、日志审计。

该步骤具体包括:

S3.1、集群服务节点部署salt-minion、func-minion客户端,修改关键配置,向搭建好的集群中央运维控制系统发送证书;

S3.2、中央运维控制系统管理接受集群内部所有信任节点的证书,实现对所有信任节点的管控,并管控命令的执行结果反馈给上游Web。

其中,中央运维控制系统可兼容多种配置管理框架设计,并提供集群运维的各种基础管理功能;管控命令的执行及其执行结果反馈给上游Web。

所述高可靠集群管控命令的执行与反馈主要采用了Saltstack构成的自动化部署、数据采集监控、服务配置管理等模块构成,自动化部署模块主要采用基于yaml格式的配置文件进行集中管理。

实施例二

本实施例具体给出一种高可靠的集群运维管理方法的实施过程,具体步骤如下:

1)基础环境部署。

根据集群运维系统总体设计,本文搭建原型系统分成本地的运维Web平台及中央运维控制系统两个子网络。Gateway网关功能是将对外公网地址IP端口映射到LVS虚拟IP上;WebNode功能运维Web平台服务节点,部署在本地物理主机上,最小化系统由两台WebNode主机实现了负载均衡层及运维Web平台的所有功能;ControlNode指的是运维中控系统服务节点,ClusterNode指的是集群系统内部服务节点。

2)接入负载层部署。

首先源码安装最新版本的Keepalived服务软件并且进行简单的环境配置。然后创建Keepalived全局配置文件/etc/Keepalived/Keepalived.conf,主要分为VRRP的自动失败切换(vrrp_instance)和Vitural Server负载均衡(virtual_server)两部分。

配置中的Nginx_check.sh脚本的主要功能是每隔10s检测Nginx服务,若Nginx失效则重启。若重启失败说明本机服务不可用,那么停止本机Keepalived,切换流量到另一台主机上,避免无效流量。设置Virtual Server时,配置本地的主机权重为2,保证了请求优先转发本地,能够有效降低不必要的网络流量。

3)Nginx反向代理部署。

在WebNode1,WebNode2服务器上安装部署Nginx,配置软件运行环境后创建/etc/Nginx/Nginx.conf文件。根据本地优先转发的原则,设置本地负载权重为2。

4)业务层部署。

Tornado采用单进程单线程的方式启动,WebNode1、WebNode2服务器均开启端口分别为8886~8888的三个线程,其中8886,8887分别与不同运维中控机通信,8888作为备机线程,当所有线程状态为忙时才被使用。Nginx接收HTTP请求后根据upstream负载规则将请求交给后端的Tornado具体业务模块处理。

5)RPYC服务器部署。运维中控系统是连接运维Web平台与集群服务节点的纽带,主要的功能是运维管控命令的接入及转发执行,由RPYC服务器和服务配置管理平台两部分实现。

RPYC服务器是基于远程调用协议RPYC开发的运维中控系统接入调度功能模块,在Server类中定义exposed_XX的成员方法,然后在clinet端通过root方法属性即可实现远程调用。

6)服务配置管理平台部署。在ControlNode部署Salt-Master服务、ClusterNode部署Salt-Minion服务,修改服务配置文件如节点身份、节点IP、节点grains信息等,然后在主Salt-Master签证Slat-Minion证书。然后,多台Slat-Master主机间采用Rsync同步软件同步Master主机公共配置,即可实现SaltStack配置框架基础环境。

综上所述,本发明从调研业界常见的技术方案入手,针对集群运维管理尚未妥善的解决的关键问题:运维Web平台高可靠性、运维中控系统高可靠性、管控数据传输安全可靠性,给出相应的解决方案,在此基础上提出了多层负载均衡、多集群配置管理平台的高可靠集群运维系统框架,并采用多重对称加密的方式解决运维系统通信安全问题。

本发明实施例首先通过LVS技术提供对外虚拟服务和接入调度,采用Keepalived+Nginx搭建双机双工的HTTP反向代理层,提高运维Web平台可靠性的同时优化了系统资源利用率;其次,结合服务降级的运维思想,在业务层面上按等级优先程度提供服务,进一步加强了系统可靠性,避免单机负载过重导致故障,实现运维Web平台的高可靠性。

通过Func作为系统备用管理平台,当StackSalt平台故障时人工切换,保证基础的管控模块的高可靠。Saltstack平台实现了运维管理的管控模块、部署模块、监控模块,采用多Salt-Master分布式部署,解决单点问题且提高服务性能,实现了运维中控系统的高可靠性。

在运维Web平台与运维中控系统远程通信问题上,本文结合了RC4、AES对称加密算法,在每次会话过程单独生成加密密钥,降低加密被破解的可能。同时,引入SSH安全隧道技术加密传输通道,进一步确保数据传输的安全可靠。

通过对系统的负载调度、高可靠、系统功能完成等多维度测试,验证本发明所提出的方案能够妥善解决关键问题:

(1)多层负载模型的均衡调度能使系统的接入层节点处于多机多工的工作方式,既有效实现了接入负载均衡,同时相对于热备工作方式大大提升系统的资源利用率;

(2)运维Web平台设计过程中结合冗余容灾、失败自动切换、服务降级的运维理念,一方面解决了单点故障问题,另一方面保障故障发生时,高优服务的可靠性;

(3)运维中控系统采用分布式多Salt-Master部署,结合运维功能的模块化设计,提供了冗余容灾,解决了有效解决集群节点管理的高并发问题。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1