System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,尤其涉及一种容器自调节方法、装置、电子设备及介质。
技术介绍
1、随着云计算的迅猛发展,容器化和微服务架构成为了构建现代应用的重要方式。但是,随之而来的是容器化后,应用对于资源以及业务的评估不准确导致经常出现容器cpu、内存使用率高或其他异常导致容器宕机,或是应用占用了大量空闲资源不释放,导致资源利用率低,没有充分利用到微服务带来的优势。因此,需要一种方法实时监控容器运行状态,根据容器运行状态自动进行扩容或缩容。
2、目前,部分应用是通过手动扩/缩容的方式进行容器扩缩容。这种方式往往是系统出现异常后,才能通过一系列异常现象排查到是服务部署问题,需要对资源进行扩容,排查时间较长,进而导致业务中断时间较长,效率较低。部分运维经验丰富一些的应用,会采用提前配置阈值的办法,例如,当容器cpu使用率超过90%的时候,对容器进行扩容。这种方式虽然能够解决部分问题,但是往往只能应对较为单一的场景,不够灵活,难以满足自动化、智能化的需求。
技术实现思路
1、为解决上述技术问题或至少部分地解决上述技术问题,本专利技术实施例提供一种容器自调节方法、装置、电子设备及介质。
2、第一方面,本专利技术实施例提供了一种容器自调节方法,包括:
3、采集容器的运行状态信息;
4、根据所述运行状态信息和预设的势场模型,确定所述容器的势场;基于所述容器的势场和容器调节参数,确定所述容器的目标数量;
5、根据所述容器的目标数量和所述容器的
6、对待扩容容器进行扩容配置和/或对待缩容容器进行缩容配置。
7、可选地,所述容器的运行状态信息包括以下一种或多种:所述容器的标识信息、cpu使用率、内存使用率、io利用率。
8、可选地,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场函数;
9、所述根据所述运行状态信息和预设的势场模型,确定所述容器的势场,包括:
10、根据所述cpu使用率和所述引力场函数,计算第一引力场,根据所述cpu使用率和所述第一斥力场函数,计算第一斥力场;
11、根据所述内存使用率和所述引力场函数,计算第二引力场,根据所述内存使用率和所述第一斥力场函数,计算第二斥力场;
12、根据所述io利用率和所述第二斥力场函数,计算第三斥力场;
13、根据所述第一引力场、所述第二引力场、所述第一斥力场、所述第二斥力场和所述第三斥力场,确定所述容器的势场。
14、可选地,所述容器调节参数包括容器调节系数;
15、所述基于所述容器的势场和容器调节参数,确定所述容器的目标数量,包括:将所述容器的势场与所述容器调节系数的乘积作为所述容器的目标数量。
16、第二方面,本专利技术实施例提供了一种容器自调节装置,包括:
17、采集模块,用于采集容器的运行状态信息;
18、计算模块,用于根据所述运行状态信息和预设的势场模型,确定所述容器的势场;基于所述容器的势场和容器调节参数,确定所述容器的目标数量;根据所述容器的目标数量和所述容器的当前数量,确定待扩容容器和/或待缩容容器;
19、控制模块,用于对待扩容容器进行扩容配置和/或对待缩容容器进行缩容配置。
20、可选地,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场函数;所述计算模块还用于:根据所述cpu使用率和所述引力场函数,计算第一引力场,根据所述cpu使用率和所述第一斥力场函数,计算第一斥力场;根据所述内存使用率和所述引力场函数,计算第二引力场,根据所述内存使用率和所述第一斥力场函数,计算第二斥力场;根据所述io利用率和所述第二斥力场函数,计算第三斥力场;根据所述第一引力场、所述第二引力场、所述第一斥力场、所述第二斥力场和所述第三斥力场,确定所述容器的势场。
21、可选地,所述容器调节参数包括容器调节系数;
22、所述计算模块还用于:将所述容器的势场与所述容器调节系数的乘积作为所述容器的目标数量。
23、可选地,所述采集模块还用于:将所述容器的运行状态信息、所述容器所在的集群节点的标识信息、时间戳,生成预设格式的报文,将所述报文发送至所述计算模块,所述时间戳用于指示采集所述容器的运行状态信息的时间。
24、可选地,所述采集模块还用于:在将所述报文发送至所述计算模块之前,对所述报文进行加密。
25、可选地,所述计算模块还用于包括数据校验子模块;所述数据校验子模块用于:根据所述时间戳和当前时间,校验所述报文的有效性;根据所述报文的格式,校验所述报文的合法性。
26、可选地,所述计算模块还用于:对比接收的各个报文,确定从各个集群节点中采集的所述运行状态信息的时间是否一致;在确定从各个集群节点中采集的所述运行状态信息的时间一致的情况下,针对每一容器,根据所述容器的运行状态信息和预设的势场模型,确定所述容器的势场。
27、可选地,所述计算模块还用于;对各个集群节点中所部署的容器进行聚合,以聚合各个集群节点中相同的容器对应的目标数量,将聚合后的目标数量作为容器的需求数量;根据所述容器的需求数量和所述容器的当前数量,确定待扩容容器和/或待缩容容器。
28、第三方面,本专利技术实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任一实施例的容器自调节方法。
29、第四方面,本专利技术实施例提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术任一实施例的容器自调节方法。
30、本专利技术实施例提供的技术方案至少带来以下有益效果:
31、本专利技术实施例根据容器的运行状态信息和预设的势场模型,确定容器的势场,根据容器的势场和容器调节参数,确定容器的目标数量,根据容器的目标数量和容器的当前数量,对容器进行扩容配置或缩容配置。该技术方案能够实现对容器数量的智能化伸缩控制,提升容器自愈能力,减少故障产生,同时可以减少运维人员的负担,优化容器运行环境,提高集群资源利用率和系统鲁棒性。
32、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
本文档来自技高网...【技术保护点】
1.一种容器自调节方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述容器的运行状态信息包括以下一种或多种:所述容器的标识信息、CPU使用率、内存使用率、IO利用率。
3.根据权利要求2所述的方法,其特征在于,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场函数;
4.根据权利要求1所述的方法,其特征在于,所述容器调节参数包括容器调节系数;
5.一种容器自调节装置,其特征在于,包括:
6.根据权利要求5所述的装置,其特征在于,所述容器的运行状态信息包括以下一种或多种:所述容器的标识信息、CPU使用率、内存使用率、IO利用率。
7.根据权利要求6所述的装置,其特征在于,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场函数;
8.根据权利要求5述的装置,其特征在于,所述容器调节参数包括容器调节系数;
9.根据权利要求5所述的装置,其特征在于,所述采集模块还用于:
10.根据权利要求9所述的装置,其特征在于,所述采集模块还用于:在将所述
11.根据权利要求9所述的装置,其特征在于,所述计算模块包括数据校验子模块;
12.根据权利要求9所述的装置,其特征在于,所述计算模块还用于:
13.根据权利要求9所述的装置,其特征在于,所述计算模块还用于;
14.一种电子设备,其特征在于,包括:
15.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。
...【技术特征摘要】
1.一种容器自调节方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述容器的运行状态信息包括以下一种或多种:所述容器的标识信息、cpu使用率、内存使用率、io利用率。
3.根据权利要求2所述的方法,其特征在于,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场函数;
4.根据权利要求1所述的方法,其特征在于,所述容器调节参数包括容器调节系数;
5.一种容器自调节装置,其特征在于,包括:
6.根据权利要求5所述的装置,其特征在于,所述容器的运行状态信息包括以下一种或多种:所述容器的标识信息、cpu使用率、内存使用率、io利用率。
7.根据权利要求6所述的装置,其特征在于,所述预设的势场模型包括引力场函数、第一斥力场函数和第二斥力场...
【专利技术属性】
技术研发人员:卢永周,张忠吉,沈进,黄敏娜,黄忠格,黄有槟,郑剑武,王子璇,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。