0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

openEuler资源利用率提升之道:虚拟机混部OpenStack调度

openEuler 来源:openEule 2023-01-30 10:26 次阅读

虚拟机混合部署是指把对 CPU、IO、Memory 等资源有不同需求的虚拟机通过调度方式部署、迁移到同一个计算节点上,从而使得节点的资源得到充分利用。

虚拟机混合部署的场景有多种,比如通过动态资源调度满足节点资源的动态调整;根据用户使用习惯动态调整节点虚拟机分布等等。而虚拟机高低优先级调度也是其中的一种实现方法。在单机的资源调度分配上,区分出高低优先级,即高优先级虚机和低优先级虚机发生资源竞争时,资源优先分配给前者,严格保障其 QoS。

在 OpenStack Nova 中引入虚拟机高低优先级技术,再配合 Skylark QoS 服务能力,可以一定程度上满足虚拟机的混合部署要求。

实现方案

在 Nova 的虚拟机创建、迁移流程中引入高低优先级概念,虚拟机对象新增高低优先级属性。高优先级虚拟机在调度的过程中,会尽可能的调度到资源充足的节点,这样的节点需要至少满足内存不超卖、高优先级虚拟机所用 CPU 不超卖的要求。

用户创建 flavor 或创建虚机时,可指定其优先级属性。但优先级属性不影响 Nova 现有的资源模型及节点调度策略,即 Nova 仍按正常流程选取计算节点及创建虚机。虚机高低优先级特性主要影响虚机创建后单机层面的资源调度分配策略。高优先级虚机和低优先级虚机发生资源竞争时,资源优先分配给前者,严格保障其 QoS。

Nova 针对虚机高低优先级特性有以下改变:

VM 对象和 flavor 新增高低优先级属性配置。同时结合业务场景,约束高优先级属性只能设置给绑核类型虚机,低优先级属性只能设置给非绑核类虚机。

对于具有优先级属性的虚机,需修改 libvirt XML 配置,让单机上的 QoS 管理组件(名为 Skylark)感知,从而自动进行资源分配和 QoS 管理。

低优先级虚机的绑核范围有改变,以充分利用高优先级虚机空闲的资源。

如何使用

准备

假设有如下一台主机:

假设主机有 12 个 cpu core。

OS 是 openEuler 22.09,已安装 Skylark 服务,且内核版本符合 Syklark 要求。

已基于 RPM 安装部署好了 OpenStack Yoga 版本。

安装

安装 plugin

dnfinstallopenstack-plugin-priority-vm

配置数据库

nova-manageapi_dbsync

nova-managedbsync

3.重启 nova 服务

systemctlrestartopenstack-nova-*

配置

修改nova.conf文件

打开/etc/nova/nova.conf,修改[compute]内的cpu_dedicated_set、cpu_shared_set和cpu_priority_mix_enable,其中cpu_dedicated_set表示高优先级虚机使用的 CPU 核心,cpu_shared_set指低优先级虚机使用的 CPU 核心,cpu_priority_mix_enable表示是否允许低优先虚机同时使用cpu_dedicated_set的 CPU 核心,默认值是 False。

以此文章的主机为例,设置如下:

[compute]
cpu_dedicated_set=0-7
cpu_shared_set=8-11
cpu_priority_mix_enable=True

重启 nova-compute 服务

systemctlrestartopenstack-nova-compute

使用

创建新的 flavor

openstackflavorcreate--ram8192--disk50--vcpus8--public--propertyhw:cpu_priority='low'low_prio
openstackflavorcreate--ram8192--disk50--vcpus8--public--propertyhw:cpu_priority='high'--propertyhw:cpu_policy='dedicated'high_prio

使用新 flavor 创建虚拟机

openstack server create --flavor high_prio --image openEuler2203 --network private-network high_prio_test
openstack server create --flavor low_prio --image openEuler2203 --network private-network low_prio_test

检查

使用virsh list查看虚机 id,然后使用virsh vcpuinfo命令分别查看两个虚机,可以发现high_prio_test的 CPU 与 0-7 号 CPU 一一绑定,low_prio_test的 CPU 在 0-11 号 CPU 中范围绑定。

总结

本特性的实现已发布在 openEuler 22.09 创新版的 OpenStack Yoga 版本中,也会在即将发布的 openEuler 22.03 LTS SP1 的 OpenStack Train 中集成。欢迎大家体验,在 OpenStack SIG 中反馈问题、交流经验。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10444

    浏览量

    206566
  • 虚拟机
    +关注

    关注

    1

    文章

    855

    浏览量

    27378
  • OpenStack
    +关注

    关注

    1

    文章

    66

    浏览量

    18844
  • nova
    +关注

    关注

    0

    文章

    31

    浏览量

    9422
  • openEuler
    +关注

    关注

    2

    文章

    289

    浏览量

    5661

原文标题:openEuler资源利用率提升之道06:虚拟机混部OpenStack调度

