[发明专利]一种服务器智能动态扩容的方法在审

专利信息
申请号: 201910641189.5 申请日: 2019-07-16
公开(公告)号: CN110377424A 公开(公告)日: 2019-10-25
发明(设计)人: 崔鹏;邹永红 申请(专利权)人: 北京微鲤科技有限公司
主分类号: G06F9/50 分类号: G06F9/50
代理公司: 上海精晟知识产权代理有限公司 31253 代理人: 安曼
地址: 100020 北京市朝阳区广*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种服务器智能动态扩容的方法,属于大数据技术领域,包括在服务器集群中建立配置模块、数据获取模块、数据库模块、算法模块、扩容缩容模块和告警模块,解决了经过对服务器的压力测试得到相应接口和服务器压力的关系,然后配置好相应的规则来约束扩容的触发和关闭的技术问题,本发明可以在没有docker服务的情况下来实现docker容器的一些功能,提高了工作质量,可以单独使用扩容模块达到添加固定节点的需求,减少了人为的错误并节省了人,可以预测压力和在发生压力时迅速的做出处理,减少了排查时间并增加服务可用率,告警模块可以提醒负责人关注项目,不用人为去看监控,节省人力。
搜索关键词: 扩容 服务器 告警模块 智能动态 数据获取模块 服务器集群 服务器压力 数据库模块 单独使用 固定节点 配置模块 算法模块 压力测试 增加服务 大数据 触发 可用 排查 缩容 监控 预测 配置 服务
【主权项】:
1.一种服务器智能动态扩容的方法,其特征在于:包括如下步骤:步骤1:在服务器集群中建立配置模块、数据获取模块、数据库模块、算法模块、扩容缩容模块和告警模块;步骤2:设定某个项目A需要用到服务器集群中的数个服务器,数据获取模块用于获取项目A用到的所有服务器的接口指标,并将这些接口指标均存储在数据库模块中;接口指标包括接口信息、硬件的CPU数量、CPU阈值、load负载阈值和Qps阈值;CPU阈值为预设的CPU进程的占用比率的阈值;接口信息包括接口地址和响应时长阈值;数据库模块存储项目A所产生的数据,项目A所产生的数据包括保质期时间、接口地址、当前接口相应时长、CPU进程的占用比率、占用CPU的数量和load负载值;步骤3:配置模块根据数据库模块中的接口指标,生成关于项目A的配置文件,配置文件的格式为:项目名称+接口信息+CPU阈值+load负载阈值+Qps阈值;配置模块存储项目A的配置文件;步骤4:算法模块定时获取数据库模块中的项目A所产生的数据,并根据以下步骤进行是否扩容或缩容的计算:步骤S1:根据项目A的数据进行取平均值的计算,并与配置文件进行对比,并根据Cpu阈值算法、Load阈值算法、接口反应时间算法或Qps阈值算法计算扩容节点数量;步骤S2:Cpu阈值算法为:对项目A的数据中的CPU进程的占用比率进行平均值计算,得到当前CPU的占比率平均值为X2,设定CPU阈值为X1,如果X1<X2,则表明需要扩容;设定节点数为N,CPU进程的占用比率的正常使用的规定为50%,根据以下公式计算Cpu阈值算法的扩容节点数量Q1:Q1=[X2×(N‑2)÷50]‑8;步骤S3:Load阈值算法为:对项目A的数据中的load负载值进行平均值计算,得到当前load负载值Y2,设定接口指标中硬件的CPU数量为M1,那么Load负载阈值即为Y1=M1×0.6,如果Y1<Y2,则表明需要扩容;设定节点数为N,load负载值的正常使用规定为Y3=M1×0.5,根据以下公式计算Load阈值算法的扩容节点数量Q2:Q2=[Y1×(N‑2)÷Y3]‑M1;步骤S4:接口反应时间算法为:设定响应时长阈值为t1,当前接口相应时长为t2,如果t1<t2,则表示需要扩容,根据以下公式计算接口反应时间算法的扩容节点数量Q3:Q3=[t1÷t2×N]‑N;其中N为节点数量;步骤S5:Qps阈值算法为:根据服务正常时nginx日志来预估项目A所产生的数据的当前Qps值Qps2,设定Qps阈值为Qps1,当Qps1<Qps2时,则表示需要扩容;设定节点数为N,根据以下公式计算Qps阈值算法的扩容节点数量Q3:Q3=Qps2÷Qps1‑N;步骤S6:算法模块根据步骤S1到步骤S5的计算结果制定扩容计划,并根据扩容计划指导服务器集群中的节点完成扩容;步骤S7:算法模块记录根据Cpu阈值算法、Load阈值算法、接口反应时间算法或Qps阈值算法计算出的扩容节点数量,以及参与扩容的所有节点的服务器名称和接口指标,生成与项目A所产生的数据关联的扩容信息,根据扩容信息生成扩容文件,并将扩容文件存储到数据库模块;步骤5:扩容缩容模块根据根据步骤S6的方法进行扩容,具体步骤如下:步骤Y1:扩容缩容模块根据扩容计划获取需要扩容的节点数量,直接调用create_uhost模块创建主机集群,每一个主机为一个节点;步骤Y2:扩容缩容模块通过python调用shell把nginx配置备份,同步war包到指定的节点的tomcat下,并把这些参与扩容的节点加到DNS中,启动tomcat,把参与扩容的节点加入到nginx的upstream的地址池中,并统一分发到nginx的节点上直接提供服务。步骤6:当项目A所产生的数据下降到配置文件中所提供的阈值的40%时,进行缩容,其具体步骤如下:步骤Z1:先从nginx的upstrem中剔除参与扩容的节点,先使其不提供服务;步骤Z2:在tomcat上计算close_wait和time_wait占所有tcp连接的百分比,如果是达到90%就直接关闭tomcat回收节点资源;步骤Z3:如果在30分钟的时候还没达到90%阈值就直接关掉tomcat节点,回收节点资源。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京微鲤科技有限公司,未经北京微鲤科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201910641189.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top