CN113157383A - 一种OpenStack环境下动态调整超配比的方法 - Google Patents
一种OpenStack环境下动态调整超配比的方法 Download PDFInfo
- Publication number
- CN113157383A CN113157383A CN202110088397.4A CN202110088397A CN113157383A CN 113157383 A CN113157383 A CN 113157383A CN 202110088397 A CN202110088397 A CN 202110088397A CN 113157383 A CN113157383 A CN 113157383A
- Authority
- CN
- China
- Prior art keywords
- utilization rate
- super
- configuration
- agent
- nova
- 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 21
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 11
- 230000005012 migration Effects 0.000 claims description 9
- 238000013508 migration Methods 0.000 claims description 9
- 241000380131 Ammophila arenaria Species 0.000 claims description 7
- 238000007726 management method Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000010200 validation analysis Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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
- G06F9/505—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 considering the load
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种OpenStack环境下动态调整超配比的方法,属于云计算技术领域,本发明通过对虚拟机的资源历史使用情况进行统计和分析,预判业务负载运行轨迹,对云环境中的虚拟机进行分类,从时间和空间两个维度进行精准预演,根据预演结果计算超配比,对候选节点进行超配比热生效,最后智能化将低负载的虚拟机集中到某些计算节点,这样既能节省资源承载更多的业务,也对现有云基础设施充分利用,满足云计算场景下按需、弹性的要求。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种OpenStack环境下动态调整超配 比的方法。
背景技术
近年来,云计算和大数据等新技术协同推进,在得到广泛应用的同时,也带 来了资源无法充分使用的问题。OpenStack作为云计算领域的业界标准,在私有云、 公有云等场景完成众多的商业落地,随之带来的资源调度问题也在慢慢突显。 OpenStack中计算节点实现了CPU/内存等资源的超配,如CPU配置1:2的超配比, 1个核可对外提供2个核的调度,这样使得物理资源得到充分的利用。但云上很多 业务是有时效性,当负载变化时,固定配置超配比的计算节点需要视变化动态调 整,使更多的业务能调度到此节点,保证资源的充分利用,减少单位成本。
现有的OpenStack环境中,计算节点的CPU、内存的超配比是静态固定的,无 法根据业务负载情况进行调整,会出现监控到负载整体较轻但新业务资源无法分 配的情况
发明内容
为了解决以上技术问题,本发明提供了一种OpenStack环境下动态调整超配 比的方法,持续监控业务负载情况,对历史数据进行分析并确定未来趋势走向, 进而动态调高计算节点的超配比,通过热迁移的方式集中负载轻的业务到这些节 点,使得其他节点能调度和运行新的业务。
本发明的技术方案是:
一种OpenStack环境下动态调整超配比的方法,
通过对虚拟机的资源历史使用情况进行统计和分析,预判业务负载运行轨迹, 对云环境中的虚拟机进行分类,从时间和空间两个维度进行预演,根据预演结果 计算超配比,对候选节点进行超配比热生效,最后智能化将低负载的虚拟机集中 到计算节点。
进一步的,
使用一种以上方式获取资源使用率,包括
1)使用Qemu-guest-agent通过socket和宿主机传递虚拟机的CPU、内存使 用率;
2)增加Telegraf的input实现对接Qemu-guest-agent的输出。
在每个计算节点容器化部署监控软件代理,此代理使用Telegraf软件采集宿 主机的CPU使用率和内存使用率;为每个虚拟机虚拟qemu-guest-agent的socket 设备,通过此设备与虚拟机内部安装的qemu-guest-agent进行交互,获取虚拟机 的CPU使用率和内存使用率。
采集周期为15s,监控代理把数据进行序列化,发送到服务端。
进一步的,
基于Watcher组件实现策略管理,包括
1)Watcher组件容器化,使用Helm部署在Kubernetes上;
2)增加算法插件,从Prometheus获取监控指标进行趋势分析,提出低负载 时间可容忍周期,当超过此周期,移入可迁移队列。
Watcher服务提供策略管理功能,包括策略的增删改查,每个策略包含一个特 定业务场景此插件从Prometheus获取监控指标,通过监控指标判断2个条件:
1)待变更配置的计算节点:采用得分机制,对CPU使用率和内存使用率正向 打分,选在得分低的节点作为候选者,候选者的数量视环境规模和业务负载优先 级部署时进行配置;
2)待迁移的虚拟机:同样采用得分机制,对CPU使用率和内存使用率正向打 分,选在得分低的节点作为候选者,如持续时间超出可容忍周期则放置到迁移队 列;
得分低指依据CPU使用率和内存使用率正向打分,采用10分制,对候选节点 进行从小到大排序,选择1~5个节点;
判断好后,则在指定时间进行策略预演和执行,预演是对待迁移的虚拟机模 拟完成迁移后,计算节点变更的配置是否能满足此次策略执行,如不满足则会缩 小范围,减少待迁移的虚拟机,直到预演成功,最后使用nova的热迁移功能完成 策略。
进一步的,
热更改nova配置,包括
1)nova的配置项存储在kubernetes的secrets;
2)调用Kubernetes的API完成Secrets的修改,nova-compute服务实时获 取配置更改并生效,无需重启。
使用Helm按照静态超配比配置部署OpenStack的nova组件,nova-compute 服务采用Kubernetes的POD的方式运行,配置项使用Kubernetes的secrets进 行存储;调用Kubernetes的API获取当前运行secrets,对其进行修改,动态调 整超配比。
本发明的有益效果是
改变静态配置超配比的方式,结合实际业务负载情况,对负载进行趋势分析, 一方面对低负载的计算节点实行超配比的热更改,另一方面对低负载虚拟机进行 热迁移到变更的计算节点。使用此发明后,可以使得迁移出低负载虚拟机的节点 能承载新业务,同时根据负载能进行实时迁移调整,使得计算节点的资源能充分 利用,避免浪费。
附图说明
图1是本发明的工作框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明 实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然, 所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中 的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有 其他实施例,都属于本发明保护的范围。
本发明提出一种OpenStack环境下动态调整超配比的方法,涉及到OpenStack、Telegraf、Prometheus等多种开源技术,此处对这些技术做简单的解释。
OpenStack:一整套开源软件项目的集合,提供部署云的操作平台和工具集, 旨在为用户提供虚拟计算、存储和网络服务。其中Nova组件为计算服务,负责虚 拟机的管理功能,Watcher组件为资源优化服务,负责云资源的整合和动态调度;
Telegraf:用Golang写的开源数据收集Agent,基于插件驱动,本身提供的 输入和输出插件非常丰富;
Prometheus:新一代的云原生监控系统,适合记录纯数字的时间序列,具备 多维数据模型查询、灵活的查询语句等特点。
本发明在OpenStack已有实现的基础上进行创新性改进,包括趋势分析、配 置变更与策略管理等模块:
趋势分析:在每个计算节点容器化部署监控软件代理,此代理使用Telegraf 软件采集宿主机的CPU使用率和内存使用率。为每个虚拟机虚拟qemu-guest-agent 的socket设备,通过此设备与虚拟机内部安装的qemu-guest-agent进行交互, 获取虚拟机的CPU使用率和内存使用率。采集周期为15s,监控代理把数据进行序 列化,发送到服务端。服务端设定低负载时间可容忍周期,分析每个虚拟机的负 载指标(CPU使用率),如持续低水平运行超过可容忍周期,则把这些虚拟机加入 到待迁移队列,准备执行。
配置变更:使用Helm按照静态超配比(如1:6)配置部署OpenStack的nova 组件,nova-compute服务采用Kubernetes的POD的方式运行,配置项使用 Kubernetes的secrets进行存储,因配置项中有敏感信息。调用Kubernetes的 API获取当前运行secrets,对其进行修改,动态调整超配比,如调整到1:16,本 发明采用配置热生效的方式无需重启nova-compute的服务POD。
策略管理:基于OpenStack的Watcher组件进行改造,新开发算法插件,此 插件串联起趋势分析和配置变更。改造后的Watcher服务提供策略管理功能,包 括策略的增删改查,每个策略包含一个特定业务场景,如仅对某几台计算节点执 行,执行成功率多大,失败如何回滚等,默认全局进行调整。此插件从Prometheus 获取监控指标,通过监控指标判断2个条件:
1)待变更配置的计算节点:采用得分机制,对CPU使用率和内存使用率正向 打分,选在得分低的节点作为候选者,候选者的数量视环境规模和业务负载优先 级部署时进行配置;
2)待迁移的虚拟机:同样采用得分机制,对CPU使用率和内存使用率正向打 分,选在得分低的节点作为候选者,如持续时间超出可容忍周期则放置到迁移队 列。
判断好后,则在指定时间(避开业务峰值时期)进行策略预演和执行,预演 是对待迁移的虚拟机模拟完成迁移后,计算节点变更的配置是否能满足此次策略 执行,如不满足则会缩小范围,减少待迁移的虚拟机,直到预演成功,最后使用 nova的热迁移功能完成策略。
框图说明:
Server侧:包含OpenStack的Watcher组件、Prometheus、Kubernetes的 api-server,Watcher组件包括watcher-decision-engine和watcher-applier服 务,全容器化,使用Helm部署在Kubernetes集群上;
Compute node侧:包括OpenStack nova组件的nova-compute服务、Telegraf, 全容器化,使用Helm部署在Kubernetes集群上。
以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非 用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、 等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种OpenStack环境下动态调整超配比的方法,其特征在于,
通过对虚拟机的资源历史使用情况进行统计和分析,预判业务负载运行轨迹,对云环境中的虚拟机进行分类,从时间和空间两个维度进行预演,根据预演结果计算超配比,对候选节点进行超配比热生效,最后智能化将低负载的虚拟机集中到计算节点。
2.根据权利要求1所述的方法,其特征在于,
使用一种以上方式获取资源使用率,包括
1)使用Qemu-guest-agent通过socket和宿主机传递虚拟机的CPU、内存使用率;
2)增加Telegraf的input实现对接Qemu-guest-agent的输出。
3.根据权利要求2所述的方法,其特征在于,
在每个计算节点容器化部署监控软件代理,此代理使用Telegraf软件采集宿主机的CPU使用率和内存使用率;为每个虚拟机虚拟qemu-guest-agent的socket设备,通过此设备与虚拟机内部安装的qemu-guest-agent进行交互,获取虚拟机的CPU使用率和内存使用率。
4.根据权利要求3所述的方法,其特征在于,
采集周期为15s,监控代理把数据进行序列化,发送到服务端。
5.根据权利要求1所述的方法,其特征在于,
基于Watcher组件实现策略管理,包括
1)Watcher组件容器化,使用Helm部署在Kubernetes上;
2)增加算法插件,从Prometheus获取监控指标进行趋势分析,提出低负载时间可容忍周期,当超过此周期,移入可迁移队列。
6.根据权利要求5所述的方法,其特征在于,
Watcher服务提供策略管理功能,包括策略的增删改查,每个策略包含一个特定业务场景此插件从Prometheus获取监控指标,通过监控指标判断2个条件:
1)待变更配置的计算节点:采用得分机制,对CPU使用率和内存使用率正向打分,选择从小到大1-5个节点作为候选者,候选者的数量视环境规模和业务负载优先级部署时进行配置;
2)待迁移的虚拟机:同样采用得分机制,对CPU使用率和内存使用率正向打分,选在从小到大1-5个节点的节点作为候选者,如持续时间超出可容忍周期则放置到迁移队列;
判断好后,则在指定时间进行策略预演和执行,预演是对待迁移的虚拟机模拟完成迁移后,计算节点变更的配置是否能满足此次策略执行,如不满足则会缩小范围,减少待迁移的虚拟机,直到预演成功,最后使用nova的热迁移功能完成策略。
7.根据权利要求1所述的方法,其特征在于,
热更改nova配置,包括
1)nova的配置项存储在kubernetes的secrets;
2)调用Kubernetes的API完成Secrets的修改,nova-compute服务实时获取配置更改并生效,无需重启。
8.根据权利要求7所述的方法,其特征在于,
使用Helm按照静态超配比配置部署OpenStack的nova组件,nova-compute服务采用Kubernetes的POD的方式运行,配置项使用Kubernetes的secrets进行存储;调用Kubernetes的API获取当前运行secrets,对其进行修改,动态调整超配比。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110088397.4A CN113157383A (zh) | 2021-01-22 | 2021-01-22 | 一种OpenStack环境下动态调整超配比的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110088397.4A CN113157383A (zh) | 2021-01-22 | 2021-01-22 | 一种OpenStack环境下动态调整超配比的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113157383A true CN113157383A (zh) | 2021-07-23 |
Family
ID=76878956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110088397.4A Pending CN113157383A (zh) | 2021-01-22 | 2021-01-22 | 一种OpenStack环境下动态调整超配比的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113157383A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113938379A (zh) * | 2021-09-29 | 2022-01-14 | 浪潮云信息技术股份公司 | 一种动态加载云平台日志采集配置的方法 |
CN116048814A (zh) * | 2023-02-21 | 2023-05-02 | 上海汇付支付有限公司 | 一种基于监控效用数据的应用资源规格自动优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765642A (zh) * | 2015-03-24 | 2015-07-08 | 长沙理工大学 | 云环境下基于动态预测模型的虚拟机部署方法及系统 |
CN106020936A (zh) * | 2016-06-07 | 2016-10-12 | 深圳证券通信有限公司 | 一种金融云平台基于运行负载的虚拟机调度方法及装置 |
US9582328B1 (en) * | 2015-06-19 | 2017-02-28 | EMC IP Holding Company LLC | Allocation of resources in computing environments |
CN106970831A (zh) * | 2017-05-15 | 2017-07-21 | 金航数码科技有限责任公司 | 一种面向云平台的虚拟机资源动态调度系统及方法 |
CN107295090A (zh) * | 2017-06-30 | 2017-10-24 | 北京奇艺世纪科技有限公司 | 一种资源调度的方法和装置 |
-
2021
- 2021-01-22 CN CN202110088397.4A patent/CN113157383A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765642A (zh) * | 2015-03-24 | 2015-07-08 | 长沙理工大学 | 云环境下基于动态预测模型的虚拟机部署方法及系统 |
US9582328B1 (en) * | 2015-06-19 | 2017-02-28 | EMC IP Holding Company LLC | Allocation of resources in computing environments |
CN106020936A (zh) * | 2016-06-07 | 2016-10-12 | 深圳证券通信有限公司 | 一种金融云平台基于运行负载的虚拟机调度方法及装置 |
CN106970831A (zh) * | 2017-05-15 | 2017-07-21 | 金航数码科技有限责任公司 | 一种面向云平台的虚拟机资源动态调度系统及方法 |
CN107295090A (zh) * | 2017-06-30 | 2017-10-24 | 北京奇艺世纪科技有限公司 | 一种资源调度的方法和装置 |
Non-Patent Citations (2)
Title |
---|
李强: "《QEMU/KVM源码解析与应用》", 30 September 2020, 机械工业出版社 * |
陈金窗 等: "《Prometheus监控技术与实战》", 30 April 2020, 机械工业出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113938379A (zh) * | 2021-09-29 | 2022-01-14 | 浪潮云信息技术股份公司 | 一种动态加载云平台日志采集配置的方法 |
CN116048814A (zh) * | 2023-02-21 | 2023-05-02 | 上海汇付支付有限公司 | 一种基于监控效用数据的应用资源规格自动优化方法 |
CN116048814B (zh) * | 2023-02-21 | 2023-10-03 | 上海汇付支付有限公司 | 一种基于监控效用数据的应用资源规格自动优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ahmad et al. | A survey on virtual machine migration and server consolidation frameworks for cloud data centers | |
Coutinho et al. | Elasticity in cloud computing: a survey | |
AU2011312029B2 (en) | Automatic replication of virtual machines | |
CN111381928B (zh) | 一种虚拟机迁移方法、云计算管理平台和存储介质 | |
CN113157383A (zh) | 一种OpenStack环境下动态调整超配比的方法 | |
Sharkh et al. | An evergreen cloud: Optimizing energy efficiency in heterogeneous cloud computing architectures | |
Amoon et al. | On the design of reactive approach with flexible checkpoint interval to tolerate faults in cloud computing systems | |
Luo et al. | Improving failure tolerance in large-scale cloud computing systems | |
Sharma et al. | Dynamic resource provisioning for sustainable cloud computing systems in the presence of correlated failures | |
US10938655B2 (en) | Enterprise cloud garbage collector | |
CN108306912A (zh) | 虚拟网络功能管理方法及其装置、网络功能虚拟化系统 | |
CN106201658A (zh) | 一种迁移虚拟机目的主机多目标优化选择方法 | |
You et al. | Ursa: Scalable load and power management in cloud storage systems | |
CN105930202B (zh) | 一种三阈值的虚拟机迁移方法 | |
KR102135209B1 (ko) | 가상 머신 배치 모의 실험 방법 및 이를 구현하는 가상 머신 배치 모의 실험 장치 | |
He et al. | Queuing-oriented job optimizing scheduling in cloud mapreduce | |
Zola et al. | Optimising for energy or robustness? Trade-offs for VM consolidation in virtualized datacenters under uncertainty | |
CN112241304A (zh) | 龙芯集群内的超融合资源的调度方法、装置及龙芯集群 | |
Durairaj et al. | MOM-VMP: multi-objective mayfly optimization algorithm for VM placement supported by principal component analysis (PCA) in cloud data center | |
Zhang et al. | Research on the construction and robustness testing of SaaS cloud computing data center based on the MVC design pattern | |
US11853936B2 (en) | Minimizing the environmental impact of workloads | |
Hassannezhad Najjari et al. | A systematic overview of live virtual machine migration methods | |
Okonor et al. | Intelligent agent-based technique for virtual machine resource allocation for energy-efficient cloud data centre | |
Biran et al. | Coordinating green clouds as data-intensive computing | |
Li et al. | Node Resource Balance Scheduling Algorithm of Power Internet of Things Based on Big Data |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210723 |