. 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. Android学习笔记_26_多媒体之拍照

    一.配置文件: 需要引入摄像头权限,sdcard读写权限. <?xml version="1.0" encoding="utf-8"?> <m ...

  2. nineoldandroid 详细使用并且实现drawerlayout侧滑动画

    nineoldandroid.view.ViewHelpe是一个为了兼容3.0以下的一个动画开源库 相关函数解读:(第一个参数都为动画对象,第二个为动画属性值的变化表达式) ViewHelper.se ...

  3. vue开发工具node.js及构建工具webpack

    1.概念 node.js:可以运行JavaScript的服务平台,可以把它当做一个后端程序,只是它的开发语言是JavaScript (通常情况下,JavaScript的运行环境都是浏览器,因此Java ...

  4. if switch for while

    ---恢复内容开始--- 一.if 说明:判断表达式,看结果执行语句体 public class IfDemo2 {             public static void main(Strin ...

  5. 『ACM C++』PTA浙大 | 基础题 - 打印沙漏

    <数据结构>开课前的一些小作业练习,可能因为一个寒假都没有打C++手生了,整个寒假都在帮拍电影做后期特效,导致这道题居然用了两个钟去AC,深感惭愧,作个标记吧,下面上题. 一首好曲推荐:同 ...

  6. MySQL——用户与密码

    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码.通过下面的方式找到root默认密码,然后登录mysql进行修改: grep 'temporary p ...

  7. 重新格式化hadoop的namenode导致datanode无法启动的最简单解决办法

    一般namenode只格式化一次,重新格式化不仅会导致之前的数据都不可用,而且datanode也会无法启动.在datanode日志中会有类似如下的报错信息: java.io.IOException: ...

  8. (第04节)集成SpringMVC框架

    在上一节的基础上集成spring_mvc 首先添加依赖文件 <properties> <javax.servlet.version>4.0.0</javax.servle ...

  9. git 上传到码云

    创建分支 在码云里创建好分支 命令行进入项目所在的目录 显示码云上的分支 git pull 选择将要编辑的分支(index-fenzhi) git checkout index-fenzhi 查看分支 ...

  10. mysql的数据操作和内置功能总结

    一.数据的增删改查 1.插入数据 a.插入完整数据(顺序插入) INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); INSERT INTO 表名 ...