CN116775420A - 基于Flink流计算的信创云平台资源展示和预警方法及*** - Google Patents
基于Flink流计算的信创云平台资源展示和预警方法及*** Download PDFInfo
- Publication number
- CN116775420A CN116775420A CN202310480097.XA CN202310480097A CN116775420A CN 116775420 A CN116775420 A CN 116775420A CN 202310480097 A CN202310480097 A CN 202310480097A CN 116775420 A CN116775420 A CN 116775420A
- Authority
- CN
- China
- Prior art keywords
- cloud service
- message
- resources
- data
- cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000004364 calculation method Methods 0.000 title claims abstract description 60
- 238000012545 processing Methods 0.000 claims abstract description 46
- 238000009826 distribution Methods 0.000 claims abstract description 42
- 230000000694 effects Effects 0.000 claims abstract description 28
- 230000009471 action Effects 0.000 claims abstract description 7
- 230000010354 integration Effects 0.000 claims description 19
- 238000013079 data visualisation Methods 0.000 claims description 13
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000005192 partition Methods 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 4
- 238000005111 flow chemistry technique Methods 0.000 claims description 2
- 238000013468 resource allocation Methods 0.000 abstract description 2
- 238000012423 maintenance Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 238000009434 installation Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- NPPQSCRMBWNHMW-UHFFFAOYSA-N Meprobamate Chemical compound NC(=O)OCC(C)(CCC)COC(N)=O NPPQSCRMBWNHMW-UHFFFAOYSA-N 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/323—Visualisation of programs or trace data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于Flink流计算的信创云平台资源展示和预警方法及***,方法包括:通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面和申请页面点击与返回事件消息;通过分布式流处理引擎分别根据订单实施成功消息,更新信创云平台中可用域资源的分配率;根据订单实施失败消息,计算因资源不足已累积的需求值,得到预估需求;根据云服务介绍页面和申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;可视化显示计算出的数据,生成和发出预警信息。与现有技术相比,本发明有效的解决了云平台资源分配数据实时准确的展示问题,大大提升了用户体验。
Description
技术领域
本发明涉及云平台***领域,尤其是涉及基于Flink流计算的信创云平台资源展示和预警方法及***。
背景技术
随着云计算和大数据等科技新基建的日趋成熟,国内在信息技术应用创新背景下,以国产CPU、操作***为底座,自主研发的兼顾计算、存储、网络的综合信创云计算平台,成为各大数据中心加速行业数字化转型,提升自主可控云建设的优选。信创云平台在租户、运营、运维三个维度进行全面智能化、数字化升级优化。
传统云平台对于计算、存储资源使用情况的监控,以及在运维侧的数据展示,首先展示监控预警的均为使用率,并非分配率,会给运维管理员造成宿主机节点、资源池资源空闲的假象,没有及时扩容而导致用户创建失败。
其主要原因为传统云平台通常依赖Zabbix等性能监控工具,在每个计算节点安装Zabbix-Agent来收集监测每个计算节点CPU、内存资源,然Zabbix收集的信息是宿主机节点***中实际使用情况,若宿主机上存在较多已分配虚拟机但当前并未运行较高负载业务时,Zabbix上看到的宿主机、资源池的CPU、内存剩余率百分比依然很大,运维人员未进行扩容,当用户再创建虚机至该节点、资源池时,由于资源已分配给其他虚机,无充足资源可分配给新建虚机而导致创建失败,给用户造成较差的使用体验,此时运维管理员再进行硬件准备、部署实施则需要一至两周时间,用户需要等待较长时间才能继续进行使用申请。
其次,传统云平台的各项云资源分配情况不能按照各个维度进行统计展示,通常是伪实时,比如Zabbix是设置一个时间间隔,每一个时间间隔进行一次资源查询,由于时间间隔较小,只能展示直接获取到的数据,不能通过分析计算按照各个维度展示资源情况。
另外,传统云平台没有用户活跃度分析,没有收集用户点击、浏览海量数据,对不同区域云服务的活跃度进行统计展示,提供给运维管理员参考,以便其评估资源需求量,并提前准备。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于Flink流计算的信创云平台资源展示和预警方法及***;
通过捕获用户的资源申请订单、以及用户浏览数据,通过大数据处理中Flink实时流式计算引擎,做到高吞吐、超低延时的将最新计算、存储等云资源按照不同粒度资源单位进行准确实时展示,并更新至信创云平台运维侧,对于分配率超过设定阈值的宿主机、资源池及时进行预警,提醒云运维管理员扩容准备;
同时根据用户点击率、浏览时长等实时计算各资源池云服务的用户活跃度,运维管理员可根据用户活跃度进行资源评估。有效的解决了云平台资源分配数据实时准确的展示问题,并能够及时分析预警云运维管理员,提前做好扩容准备,避免出现大需求时资源不足,避免了用户因资源不足创建失败的情况,大大提升了用户体验。
本发明的目的可以通过以下技术方案来实现:
一种基于Flink流计算的信创云平台资源展示和预警方法,包括以下步骤:
数据采集预处理步骤:通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据处理步骤:通过分布式流处理引擎分别根据所述订单实施成功消息,更新信创云平台中可用域资源的分配率;根据所述订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化步骤:将所述数据处理步骤中获取的分配率、预估需求和用户活跃值进行可视化显示;
数据预警步骤:根据数据处理步骤中计算的分配率和预估需求,接收和发出预警信息。
进一步地,所述分布式消息队列为基于Kafka的分布式消息队列,包括生产者、主题和消费者,所述生产者和主题的数量均为多个;
各个所述生产者分别用于在用户下单申请云服务资源时,生成订单实施成功消息和订单实施失败消息;在发生云服务介绍页面点击与返回事件时,生成云服务介绍页面点击与返回事件消息;在发生云服务资源申请页面点击与返回事件时,生成云服务资源申请页面点击与返回事件消息;
各个主题并行接收所述订单实施成功消息、订单实施失败消息,并且通过一个主题接收所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
所述消费者并行接收各个主题传输的消息,并执行所述数据处理步骤。
进一步地,
所述订单实施成功消息和订单实施失败消息均包括Key值和用户申请的云资源在对应配额指标下消费的配额数量;
所述云服务介绍页面点击与返回事件消息包括Key值和浏览时长;
所述云服务资源申请页面点击与返回事件消息包括Key值和浏览时长;
所述订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息中的Key值均包括用户申请的云服务资源所在区域ID和可用分区ID,以及用户申请的云资源ID;
所述订单实施成功消息和订单实施失败消息的Key值还包括本次生成订单ID、用户下单云服务的配额削减指标项。
进一步地,所述分布式流处理引擎为Flink实时流计算引擎,包括客户端、作业管理器和任务管理器,所述作业管理器用于对作业进行中央调度管理,所述任务管理器用于对作业进行实时计算;所述Flink实时流计算引擎的集群部署模式为应用模式,该应用模式包括:为每一个任务建立一个作业管理器,各个作业管理器将作业提交至自身对应的作业管理器。
进一步地,处理所述订单实施成功消息的作业管理器,在接收到订单实施成功消息后,根据所述用户申请的云服务资源所在区域ID和可用分区ID,获取云服务资源对应区域、可用域下的已用量,从而计算该可用域下的分配率;
将所述分配率与预设的分配阈值对比,若分配率大于或等于分配阈值,则发出预警信息。
进一步地,处理所述订单实施失败消息的作业管理器,在接收到订单实施失败消息后,判断失败原因是否为资源不足;
对于各个云服务资源对应区域的可用域下,分别统计当前因资源不足已累积的需求值,以及其他原因未成功申请云服务的累积需求值,并累加得到总预估需求;
将所述总预估需求与当前云服务资源对应区域的可用域的云资源已用量求和,并处于当前云服务资源对应区域的云资源总数计算出需求分配率,若该需求分配率大于或等于预设的需求分配阈值,则发出预警信息。
进一步地,处理所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息的作业管理器,在接收到云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息后,获取对应的云服务用户访问次数和访问时长,作为预估对应的可用域资源的用户活跃值数据;
每个预设的第一时间将所述用户活跃值数据清零。
进一步地,所述方法还包括数据更新步骤:
初始化云服务资源所在区域和可用域总体资源的数据;
对云服务资源的资源池总体资源进行扩容更新;
定时对数据处理步骤中计算的累积数据和用户活跃值进行重置。
本发明还提供一种基于Flink流计算的信创云平台资源展示和预警***,其特征在于,包括:
数据采集预处理模块,用于通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据计算整合建模模块,用于通过分布式流处理引擎分别根据所述订单实施成功消息,更新信创云平台中可用域资源的分配率;根据所述订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化模块,用于将所述数据计算整合建模模块中获取的分配率、预估需求和用户活跃值进行可视化显示;
实时预警模块,用于根据数据计算整合建模模块中计算的分配率和预估需求,接收和发出预警信息。
进一步地,所述***还包括数据更新模块,用于初始化云服务资源所在区域和可用域总体资源的数据;对云服务资源的资源池总体资源进行扩容更新;定时对数据计算整合建模模块中计算的累积数据和用户活跃值进行重置。
与现有技术相比,本发明具有以下优点:
(1)相较于传统云平台使用Zabbix等工具只能对资源从“使用率”进行展示监控,造成管理员对剩余可分配资源误判,未及时扩容影响用户使用的情况,本方法对资源从“分配率”的维度进行实时获取展示,能够使管理员清晰的看到剩余多少可分配资源,并及时做好扩容准备。
(2)相较于传统云平台对资源的监控预警仅通过缩小数据获取时间间隔的伪实时,本方法通过分布式消息队列Kafka和分布式流处理引擎Flink,做到了真正的数据流计算,信创云平台产生一条数据,后端计算消费一条数据,真正的实现了实时展示、实时预警。
(3)相较于传统云平台仅能对已使用情况监测,无法做到对未来资源需求评估预警的情况,本方法通过实时收集用户活跃度、资源实施失败的数据,对潜在需求进行的预计算,为云平台扩容计划提供数据依据。
(4)相较于传统云平台资源展示仅支持简单的线条图,本方法结合Echarts对资源情况、用户活跃度提供了丰富的图表展示形式,能够更加生动清晰,易懂明了。
(5)相较于传统云平台因监控预警的为资源使用率,而实际可分配资源不足导致用户创建云服务失败,本方法通过监控预警分配率直接避免了此类情况,大大的提升了用户体验。
附图说明
图1为本发明实施例中提供的一种基于Flink流计算的信创云平台资源展示和预警***的分层架构示意图;
图2为本发明实施例中提供的一种基于Flink流计算的信创云平台资源展示和预警***处理过程的流程示意图;
图3为本发明实施例中提供的一种基于Flink流计算的信创云平台资源展示和预警方案的Flink实时流计算流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
实施例1
参考附图3所示,本实施例提供一种基于Flink流计算的信创云平台资源展示和预警方法,包括以下步骤:
数据采集预处理步骤:通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据处理步骤:通过分布式流处理引擎分别根据订单实施成功消息,更新信创云平台中可用域资源的分配率;根据订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化步骤:将数据处理步骤中获取的分配率、预估需求和用户活跃值进行可视化显示;
数据预警步骤:根据数据处理步骤中计算的分配率和预估需求,接收和发出预警信息。
具体地,分布式消息队列为基于Kafka的分布式消息队列,包括生产者、主题和消费者,生产者和主题的数量均为多个;
各个生产者分别用于在用户下单申请云服务资源时,生成订单实施成功消息和订单实施失败消息;在发生云服务介绍页面点击与返回事件时,生成云服务介绍页面点击与返回事件消息;在发生云服务资源申请页面点击与返回事件时,生成云服务资源申请页面点击与返回事件消息;
各个主题并行接收订单实施成功消息、订单实施失败消息,并且通过一个主题接收云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
消费者并行接收各个主题传输的消息,并执行数据处理步骤。
对于各个消息的形式,具体地,订单实施成功消息和订单实施失败消息均包括Key值和用户申请的云资源在对应配额指标下消费的配额数量;
云服务介绍页面点击与返回事件消息包括Key值和浏览时长;
云服务资源申请页面点击与返回事件消息包括Key值和浏览时长;
订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息中的Key值均包括用户申请的云服务资源所在区域ID和可用分区ID,以及用户申请的云资源ID;
订单实施成功消息和订单实施失败消息的Key值还包括本次生成订单ID、用户下单云服务的配额削减指标项。
数据处理步骤中,分布式流处理引擎为Flink实时流计算引擎,包括客户端、作业管理器和任务管理器,作业管理器用于对作业进行中央调度管理,任务管理器用于对作业进行实时计算;Flink实时流计算引擎的集群部署模式为应用模式,该应用模式包括:为每一个任务建立一个作业管理器,各个作业管理器将作业提交至自身对应的作业管理器。
处理订单实施成功消息的作业管理器,在接收到订单实施成功消息后,根据用户申请的云服务资源所在区域ID和可用分区ID,获取云服务资源对应区域、可用域下的已用量,从而计算该可用域下的分配率;
将分配率与预设的分配阈值对比,若分配率大于或等于分配阈值,则发出预警信息。
处理订单实施失败消息的作业管理器,在接收到订单实施失败消息后,判断失败原因是否为资源不足;
对于各个云服务资源对应区域的可用域下,分别统计当前因资源不足已累积的需求值,以及其他原因未成功申请云服务的累积需求值,并累加得到总预估需求;
将总预估需求与当前云服务资源对应区域的可用域的云资源已用量求和,并处于当前云服务资源对应区域的云资源总数计算出需求分配率,若该需求分配率大于或等于预设的需求分配阈值,则发出预警信息。
处理云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息的作业管理器,在接收到云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息后,获取对应的云服务用户访问次数和访问时长,作为预估对应的可用域资源的用户活跃值数据;
每个预设的第一时间将用户活跃值数据清零。
优选的,方法还包括数据更新步骤:
初始化云服务资源所在区域和可用域总体资源的数据;
对云服务资源的资源池总体资源进行扩容更新;
定时对数据处理步骤中计算的累积数据和用户活跃值进行重置。
本实施例还提供一种基于Flink流计算的信创云平台资源展示和预警***,包括:
数据采集预处理模块,用于通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据计算整合建模模块,用于通过分布式流处理引擎分别根据订单实施成功消息,更新信创云平台中可用域资源的分配率;根据订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化模块,用于将数据计算整合建模模块中获取的分配率、预估需求和用户活跃值进行可视化显示;
实时预警模块,用于根据数据计算整合建模模块中计算的分配率和预估需求,接收和发出预警信息。
优选的,***还包括数据更新模块,用于初始化云服务资源所在区域和可用域总体资源的数据;对云服务资源的资源池总体资源进行扩容更新;定时对数据计算整合建模模块中计算的累积数据和用户活跃值进行重置。
下面以***实施例为例,介绍上述方案的一种具体实施过程:
本实施例提供一种基于Flink流计算的信创云平台资源展示和预警***,其分层架构如图1所示,部署应用于大型保险公司数据中心实际生产环境中,该方法相较于传统资源监控方案,不再展示宿主机实际使用率,而是实时准确的采用图表形式清晰明确的动态展示各个维度资源的实际分配情况、用户活跃度,为云平台运维侧智能精准运维提供了数据依据。具体实施分为四大模块:
1、基于Kafka分布式事件流平台的数据采集预处理模块
数据采集预处理模块(Data acquisition preprocessing module based onkafka distributed event stream platform)(详见附图3)主要是通过捕获信创云平台各类云服务订单,用户浏览云服务介绍页面、申请页面数据信息,通过分组后将信息传递给计算模块。
传统的数据采集模块通常使用在用户点击事件前端页面进行埋点,并将点击事件、浏览时间戳等行为记录到日志中,每隔一个时间段对日志进行离线批处理计算建模。
而本方法中为保证数据实时性,采用大数据实时计算中Flink流计算引擎,Flink主要用于处理流式数据,也就是“数据流”(Data Flow)。即数据并不是收集好的,而是像水流一样是一组有序无界的数据序列,逐个到来、逐个处理,没有真正意义上的结束时间,在数据来到之后就会被即刻处理,所以Flink流计算的一大特点就是“快速”,即十分良好的实时性。
为保证整个采集计算过程的高效实时,本方法中数据采集预处理不再使用传统的日志采集,或每隔一个时间段通过接口主动查询,而是采用基于Kafka分布式事件流平台的数据采集预处理。Kafka是一个分布式的基于发布/订阅模式的消息队列(MessageQueue),主要应用于大数据实时处理领域。信息采集预处理过程中主要有三个角色:生产者(Producer)、主题(Topic)、消费者(Consumer)。
生产者是向Kafka集群发消息的客户端,本方法中生产者就是信创云平台中资源申请订单服务、云服务介绍页面点击与返回事件、云服务资源申请页面点击与返回事件。用户下单申请某个云服务资源,在订单实施完成之后,向Kafka集群发布Map数据结构的消息,其Key为“RegionId_AvailableZoneId_ServiceId_OrderId_Qu otaName”,Value为“usedNum_0(或者1)”,由于信创云平台通常由多个区域(Re gion)组成,每个Region下面的资源又根据服务器芯片或者其他指标划分为多个可用分区(AvailableZone),因此这里RegionId、AvailableZoneId分别指用户申请的云服务资源所在区域ID、可用分区ID,ServiceId指用户申请的云资源ID,Ord erId为本次生成订单ID,QuotaName为用户下单云服务的配额削减指标项;
不同云服务根据实际拥有配额指标个数不同,例如弹性云服务器,其配额指标有三项,CPU个数、内存量、磁盘大小,因此用户申请的云服务有几个配额指标项,下单时就会调用后端消息发送接口向Kafka集群发送几条消息;Value中used Num指用户申请的云资源在对应QuotaName配额指标下消费的配额数量,当用户下单后,会进行订单实施即在云平台后台进行实际创建,若订单实施成功,则Val ue最后加“1”,否则若创建失败,则加“0”。这里携带1的订单消息,通过计算模块会实时更新其所在宿主机、可用域、区域、存储池的资源情况,携带0的信息表示用户有下单意愿,但由于其他原因导致实施失败,则作为潜在需求实时预分析。
云服务介绍页面点击与返回事件主要是在用户从信创云平台Potal首页点击进入某个云服务的介绍页面时,在介绍页面返回点击事件函数中动态生成一个参数,即初始时间戳,当用户点击返回按钮触发返回事件回调函数时,将用当前时间戳减去初始时间戳,计算用户浏览时长,并调用后端消息发送接口向Kafka集群发布一条消息,依然是Map数据格式,其Key为“RegionId_AvailableZoneId_ServiceId”,Value为“time_1”,time为浏览时长,1代表一次点击,若超过3分钟用户未点击返回按钮,则直接发送消息,并默认超时登出,time设置为默认值5,单位均为秒。
云服务资源申请页面点击与返回事件同样用于发现潜在需求,即用户已经到申请页面进行了浏览,但由于其他原因未直接下单,同样在用户点击对应云服务资源申请按钮时,申请页面返回点击事件函数动态生成一个初始时间戳参数,在用户点击返回时触发回调函数,计算出浏览时长,并调用后端消息发送接口向Kafka集群发送一条消息,Key为“RegionId_AvailableZoneId_ServiceId”,Value为“time_1”,time依然为用户在申请页面的浏览时长,若超过3分钟未点击返回,按照超时登出为time赋值5秒,1代表一次浏览。
主题(Topic)可以理解为一个队列,生产者和消费者面向的都是一个Topic,不同的消费者只订阅自身感兴趣Topic中的消息。本方法中有三个Topic,一个队列用来接收订单实施成功的消息,一个队列接收订单实施失败的消息,还有一个浏览记录队列接收云服务介绍页面点击与返回事件、云服务资源申请页面点击与返回事件两个生产者的消息。根据不同生产者不同的消息调用后端对应的消息发送接口,将消息发布到对应的主题队列,Flink分布式计算集群会从不同的主题队列订阅相应的消息进行并行实时流计算。而本方案中的消费者就是基于Flink实时流计算的资源整合、活跃度建模模块。
2、基于Flink实时流计算的资源整合、活跃度建模模块
数据计算整合建模模块(Resource integration and activity modelingmodule based on Flink real-time stream computing)(详见附图3)主要是通过实时从数据采集预处理模块的三个主题队列中消费数据,将获取到的数据按照建模规则进行流处理计算,并实时更新所需展示预警数据。Flink处理无界数据流(Unbounded Data Stream),主要依赖其核心流处理接口集DataStream API,DataStream API中嵌入了处理函数(Process Function);底层处理函数(Process Function)与DataStream API相集成,可以对操作进行抽象,并允许用户可以使用自定义状态处理来自一个或多个数据流的事件,且状态具有一致性和容错保证。Flink集群处理作业(Task)主要依赖几个关键组件:客户端(Client)、作业管理器(JobManager)和任务管理器(TaskManager)。JobManager对作业进行中央调度管理,TaskManager对作业进行实时计算,Client主要应用于会话模式(SessionMode)部署和单作业模式(Per Job Mode)部署中,通过Client将代码提交到JobManager。
而本方案中采用的Flink集群部署模式为应用模式(Application Mode),该模式下不再通过Client提交作业,大大减少了客户端所在节点的资源消耗,而是为每一个任务建立一个JobManger,直接将作业提交至自身对应的JobManger,避免多作业抢占JobManger资源,极大的提升了运算效率。
当处理订单实施成功作业的JobManger,接收到订单实施成功的Topic中消息时,说明云平台中某个云服务已创建成功,同时意味着资源已消费,则根据可视化模块展示需求,需要更新该云服务所在区域、所在可用域的已分配资源,并和当前区域已分配Top5进行比较,确认前端展示的分配率Top5是否需要刷新。首先根据接收到消息,该云服务有几项配额指标,则会收到几条消息,消息格式为:(Re gionId_AvailableZoneId_ServiceId_OrderId_QuotaName,usedNum_1)将Key和Valu e进行切分,分别获取到对应的字段,并重组Key为“RegionId_ServiceId_QuotaN ame_Used”、“AvailableZoneId_ServiceId_QuotaName_Used”,通过以上两个Key从本方法的数据存储介质Redis数据库中获取到该云服务对应区域、可用域下该指标的已用量regionCurrentUsed、azCurrentUsed,则当前使用量计算方式如下:
regionUsed=regionCurrentUsed+usedNum
azUsed=azCurrentUsed+usedNum
同时根据Key“AvailableZoneId_ServiceId_QuotaName_Sum”和“QuotaName_Threshold”分别从数据库中获取到该可用域资源总数、分配阈值,通过最新已分配量和总数计算分配率,并和初始化设置的阈值做比较,若大于等于阈值则提要及时提醒管理员扩容,将告警信息发送到本方法中对接的告警平台,通过邮件、短信的方式通知管理员。最后调用数据更新模块更新数据。此外,数据可视化模块中展示了每个可用域中底层宿主机资源CPU、内存分配率Top5。
若用户申请的云服务为弹性云服务器时,则需要通过订单号OrderId调用运营侧getOrderDetail接口获取订单实施成功后的云主机UUID,并通过该UUID调取运维侧getHostResourceDetail接口获取该云服务器最终所在宿主机上已分配CPU、内存量:currentUsedCpu、currentUsedMem,并和宿主机CPU、内存总量cpuSum、memSum按照如下公式计算其分配率:
根据Key“cpuThreshold”、“memThreshold”获取当前Redis数据库中宿主机CPU、内存分配率预警的阈值,并和当前宿主机分配率比较,若大于等于阈值,同样调用实时预警模块,发送告警信息至告警平台,避免分配率过高引发主机故障影响上面虚机业务。此外,根据Key“AvailableZoneId_Cpu”在数据库中获取到该可用域CPU分配率最高的5台主机信息,Value为分配率由高至低排序“hostname1_cpuDistributionRrate1|…|hostname5_cpuDistributionRrate5”,通过Key“AvailableZoneId_Mem”获取到该可用域内存分配率最高的5台主机信息,Value格式和CPU指标相同,最后CPU、内存分配率Top5计算公式如下:
得出结果,将最新数据调用数据更新模块写回数据库中。
当处理订单实施失败作业的JobManger,接收到订单实施失败的Topic中消息时,说明云平台中存在某个云资源的需求,但由于某些原因用户暂时创建失败了,这部分数据根据实时失败不同原因可作为用户预估需求进行分析计算。首先根据接收到消息,该云服务有几项配额指标,则会收到几条消息,消息格式为:(RegionId_AvailableZoneId_ServiceId_OrderId_QuotaName,usedNum_0),通过OrderId调用运营侧getOrderDetail接口获取订单实施失败原因,若其失败信息中包含“lack of resources”则说明该可用域剩余资源不足以支撑这次需求,否则失败原因为其他如租户配额不足等其他问题。
对于因资源不足而失败的需求数据,本方法中在收到该可用域扩容信号,则对数据值重置为0,否则这部分数据会一直保留;
对于其他原因失败的订单数据本方法中每周五晚上数据库更新模块进行定时重置,由于其他原因失败的订单需求,可以供运维管理员实时结合剩余资源进行评估,但是不能代表长期需求,待导致申请失败的原因解决后用户可继续申请资源,若申请成功则会在订单实施成功JobManger中进行计算,实施失败则继续根据失败原因分析计算,因此仅保留一周。
运维管理员对于资源预估需要具体知道在哪个区域的那个可用域下有多少资源需求,同时根据失败原因获取当前数据库中存留值,若失败原因为资源不足时,通过Key“lackResFailed_RegionId_AvailableZoneId_ServiceId_QuotaName”获取当前因资源不足已累积的需求值lackResDemandNum,通过以下公式计算最新预估需求:
lackResDemandNum=lackResDemandNum+usedNum
否则通过Key“otherFailed_RegionId_AvailableZoneId_ServiceId_QuotaName”获取本周其他原因未成功申请云服务的累积需求值otherDemandNum,通过以下公式预估需求:
otherDemandNum=otherDemandNum+usedNum
通过lackResDemandNum和otherDemandNum之和,计算出总预估需求demandNum,根据Key“AvailableZoneId_ServiceId_QuotaName_Used”、“AvailableZoneId_ServiceId_QuotaName_Sum”、“QuotaName_Threshold”获取到该可用域已用资源、资源总数和分配率阈值,使用预估需求demandNum和已用量之和,除以总数计算出需求分配率,若大于等于分配阈值,则说明潜在需求申请后将存在资源不足可能性,需及时为运维管理员预警,调用实时预警模块发送详细告警说明至告警平台通知管理员。最后将最新预估需求值调用数据更新模块更新至数据库中。
当用户活跃度分析作业的JobManger接收到浏览记录Topic中消息时,结合现有数据进行计算消费。用户活跃度主要通过该云服务用户访问次数、访问时长两个维度为运维管理员提供底层可用域资源预估需求,以便根据活跃情况管理员提前扩容。
本方法中活跃度数据每两周进行重置为0,由于活跃度代表用户对该云服务感兴趣,可能存在申请的需求,结合生产实际,若存在申请需求通常会尽快进行资源申请,资源申请走订单流程,通过订单实施成功、实施失败两个JobManger进行再次分析,资源申请后的活跃数据不再具有参考值,因此每两周数据更新模块进行清零。本模块接收到的消息格式为(RegionId_AvailableZoneId_ServiceId,time_1),通过Key“RegionId_AvailableZoneId_ServiceId”获取当前数据库中累积值“currentTime_num”,并按照以下公式计算最新值:
currentTime=currentTime+time
num=num+1
最终将最新活跃值更新至Redis数据库。
3、数据更新模块
数据更新模块(Data Update Module)主要是通过Redis数据库对初始化数据、和实时计算更新完的数据进行存储,并接受资源整合活跃度建模模块、可视化模块的调用进行存取数据。本方法中选择Redis数据库作为数据存储层,主要依据为作为基于内存的Key-Value高性能数据库能够很好的满足实时计算模块和可视化模块需要对数据进行高吞吐、低延时的存取。
数据更新模块除了被其他模块调用存取数据之外,还包括初始化模块、扩容更新模块、定时重置模块。初始模块主要对数据进行初始化,包括通过调用信创云平台运维侧接口,获取Region、可用域总体资源等初始数据。扩容更新模块主要被运维管理员扩容模块进行调用,当运维管理员完成一次扩容后,通过调用扩容更新模块接口,对该资源池总体资源进行更新,并按照资源整合活跃度建模模块中所述,将因资源不足实施失败的预估需求量,即带有“lackResFailed”标志的对应云服务指标重置为0。定时重置模块主要是每周五晚对因其他原因导致云服务申请失败而计算出的累积需求进行重置,并且每隔一周周五晚对所有云服务的活跃度次数和时长进行重置。
4、数据可视化模块
数据可视化模块(Data Visualization Module)主要由基于Springboot开发的后端微服务和基于ECharts的前端图表展示模块组成,为运维人员提供直观、生动、可交互的数据可视化前端体验。基于Springboot开发的后端微服务通过获取Redis数据库中各个Region、AvailableZone的总体资源、已分配量,以及每个可用域内CPU、内存分配率最高的前五台宿主机信息;并展示每个区域对应各个可用域下潜在资源需求,由因资源不足实施失败的需求和其他原因实施失败的需求之和组成。同时,对各个区域各个可用域下的用户活跃度通过访问次数、访问时长两个图表共同体现。
5、实时预警模块
实时预警模块(Real-time Warning Module)主要是将基于Flink实时流计算的资源整合、活跃度建模模块中的预警详细结论信息通过调用已有的监控平台接口发送至告警平台,通过已有告警平台的邮件、短信通知功能,实时的将云平台各项预警信息发送给运维管理员,以便及时处置,保障生产稳定运行。
本实施例通过以下具体步骤实现(详见附图2):
步骤S01:由于本方法中使用的Kafka部署依赖于Zookeeper,Flink集群部署需要基于Hadoop的Yarn组件,Zookeeper同样是Hadoop的重要组件,因此先部署Hadoop平台,本方法中安装配置步骤概述如下:
①所有节点安装JDK并配置环境变量,本方法使用JDK版本为“1.8.0_202”;
②配置集群各个节点之间免密登陆,关闭集群各个节点防火墙、SeLinux,将所有节点主机名信息添加到第一个主节点/etc/hosts文件,并将该文件通过scp分发到各个节点;
③所有节点解压Hadoop安装文件,本方法使用版本号为“hadoop-3.2.2”,使用命令“tar-zxvf hadoop-3.2.2.tar.gz”解压,并重命名为hadoop,配置hadoop环境变量;
④修改Hadoop配置文件,明确服务访问地址,HDFS文件副本数量等配置信息。需要更新hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml四个配置文件并分发到各个节点;
⑤执行命令“hadoop namenode-format”格式化集群,执行“start-all.sh”启动集群。
步骤S02:部署分布式消息队列Kafka集群,本方法中安装配置步骤概述如下:
①所有节点解压Kafka安装文件,本方法使用版本号为“kafka_2.12-3.0.0”,使用命令“tar-zxvf kafka_2.12-3.0.0.tgz”解压,并重命名为kafka,配置kafka环境变量;
②修改config目录下的server.properties配置文件,具体配置如下:
/>
③将配置文件分发到其他节点上,并修改broker.id,从首节点id开始依次递增,不能重复;
④启动集群(先启动Zookeeper),此处集群启动命令可以写成脚本进行批量启停:
bin/kafka server start.sh-daemon config/server.properties
步骤S03:部署本方法中使用到的分布式流计算Flink集群,本方法中采用Application Mode模式进行部署,安装配置步骤概述如下:
①所有节点解压Flink安装文件,本方法使用版本号为“flink-1.13.0-bin-scala_2.12”,使用命令“tar-zxvf flink-1.13.0-bin-scala_2.12.tgz”解压,并重命名为flink,配置flink环境变量;
②进入到解压目录里conf下修改配置文件flink-conf.yaml,修改jobmanager.rpc.address如下:
jobmanager.rpc.address:hadoop102
③将主节点信息添加到masters文件如下:
hadoop102:8081
④将计算节点主机名添加到workers文件如下:
hadoop103
hadoop104
⑤根据实际情况在flink-conf.yaml文件对集群中的JobManager和TaskManager组件进行优化配置,主要配置项如下:
jobmanager.memory.process.size、taskmanager.memory.process.size分别是对JobManager、TaskManager进程可使用到的全部内存进行配置,包括JVM元空间和其他开销,默认为1600M,可以根据集群规模进行适当调整。taskmanager.numberOfTaskSlots:对每个TaskManager能够分配的Slot数量进行配置,默认为1,可根据TaskManager所在的机器能够提供给Flink的CPU数量决定。Slot为TaskManager中具体运行一个任务所分配的计算资源。
步骤S04:搭建部署一主两从三哨兵Redis数据库集群,并部署运行数据更新模块中初始化模块获取信创云平台各个区域、可用域资源总数、当前使用情况并保存至数据库中;
步骤S05:部署并使用“java-jar”运行数据采集预处理模块微服务、数据可视化模块后端微服务、实时预警模块微服务;
步骤S06:使用nginx部署并发布数据可视化模块前端图表展示模块;
步骤S07:提交Flink流计算作业,本方法分别提交了“处理订单实施成功”、“处理订单实施失败”、“处理用户活跃度”三个作业的JobManger,每个作业提交方法如下:
①将对应作业处理米快Jar包放到lib/目录下,执行命令“./bin/standalonejob.sh start job入口类”启动JobManager;
②使用命令“./bin/taskmanager.sh start”启动TaskManager。
步骤S08:访问前端页面,即可实时查看云平台资源情况、用户活跃度;此外运维管理员可以实时收到预警信息。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,包括以下步骤:
数据采集预处理步骤:通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据处理步骤:通过分布式流处理引擎分别根据所述订单实施成功消息,更新信创云平台中可用域资源的分配率;根据所述订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化步骤:将所述数据处理步骤中获取的分配率、预估需求和用户活跃值进行可视化显示;
数据预警步骤:根据数据处理步骤中计算的分配率和预估需求,接收和发出预警信息。
2.根据权利要求1所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,所述分布式消息队列为基于Kafka的分布式消息队列,包括生产者、主题和消费者,所述生产者和主题的数量均为多个;
各个所述生产者分别用于在用户下单申请云服务资源时,生成订单实施成功消息和订单实施失败消息;在发生云服务介绍页面点击与返回事件时,生成云服务介绍页面点击与返回事件消息;在发生云服务资源申请页面点击与返回事件时,生成云服务资源申请页面点击与返回事件消息;
各个主题并行接收所述订单实施成功消息、订单实施失败消息,并且通过一个主题接收所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
所述消费者并行接收各个主题传输的消息,并执行所述数据处理步骤。
3.根据权利要求1所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,
所述订单实施成功消息和订单实施失败消息均包括Key值和用户申请的云资源在对应配额指标下消费的配额数量;
所述云服务介绍页面点击与返回事件消息包括Key值和浏览时长;
所述云服务资源申请页面点击与返回事件消息包括Key值和浏览时长;
所述订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息中的Key值均包括用户申请的云服务资源所在区域ID和可用分区ID,以及用户申请的云资源ID;
所述订单实施成功消息和订单实施失败消息的Key值还包括本次生成订单ID、用户下单云服务的配额削减指标项。
4.根据权利要求3所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,所述分布式流处理引擎为Flink实时流计算引擎,包括客户端、作业管理器和任务管理器,所述作业管理器用于对作业进行中央调度管理,所述任务管理器用于对作业进行实时计算;所述Flink实时流计算引擎的集群部署模式为应用模式,该应用模式包括:为每一个任务建立一个作业管理器,各个作业管理器将作业提交至自身对应的作业管理器。
5.根据权利要求4所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,处理所述订单实施成功消息的作业管理器,在接收到订单实施成功消息后,根据所述用户申请的云服务资源所在区域ID和可用分区ID,获取云服务资源对应区域、可用域下的已用量,从而计算该可用域下的分配率;
将所述分配率与预设的分配阈值对比,若分配率大于或等于分配阈值,则发出预警信息。
6.根据权利要求4所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,处理所述订单实施失败消息的作业管理器,在接收到订单实施失败消息后,判断失败原因是否为资源不足;
对于各个云服务资源对应区域的可用域下,分别统计当前因资源不足已累积的需求值,以及其他原因未成功申请云服务的累积需求值,并累加得到总预估需求;
将所述总预估需求与当前云服务资源对应区域的可用域的云资源已用量求和,并处于当前云服务资源对应区域的云资源总数计算出需求分配率,若该需求分配率大于或等于预设的需求分配阈值,则发出预警信息。
7.根据权利要求4所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,处理所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息的作业管理器,在接收到云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息后,获取对应的云服务用户访问次数和访问时长,作为预估对应的可用域资源的用户活跃值数据;
每个预设的第一时间将所述用户活跃值数据清零。
8.根据权利要求1所述的一种基于Flink流计算的信创云平台资源展示和预警方法,其特征在于,所述方法还包括数据更新步骤:
初始化云服务资源所在区域和可用域总体资源的数据;
对云服务资源的资源池总体资源进行扩容更新;
定时对数据处理步骤中计算的累积数据和用户活跃值进行重置。
9.一种基于Flink流计算的信创云平台资源展示和预警***,其特征在于,包括:
数据采集预处理模块,用于通过分布式消息队列获取用户在信创云平台上的动作信息,生成订单实施成功消息、订单实施失败消息、云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息;
数据计算整合建模模块,用于通过分布式流处理引擎分别根据所述订单实施成功消息,更新信创云平台中可用域资源的分配率;根据所述订单实施失败消息,获取失败原因为资源不足的情况,计算因资源不足已累积的需求值,得到预估需求;根据所述云服务介绍页面点击与返回事件消息和云服务资源申请页面点击与返回事件消息,获取云服务用户访问次数和访问时长,得到用户活跃值;
数据可视化模块,用于将所述数据计算整合建模模块中获取的分配率、预估需求和用户活跃值进行可视化显示;
实时预警模块,用于根据数据计算整合建模模块中计算的分配率和预估需求,接收和发出预警信息。
10.根据权利要求9所述的一种基于Flink流计算的信创云平台资源展示和预警***,其特征在于,所述***还包括数据更新模块,用于初始化云服务资源所在区域和可用域总体资源的数据;对云服务资源的资源池总体资源进行扩容更新;定时对数据计算整合建模模块中计算的累积数据和用户活跃值进行重置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310480097.XA CN116775420A (zh) | 2023-04-28 | 2023-04-28 | 基于Flink流计算的信创云平台资源展示和预警方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310480097.XA CN116775420A (zh) | 2023-04-28 | 2023-04-28 | 基于Flink流计算的信创云平台资源展示和预警方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116775420A true CN116775420A (zh) | 2023-09-19 |
Family
ID=87993830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310480097.XA Pending CN116775420A (zh) | 2023-04-28 | 2023-04-28 | 基于Flink流计算的信创云平台资源展示和预警方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116775420A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234697A (zh) * | 2023-11-16 | 2023-12-15 | 中国人民解放军国防科技大学 | 一种保守时间同步并行事件调度计算架构和方法 |
-
2023
- 2023-04-28 CN CN202310480097.XA patent/CN116775420A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234697A (zh) * | 2023-11-16 | 2023-12-15 | 中国人民解放军国防科技大学 | 一种保守时间同步并行事件调度计算架构和方法 |
CN117234697B (zh) * | 2023-11-16 | 2024-02-06 | 中国人民解放军国防科技大学 | 一种保守时间同步并行事件调度计算架构和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230004434A1 (en) | Automated reconfiguration of real time data stream processing | |
US11755452B2 (en) | Log data collection method based on log data generated by container in application container environment, log data collection device, storage medium, and log data collection system | |
US10481948B2 (en) | Data transfer in a collaborative file sharing system | |
Coutinho et al. | Elasticity in cloud computing: a survey | |
US8230056B2 (en) | Enterprise management system | |
CN111309409B (zh) | 一种api服务调用实时统计方法 | |
US10560544B2 (en) | Data caching in a collaborative file sharing system | |
CN103092698A (zh) | 云计算应用自动部署***及方法 | |
CN111506412A (zh) | 基于Airflow的分布式异步任务构建、调度***及方法 | |
CN102880503A (zh) | 数据分析***及数据分析方法 | |
CN107341044A (zh) | 一种分布式数据中心统一监控架构及方法 | |
CN108874524A (zh) | 大数据分布式任务调度*** | |
CN108920153A (zh) | 一种基于负载预测的Docker容器动态调度方法 | |
US10498817B1 (en) | Performance tuning in distributed computing systems | |
CN111352903A (zh) | 日志管理平台、日志管理方法、介质以及电子设备 | |
CN116775420A (zh) | 基于Flink流计算的信创云平台资源展示和预警方法及*** | |
Zhao et al. | GRESS-a Grid Replica Selection Service. | |
US10348814B1 (en) | Efficient storage reclamation for system components managing storage | |
CN109840138A (zh) | 一种企业管理数据分析处理***及其方法 | |
US10893015B2 (en) | Priority topic messaging | |
Chen et al. | QoS evaluation of JMS: An empirical approach | |
Korontanis et al. | Real-time monitoring and analysis of edge and cloud resources | |
CN111049846A (zh) | 数据处理方法和装置、电子设备及计算机可读存储介质 | |
CN103078764A (zh) | 基于虚拟计算任务的运行监测***及方法 | |
CN111381921B (zh) | 一种基于Ambari的前后端分离***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |