. Changed in compute node:

给宿主机预留资源:

宿主机可用cpu:cpuid  – cpuid 

宿主机可用内存:25G

#vim /etc/nova/nova.conf
vcpu_pin_set=-
reserved_host_memory_mb= #grubby --update-kernel=ALL --args="isolcpus=6-31"
#reboot . Changed in controller node: 给nova-scheduler服务添加两个过滤器,以过滤带有vcpu绑定的计算节点出来,给用户使用。 这里的过滤是根据flavor的metadata中的aggregate_instance_extra_specs:pinned是true还是false, 来判断用户是否需要给云主机做vcpu绑定。 #vim /etc/nova/nova.conf
scheduler_default_filters=...,NUMATopologyFilter,AggregateInstanceExtraSpecsFilter
#systemctl restart openstack-nova-scheduler . Configure aggregate: 创建两个机组,分别为不给云主机绑定vcpu的normal机组,和给云主机绑定vcpu的performance机组。 并添加计算节点到各个机组中。---21为normal机组host,---20为performance机组。 # nova aggregate-create performance
# nova aggregate-create normal # nova aggregate-list
+----+-------------+-------------------+
| Id | Name | Availability Zone |
+----+-------------+-------------------+
| | performance | - |
| | normal | - |
+----+-------------+-------------------+ # nova aggregate-set-metadata pinned=true
# nova aggregate-set-metadata pinned=false # nova aggregate-add-host ---
Host --- has been successfully added for aggregate
+----+--------+-------------------+---------------+----------------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+--------+-------------------+---------------+----------------+
| | normal | - | '10-0-192-21' | 'pinned=false' |
+----+--------+-------------------+---------------+----------------+
# nova aggregate-add-host ---
Host --- has been successfully added for aggregate
+----+-------------+-------------------+---------------+---------------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+-------------+-------------------+---------------+---------------+
| | performance | - | '10-0-192-20' | 'pinned=true' |
+----+-------------+-------------------+---------------+---------------+ . Configure flavor:
Add metadata 'aggregate type: normal' to old flavor: 将已经存在的flavor的metadata的机组vcpu绑定属性设置为不绑定:
#for FLAVOR in ` nova flavor-list | cut -f -d ' ' | grep [-]* | grep -v "\-\-" | grep -v ID`; do nova flavor-key ${FLAVOR} set "aggregate_instance_extra_specs:pinned"="false"; done Create new flavor with metadata 'aggregate type: performance': 创建新的flavor, 带有的metadata中vcpu绑定属性设置为绑定:
#nova flavor-create m1.big-.vcpuPin
#nova flavor-create m1.small.vcpuPin ... ...
#for i in `nova flavor-list | grep vcpuPin | awk '{print $2}'`; do nova flavor-key $i set hw:cpu_policy=dedicated; nova flavor-key $i set aggregate_instance_extra_specs:pinned=true; done Launch an instance to test the new flavor, check if the instance runs in host whose aggegate type is performance: 启动一个虚拟机,使用新创建的flavor,验证虚拟机是否运行在了10---20服务器上,检查虚拟机的xml配置信息是否包含vcpu绑定配置:
#nova boot --image ... Attention:
. if flavor's metadata is NULL, then the vm may be scheduled to this pin=true host。 如果flavor的metadata为空, 即创建flavor的时候,不指定metadata的机组绑定属性,则使用这个flavor的云主机可以像没配置vcpu绑定的时候那样, 运行在normal不绑定vcpu节点,或 performance绑定vcpu节点。

