CN113157383A - 一种OpenStack环境下动态调整超配比的方法 - Google Patents

一种OpenStack环境下动态调整超配比的方法 Download PDF

Info

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
Application number
CN202110088397.4A
Other languages
English (en)
Inventor
谢涛涛
孙思清
江燕
宋伟
李敏
蔡卫卫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202110088397.4A priority Critical patent/CN113157383A/zh
Publication of CN113157383A publication Critical patent/CN113157383A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/505Allocation 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution 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作为云计算领域的业界标准,在私有云、 公有云等场景完成众多的商业落地,随之带来的资源调度问题也在慢慢突显。 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,对其进行修改,动态调整超配比。
CN202110088397.4A 2021-01-22 2021-01-22 一种OpenStack环境下动态调整超配比的方法 Pending CN113157383A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 北京奇艺世纪科技有限公司 一种资源调度的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
李强: "《QEMU/KVM源码解析与应用》", 30 September 2020, 机械工业出版社 *
陈金窗 等: "《Prometheus监控技术与实战》", 30 April 2020, 机械工业出版社 *

Cited By (3)

* Cited by examiner, † Cited by third party
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