问题描述:
生产区一期环境增加4台计算结点,希望被大数据租户独占
1. 该大数据用户创建的虚拟机必须被调度到这4个计算结点
2. 其他租户创建虚拟机禁止调度到这4台机器

标黄的需要自行根据情况修改
解决方案:
创建ha分区
1. 将4台计算结点置为一个ha分区
[root@controller-1 ~]# nova aggregate-create bigdata
+----+---------+-------------------+-------+----------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+---------+-------------------+-------+----------+
| 9 | bigdata | - | | |
+----+---------+-------------------+-------+----------+

1. 将4台计算结点加入这个ha分区
[root@controller-1 ~]# nova aggregate-add-host 9 compute-2
Host compute-3 has been successfully added for aggregate 9
+----+---------+-------------------+-------------+----------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+---------+-------------------+-------------+----------+
| 9 | bigdata | - | 'compute-2' | |
+----+---------+-------------------+-------------+----------+
(执行4次)

1. 增加ha区调度属性
[root@controller-1 ~]# nova aggregate-set-metadata 9 bigdata=yes
Metadata has been successfully updated for aggregate 9.
+----+---------+-------------------+-------------+---------------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+---------+-------------------+-------------+---------------+
| 9 | bigdata | - | 'compute-2' | 'bigdata=yes' |
+----+---------+-------------------+-------------+---------------+
bigdata=yes 是写死的,不能修改

4. 增加调度属性2:
[root@controller-1 ~]# nova aggregate-set-metadata 9 filter_tenant_id=7b597e8e774c41d9bcc92d494c0ad6ef
Metadata has been successfully updated for aggregate 9.
+----+---------+-------------------+-------------+--------------------------------------------------------------------+
| Id | Name | Availability Zone | Hosts | Metadata |
+----+---------+-------------------+-------------+--------------------------------------------------------------------+
| 9 | bigdata | - | 'compute-2' | 'bigdata=yes', 'filter_tenant_id=7b597e8e774c41d9bcc92d494c0ad6ef' |
+----+---------+-------------------+-------------+--------------------------------------------------------------------+
filter_tenant_id=7b597e8e774c41d9bcc92d494c0ad6ef 等号后面的填写大数据租户的tenant-id

此时,ha分区创建完毕

修改调度策略
1. 修改三台控制结点的nova.conf
修改:
scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,CoreFilter,DiskFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter
为:
scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter, ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter,AggregateMultiTenancyIsolation,AggregateInstanceExtraSpecsFilter

1. 重启nova-scheduler
service openstack-nova-scheduler restart

创建大数据组独享的flavor(模板)
1. 创建一个私有的模板(用admin租户的身份创建)
[root@controller-1 ~]# nova flavor-create lihao1234 auto 1024 20 1 --is-public false
+--------------------------------------+-----------+-----------+------+-----------+------+-------+-------------+-----------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public |
+--------------------------------------+-----------+-----------+------+-----------+------+-------+-------------+-----------+
| e5a55a80-015e-4aed-96cc-d6ca42574cf1 | lihao1234 | 1024 | 20 | 0 | | 1 | 1.0 | False |
+--------------------------------------+-----------+-----------+------+-----------+------+-------+-------------+-----------+

2. 将该模板给大数据租户使用
[root@controller-1 ~]# nova flavor-access-add e5a55a80-015e-4aed-96cc-d6ca42574cf1 7b597e8e774c41d9bcc92d494c0ad6ef
+--------------------------------------+----------------------------------+
| Flavor_ID | Tenant_ID |
+--------------------------------------+----------------------------------+
| e5a55a80-015e-4aed-96cc-d6ca42574cf1 | 7b597e8e774c41d9bcc92d494c0ad6ef |
+--------------------------------------+----------------------------------+
前者是创建的flavor的id
后者是大数据租户的tenant-id

3. 将模板中置上调度参数
[root@controller-1 ~]# nova flavor-key e5a55a80-015e-4aed-96cc-d6ca42574cf1 set bigdata=yes

效果:
1. 用大数据账号,专用模板创建的虚拟机,一定且只会被调度到指定的4台主机上

2. 其他用户看不到特殊模板,且创建的虚拟机只能被调度到剩余的主机上,也就是说,原来的用户对该改造无感