OpenStack配置虚拟机vcpu绑定步骤 转至元数据结尾的更多相关文章

  1. openstack之虚拟机创建流程分析

    这篇博文静静的呆在草稿箱大半年了.假设不是由于某些原因被问到,以及由于忽略它而导致的损失,否则我也不知道什么时候会将它完毕.感谢这段时间经历的挫折,让我知道不足.希望你能给我更大的决心! 本文试图具体 ...

  2. KVM环境下vCPU绑定到物理CPU

    在KVM环境中测试虚拟系统性能时,如果宿主机是有两个CPU socket的硬件,会碰到由于vCPU在不同物理CPU上浮动导致测试RFC2544时出现少量丢包的现象,测试结果非常不稳定.可以将vCPU绑 ...

  3. OpenStack 高性能虚拟机之大页内存

    目录 文章目录 目录 前文列表 虚拟存储器系统 页式虚拟存储器 大页内存 Linux 的大页内存 大页的实现原理 大页内存配置 透明巨型页 THP 大页面对内存的影响 Nova 虚拟机的大页内存设置 ...

  4. OpenStack+kvm虚拟机xml格式解析

    配置说明 首先介绍一下配置结构: xml配置遵循<keyword> xxxxxx </keyword>的格式,即一个配置段以<keyword>开头,以</ke ...

  5. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  6. OpenStack中部署glance的步骤

    OpenStack中部署glance的步骤(基于Ubuntu14.04系统) author:headsen  chen   2017-10-13   08:34:35 个人原创,转载请注明作者,出处, ...

  7. OpenStack配置串口显示虚机界面

    OpenStack配置串口显示虚机界面 OpenStack的horizon能够显示虚拟机的界面.horizon是web界面,在我们的电脑上,姑且称之为本地,虚拟机运行在远端服务器上,称之为远端.本地显 ...

  8. openstack之虚拟机管理命令

    在控制节点上建hzb-openrc.sh export OS_PROJECT_DOMAIN_ID=default export OS_USER_DOMAIN_ID=default export OS_ ...

  9. Mac下 如何配置虚拟机软件Parallel Desktop--超详细

    Mac下 如何配置虚拟机软件Pparallel Desktop--超详细 Mac 的双系统解决方案有两种,一种是使用Boot Camp分区安装独立的Windows,一种是通过安装Parallels D ...

随机推荐

  1. 【Calculus 微积分の一些个人理解】

    微积分 微积分(Calculus)是高等数学中研究函数的微分(Differentiation).积分(Integration)以及有关概念和应用的数学分支.它是数学的一个基础学科.内容主要包括极限.微 ...

  2. JavaEE权限管理系统的搭建(四)--------使用拦截器实现登录认证和apache shiro密码加密

    RBAC 基于角色的权限访问控制(Role-Based Access Control)在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限.这就极大地简化了权限的管理.在一个 ...

  3. Java的技术体系结构

    作为程序开发者,我们都想写出完美的代码,但世界上好像从来都没有过完美的代码,因为代码牵涉的内容很复杂,有程序设计语言.运行环境.数据结构以及算法等等,而开发者往往很难全面精通,再者写代码本来也就是一个 ...

  4. iOS | 实现拖拽CollectionViewCell排序

    现在很多项目都会用到类似拖动的效果,比如今日头条和网易新闻之类的资讯类产品,都有用该技术设置模块顺序的操作. 在iOS9.0之后,苹果提供相关的方法,非常方便. 设定三个私有属性 @property( ...

  5. ES6 语法学习总结

    第一节:什么是ES6?   ES6是什么?跟JavaScript有什么关系? JavaScrip由三部分组成:分别是ECMAScript,BOM和DOM. 1)由此看出,ECMAScript是Java ...

  6. select()事件默认选中文本框的全部内容,并改变其背景色和文字颜色

    1.select()事件默认选中文本框的全部内容 拿到input标签的节点,调用select()方法即可.但是我做的vue项目中调用了此方法有一个bug,单次点击会全选内容,双次点击的时候全选会闪一下 ...

  7. C / C ++ 基于梯度下降法的线性回归法(适用于机器学习)

    写在前面的话: 在第一学期做项目的时候用到过相应的知识,觉得挺有趣的,就记录整理了下来,基于C/C++语言 原贴地址:https://helloacm.com/cc-linear-regression ...

  8. setLocale的一个用处

    setLocale是C库中的一个设置地域化信息的C函数. 函数原型为: char *setlocale(int category, const char *locale) 参数解释: category ...

  9. jdbc最基础的mysql操作

    1.基本的数据库操作 这里连接数据库可以做成一个单独的utils类,我这里因为程序少就没有封装. 虽然现在jdbc被其他框架取代了,但这是框架的基础 如下:第一个是插入数据操作 package Dat ...

  10. springcloud生态图

    springcloud生态图