zoukankan      html  css  js  c++  java
  • Specify compute hosts with SSDs

    scheduler_driver = nova.scheduler.filter_scheduler.FilterScheduler
    scheduler_available_filters = nova.scheduler.filters.all_filters
    scheduler_default_filters =AggregateInstanceExtraSpecsFilter

    首先在nova.conf中配置以上调度


    在nova
     availability zone中创建 fast-io host aggregate
    $ nova aggregate-create fast-io nova
    +----+---------+-------------------+-------+----------+
    | Id | Name    | Availability Zone | Hosts | Metadata |
    +----+---------+-------------------+-------+----------+
    | 1  | fast-io | nova              |       |          |
    +----+---------+-------------------+-------+----------+

    添加ssd=true key-value pair to the aggregate

    $ nova aggregate-set-metadata 1 ssd=true
    +----+---------+-------------------+-------+-------------------+
    | Id | Name    | Availability Zone | Hosts | Metadata          |
    +----+---------+-------------------+-------+-------------------+
    | 1  | fast-io | nova              | []    | {u'ssd': u'true'} |
    +----+---------+-------------------+-------+-------------------+

    把node1/2添加到aggregate

    $ nova aggregate-add-host 1 node1
    +----+---------+-------------------+-----------+-------------------+
    | Id | Name    | Availability Zone | Hosts      | Metadata          |
    +----+---------+-------------------+------------+-------------------+
    | 1  | fast-io | nova              | [u'node1'] | {u'ssd': u'true'} |
    +----+---------+-------------------+------------+-------------------+
    
    $ nova aggregate-add-host 1 node2
    +----+---------+-------------------+---------------------+-------------------+
    | Id | Name    | Availability Zone | Hosts                | Metadata          |
    +----+---------+-------------------+----------------------+-------------------+
    | 1  | fast-io | nova              | [u'node1', u'node2'] | {u'ssd': u'true'} |
    +----+---------+-------------------+----------------------+-------------------+

    创建ssd.large flavor, ID of 6, 8 GB of RAM, 80 GB root disk, and four vCPUs.

    $ nova flavor-create ssd.large 6 8192 80 4
    +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
    | ID | Name      | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public |
    +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
    | 6  | ssd.large | 8192      | 80   | 0         |      | 4     | 1.0         | True      |
    +----+-----------+-----------+------+-----------+------+-------+-------------+-----------+

    设置aggregate_instance_extra_specs filter的key-value pairs:

    $ nova flavor-key ssd.large set  aggregate_instance_extra_specs:ssd=true

    该filter的实现在:nova/scheduler/filters/aggregate_instance_extra_specs.py

    $ nova flavor-show ssd.large
    +----------------------------+--------------------------------------------------+
    | Property                   | Value                                            |
    +----------------------------+--------------------------------------------------+
    | OS-FLV-DISABLED:disabled   | False                                            |
    | OS-FLV-EXT-DATA:ephemeral  | 0                                                |
    | disk                       | 80                                               |
    | extra_specs                | {u'aggregate_instance_extra_specs:ssd': u'true'} |
    | id                         | 6                                                |
    | name                       | ssd.large                                        |
    | os-flavor-access:is_public | True                                             |
    | ram                        | 8192                                             |
    | rxtx_factor                | 1.0                                              |
    | swap                       |                                                  |
    | vcpus                      | 4                                                |
    +----------------------------+--------------------------------------------------+

    现在使用ssd.large flavor来创建instance时,scheduler 只会考虑带有ssd=true key-value pair的host,也就是node1/2.

    http://docs.openstack.org/liberty/config-reference/content/section_compute-scheduler.html

  • 相关阅读:
    P6665 [清华集训2016] Alice 和 Bob 又在玩游戏
    模板库
    CSP-S2021 游记
    CSP-S2021 SD迷惑行为大赏
    博弈论总结
    LOJ6033「雅礼集训 2017 Day2」棋盘游戏(二分图最大匹配必经点)
    LOJ6065「2017 山东一轮集训 Day3」第一题
    LOJ6059「2017 山东一轮集训 Day1」Sum
    LOJ6102「2017 山东二轮集训 Day1」第三题
    python笔记:字符编码
  • 原文地址:https://www.cnblogs.com/allcloud/p/5020296.html
Copyright © 2011-2022 走看看