Host aggregate分区的更多相关文章

  1. openstack中region、az、host aggregate、cell 概念

    1. region 更像是一个地理上的概念,每个region有自己独立的endpoint,regions之间完全隔离,但是多个regions之间共享同一个keystone和dashboard.(注:目 ...

  2. OpenStack G版以后的Availability Zone与Aggregate Hosts

    关于Availability Zone与Aggregate Hosts的概念解析,可以参考这篇文章:http://blog.chinaunix.net/uid-20940095-id-3875022. ...

  3. openstack的Host Aggregates和Availability Zones

    1.关系 Availability Zones 通常是对 computes 节点上的资源在小的区域内进行逻辑上的分组和隔离.例如在同一个数据中心,我们可以将 Availability Zones 规划 ...

  4. 转-4年!我对OpenStack运维架构的总结

    4年!我对OpenStack运维架构的总结 原创: 徐超 云技术之家 今天 前言 应“云技术社区”北极熊之邀,写点东西.思来想去云计算范畴实在广泛,自然就聊点最近话题异常火热,让广大云计算从业者爱之深 ...

  5. OpenStack Nova Release(Rocky to Train)

    目录 文章目录 目录 前言 演进方向 Cellv2 更新 Rocky Support disabling a cell Stein Handling a down cell Train Count q ...

  6. 对OpenStack运维架构的总结(转)

    这里,仅从技术角度出发,谈谈OpenStack云平台在部署.架构和运维实施等方面的感想. 缘起,在2014年大二首次接触到OpenStack,当时国内外资料远没有当前这么丰富,为安装一个OpenSta ...

  7. 超千个节点OpenStack私有云案例(1):CERN 5000+ 计算节点私有云

    CERN:欧洲核子研究组织 本文根据以下几篇文章整理而来: https://www.openstack.org/summit/tokyo-2015/videos/presentation/unveil ...

  8. OpenStack 企业私有云的若干需求(3):多租户和租户间隔离(multi-tenancy and isolation)

    本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...

  9. openstack Icehouse发布

    OpenStack 2014.1 (Icehouse) Release Notes General Upgrade Notes Windows packagers should use pbr 0.8 ...

随机推荐

  1. HDU 6061 推导 NTT

    复函数,递归代入,可以得到最终的式子为$f(x-\sum_{i=1}^{m}{a_i})$,且$f(x) = \sum_{i = 0}^{n}{c_ix^i}$,求最终各个x项的系数. 设$S=\su ...

  2. Linux rpm yum 等安装软件

    任何程序都是先写代码,拿到源码去编译得到一个目标程序. 1  编译的过程复杂有需要准备编译的环境,和硬件有关,32位64位,内核的不同等等所以需要编译多次     Java特殊但是他需要安装jvm, ...

  3. Keras学习笔记1--基本入门

    """ 1.30s上手keras """ #keras的核心数据结构是“模型”,模型是一种组织网络层的方式,keras 的主要模型是Sequ ...

  4. WebStorm 2016激活

    最近在网上找到一个激活webStorm 的好东西.博主说对jetbrains下的所有产品都是可以用这种方式激活的...如:PhpStorm,IntelliJ JDEA等. 但别的产品我没有试过.对于w ...

  5. es6新语法Object.assign()

    1.介绍 Object.assign用于对象的合并,将源对象的所有可枚举属性复制到目标对象,只拷贝源对象自身的属性继承属性补考呗 Object.assign(target,source1,...)第一 ...

  6. Ubuntu命令设置ip网关dns

    本文系转载,介绍Ubuntu如何设置IP和网络来连接网络 如果是在虚拟机中使用Ubuntu,那么设置之前请先参照我的上一遍文章虚拟机Net方式设置连接外网中的网络设置部分,先设置好主机的网络,然后配置 ...

  7. VC RichEdit中英文关键字标红

    最近需要做vc的RichEdit控件里的内容关键字标红,由于RichEdit的内容可能是中英文混合的,所以需要先转成Unicode,再用wcsstr函数找到关键字出现的位置,再用SetSel.SelS ...

  8. 使用keytool生成ssl密钥文件keystore和truststore

    最近在研究Mina的开发,通信的时候需要数据加密,而且mina本身支持SSLFilter过滤器,所以可以采用SSL加密的方式对数据进行加密. 在进行加密之前,我们需要使用keytool(这个存在于C: ...

  9. 服务器Java环境配置

    /* 当要在服务器里搭建Java web项目时, 要先配置好Java需要的环境 */ //jdk [root@localhost ~]# cd /usr/local/src [root@localho ...

  10. Python股票信息抓取(三)

    最近在看mongodb,然后会用了一些最简单的mongodb的操作,然后想着结合股票信息的数据的抓取,然后将数据存储在mongodb中,对于mongo和数据库的最大的区别是,mongo不需要建表,直接 ...