Host aggregate分區

需求:計算節點如今要拿出兩臺給單獨的一個租戶開虛機(虛機獨佔這兩臺計算節點),怎麼作?
https://www.ibm.com/developerworks/cn/cloud/library/1604-openstack-host-aggregate/

問題描述:
生產區一期環境增長 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. 其餘用戶看不到特殊模板,且建立的虛擬機只能被調度到剩餘的主機上,也就是說,原來的用戶對該改造無感



相關文章
相關標籤/搜索