文章出处:【微信号:openEulercommunity,微信公众号:openEuler】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一种提升存储资源利用率的方法

    在现代云平台中,存储设备,如基于闪存的固态硬盘(SSD)已经被虚拟化为全系统的共享资源,以提供跨越多个应用实例的存储服务。这使得云平台能够通过在多个多租户虚拟机(VM)之间进行分片来有效利用
    的头像 发表于 11-21 10:15 378次阅读
    一种<b class='flag-5'>提升</b>存储<b class='flag-5'>资源</b><b class='flag-5'>利用率</b>的方法

    是否可以看到每个VM的vGPU利用率

    找到任何具体的帖子。我尝试使用nvidia-smi CLI命令。例如:'nvidia-smi -q',但它显示了每个物理GPU的详细信息,包括利用率。每个虚拟机利用率都没有。谢谢,我感谢您对此请求的任何帮助
    发表于 09-21 11:06

    如何获得每个块的路由资源利用率

    我想知道每个块使用的详细路由资源。 “设计路线状态”仅提供整个设计的网络总数。有谁知道如何获得每个块的路由资源利用率(网络数量,交换机盒等)?
    发表于 05-21 15:35

    提升现网网络资源利用率和网络承载能力的方法

    后1、3小区用户数下降明显,新分裂小区6、7业务吸收良好,指标良好,起到很好的负荷分担及感知提升的作用。  表3 扩容方案实施效果  小区ID操作RRC连接平均数LTE_上行PRB平均利用率LTE_
    发表于 12-03 15:40

    openEuler 资源利用率提升之道 01:概论

    利用率低于 20%,存在巨大的资源浪费。因此,提升数据中心资源利用率是当前急需解决的一个重要问题[2]。问题成因
    发表于 07-06 09:54

    openEuler资源利用率提升之道02:典型应用下的效果

    有效利用 Web Serving 空闲时的 CPU 资源,实现资源利用率提升,但如果只是简单地混合部署,CPU 密集的离线业务必然会对在线
    发表于 08-10 11:12

    openEuler 资源利用率提升之道 03:rubik 引擎简介

    组件在整个解决方案中起到至关重要的作用,因此,rubik 引擎主要围绕资源利用率
    发表于 09-01 11:00

    openEuler 资源利用率提升之道 04:CPU 抢占和 SMT 隔离控制

    感知用户配置的业务优先级并配置其 CPU 优先级属性,rubik 具体的介绍和使用详见《openEuler 资源利用率提升之道 03:rub
    发表于 09-22 16:50

    CPU利用率问题求解

    “你能不能实现一个理想情况下应该在每个时间片开始时执行的监控任务,并确定前一个时间片的利用率。如果利用率过高,则应发出警告。如果我们可以使用空闲时间,那么我们就可以衡量利用率。为了设置这个监视器
    发表于 12-06 06:00

    爱奇艺:基于龙蜥与 Koordinator 在离线的实践解析

    在一个集群里,没有进行任何特殊的隔离性处理。在 Docker 上经历了困境后,爱奇艺将业务按节点、集群进行了拆分;这又导致离线任务集群资源常年不够用,在线业务集群利用率非常低,尤其是夜间利用
    发表于 12-22 15:56

    关于Swarm和Mesos资源利用率优化实践分析

    资源调度领域的优秀经验,以及他们在Mesos社区为提升Mesos资源利用率而正在进行的实践活动,深度剖析了Mesos
    发表于 10-10 11:54 0次下载
    关于Swarm和Mesos<b class='flag-5'>资源</b><b class='flag-5'>利用率</b>优化实践分析

    基于虚拟机负载高峰特征的虚拟机放置策略

    提出了一种基于虚拟机负载高峰特征的虚拟机放置策略,通过更好地复用物理主机资源来实现资源共享,从而提高资源
    发表于 01-13 10:34 0次下载

    中标麒麟虚拟化平台软件可大幅度提高资源利用率

    池化并统一管理调度;为您的关键业务提供灵活的基础资源调度,优越的性能和稳定性。系统实现对海光、PowerPC 及X86平台的支持。 中标麒麟虚拟化平台软件能够在提高数据中心空间
    发表于 09-02 10:31 1207次阅读

    基于自适应虚拟机迁移的云资源调度及架构

    ,提岀了¨迁移路径”和“服务开销”等概念,并以服务器的CPU利用率和服务器间的带宽利用率为指标,为系统中所有迁移的虛拟机规划最优的迁移路径,以使系统总的服务开销最小化。首先,设计了基于阈值的虚拟机筛选算法来挑选可
    发表于 05-07 15:44 7次下载

    openEuler资源利用率提升之道虚拟机混部介绍与功耗管理技术

    随着云计算市场规模的快速增长,各云厂商基础设施投入也不断增加,但行业普遍存在资源利用率低的问题,在上述背景下,提升资源利用率已经成为了一个重
    的头像 发表于 01-13 15:10 628次阅读